From 300a33e2ab63c4b2a0fd3b7730bcb0909a6e9928 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Se=C3=A1n=20Kavanagh?= <51478689+kavanase@users.noreply.github.com> Date: Tue, 31 Dec 2024 17:15:11 -0500 Subject: [PATCH 01/24] Fix DOS parsing for SOC calculations (#4239) * Add informative error message to SymmetryUndeterminedError * Add debug message for DOS parsing * Fix `vasprun.xml` DOS parsing for SOC calculations * Add test for `vasprun.xml` DOS parsing for SOC calculations * pre-commit auto-fixes * Typing fix --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- src/pymatgen/io/vasp/outputs.py | 5 +++++ tests/io/vasp/test_outputs.py | 13 ++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/pymatgen/io/vasp/outputs.py b/src/pymatgen/io/vasp/outputs.py index 4694183b8c5..2bb73cd89ac 100644 --- a/src/pymatgen/io/vasp/outputs.py +++ b/src/pymatgen/io/vasp/outputs.py @@ -1631,10 +1631,13 @@ def _parse_dos(elem: XML_Element) -> tuple[Dos, Dos, list[dict]]: tdensities = {} idensities = {} + soc_run = len(elem.find("total").find("array").find("set").findall("set")) > 2 # type: ignore[union-attr] for s in elem.find("total").find("array").find("set").findall("set"): # type: ignore[union-attr] data = np.array(_parse_vasp_array(s)) energies = data[:, 0] spin = Spin.up if s.attrib["comment"] == "spin 1" else Spin.down + if spin != Spin.up and soc_run: # other 'spins' are x,y,z SOC projections + continue tdensities[spin] = data[:, 1] idensities[spin] = data[:, 2] @@ -1649,6 +1652,8 @@ def _parse_dos(elem: XML_Element) -> tuple[Dos, Dos, list[dict]]: for ss in s.findall("set"): spin = Spin.up if ss.attrib["comment"] == "spin 1" else Spin.down + if spin != Spin.up and soc_run: # other 'spins' are x,y,z SOC projections + continue data = np.array(_parse_vasp_array(ss)) _n_row, n_col = data.shape for col_idx in range(1, n_col): diff --git a/tests/io/vasp/test_outputs.py b/tests/io/vasp/test_outputs.py index 837884c22f0..17916375dae 100644 --- a/tests/io/vasp/test_outputs.py +++ b/tests/io/vasp/test_outputs.py @@ -54,6 +54,18 @@ class TestVasprun(PymatgenTest): + def test_vasprun_soc(self): + # Test that SOC vaspruns are parsed appropriately, giving just Spin.Up tdos, idos and pdos + vasp_run = Vasprun(f"{VASP_OUT_DIR}/vasprun.int_Te_SOC.xml.gz") + dos_density_dicts_to_check = [vasp_run.complete_dos.densities, vasp_run.tdos.densities, vasp_run.idos.densities] + dos_density_dicts_to_check += [ + densities for orbital_dict in vasp_run.complete_dos.pdos.values() for densities in orbital_dict.values() + ] + for i, dos_density_dict in enumerate(dos_density_dicts_to_check): + assert set(dos_density_dict.keys()) == {Spin.up}, f"Failed spin keys check for {i}th dos obj!" + + assert vasp_run.complete_dos.spin_polarization is None + def test_vasprun_ml(self): # Test for ML MD simulation # The trajectory data is stored in md_data @@ -79,7 +91,6 @@ def test_vasprun_md(self): def test_vasprun_ediffg_set_to_0(self): # Test for case where EDIFFG is set to 0. This should pass if all ionic steps # complete and are electronically converged. - print(list(os.walk(VASP_OUT_DIR))) vasp_run = Vasprun(f"{VASP_OUT_DIR}/vasprun.ediffg_set_to_0.xml.gz") assert len(vasp_run.ionic_steps) == 3 assert vasp_run.final_energy == approx(-34.60164204) From 9d3d82c1f81cadd57003bf9d64dde0f2606e16b7 Mon Sep 17 00:00:00 2001 From: Jimmy Shen <14003693+jmmshn@users.noreply.github.com> Date: Tue, 31 Dec 2024 14:16:23 -0800 Subject: [PATCH 02/24] [Feature] Added Pure Random Algo to `OrderDisorderedStructureTransformation` (#4236) * occ_tol * random transformation * pre-commit auto-fixes --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- .../standard_transformations.py | 111 +++++++++++++++++- .../test_standard_transformations.py | 26 ++++ 2 files changed, 135 insertions(+), 2 deletions(-) diff --git a/src/pymatgen/transformations/standard_transformations.py b/src/pymatgen/transformations/standard_transformations.py index 8d8e231b8ca..ea5cd933fc8 100644 --- a/src/pymatgen/transformations/standard_transformations.py +++ b/src/pymatgen/transformations/standard_transformations.py @@ -23,6 +23,7 @@ from pymatgen.transformations.transformation_abc import AbstractTransformation if TYPE_CHECKING: + from numpy.random import Generator from typing_extensions import Self from pymatgen.core.sites import PeriodicSite @@ -451,6 +452,7 @@ class OrderDisorderedStructureTransformation(AbstractTransformation): ALGO_FAST = 0 ALGO_COMPLETE = 1 ALGO_BEST_FIRST = 2 + ALGO_RANDOM = -1 def __init__(self, algo=ALGO_FAST, symmetrized_structures=False, no_oxi_states=False): """ @@ -467,7 +469,9 @@ def __init__(self, algo=ALGO_FAST, symmetrized_structures=False, no_oxi_states=F self.no_oxi_states = no_oxi_states self.symmetrized_structures = symmetrized_structures - def apply_transformation(self, structure: Structure, return_ranked_list: bool | int = False) -> Structure: + def apply_transformation( + self, structure: Structure, return_ranked_list: bool | int = False, occ_tol=0.25 + ) -> Structure: """For this transformation, the apply_transformation method will return only the ordered structure with the lowest Ewald energy, to be consistent with the method signature of the other transformations. @@ -478,6 +482,9 @@ def apply_transformation(self, structure: Structure, return_ranked_list: bool | structure: Oxidation state decorated disordered structure to order return_ranked_list (bool | int, optional): If return_ranked_list is int, that number of structures is returned. If False, only the single lowest energy structure is returned. Defaults to False. + occ_tol (float): Occupancy tolerance. If the total occupancy of a group is within this value + of an integer, it will be rounded to that integer otherwise raise a ValueError. + Defaults to 0.25. Returns: Depending on returned_ranked list, either a transformed structure @@ -529,6 +536,17 @@ def apply_transformation(self, structure: Structure, return_ranked_list: bool | # generate the list of manipulations and input structure struct = Structure.from_sites(structure) + # We will first create an initial ordered structure by filling all sites + # with the species that has the highest oxidation state (initial_sp) + # replacing all other species on a given site. + # then, we process a list of manipulations to get the final structure. + # The manipulations are of the format: + # [oxi_ratio, 1, [0,1,2,3], Li+] + # which means -- Place 1 Li+ in any of these 4 sites + # the oxi_ratio is the ratio of the oxidation state of the species to + # the initial species. This is used to determine the energy of the + # manipulation in the EwaldMinimizer, but is not used in the purely random + # algorithm. manipulations = [] for group in equivalent_sites: total_occupancy = dict( @@ -536,7 +554,7 @@ def apply_transformation(self, structure: Structure, return_ranked_list: bool | ) # round total occupancy to possible values for key, val in total_occupancy.items(): - if abs(val - round(val)) > 0.25: + if abs(val - round(val)) > occ_tol: raise ValueError("Occupancy fractions not consistent with size of unit cell") total_occupancy[key] = round(val) # start with an ordered structure @@ -555,6 +573,16 @@ def apply_transformation(self, structure: Structure, return_ranked_list: bool | if empty > 0.5: manipulations.append([0, empty, list(group), None]) + if self.algo == self.ALGO_RANDOM: + rand_structures = get_randomly_manipulated_structures( + struct=struct, manipulations=manipulations, n_return=n_to_return + ) + if return_ranked_list: + return [ + {"energy": 0.0, "energy_above_minimum": 0.0, "structure": s} for s in rand_structures[:n_to_return] + ] + return rand_structures[0] + matrix = EwaldSummation(struct).total_energy_matrix ewald_m = EwaldMinimizer(matrix, manipulations, n_to_return, self.algo) @@ -891,3 +919,82 @@ def apply_transformation(self, structure): def __repr__(self): return "ScaleToRelaxedTransformation" + + +def _sample_random_manipulation(manipulation, rng, manipulated) -> list[tuple[int, SpeciesLike]]: + """Sample a single random manipulation. + + Each manipulation is given in the form of a tuple + `(oxi_ratio, nsites, indices, sp)` where: + Which means choose nsites from the list of indices and replace them + With the species `sp`. + """ + _, nsites, indices, sp = manipulation + maniped_indices = [i for i, _ in manipulated] + allowed_sites = [i for i in indices if i not in maniped_indices] + if len(allowed_sites) < nsites: + raise RuntimeError( + "No valid manipulations possible. " + f" You have already applied a manipulation to each site in this group {indices}" + ) + sampled_sites = rng.choice(allowed_sites, nsites, replace=False).tolist() + sampled_sites.sort() + return [(i, sp) for i in sampled_sites] + + +def _get_manipulation(manipulations: list, rng: Generator, max_attempts, seen: set[tuple]) -> tuple: + """Apply each manipulation.""" + for _ in range(max_attempts): + manipulated: list[tuple] = [] + for manip_ in manipulations: + new_manips = _sample_random_manipulation(manip_, rng, manipulated) + manipulated += new_manips + tm_ = tuple(manipulated) + if tm_ not in seen: + return tm_ + raise RuntimeError( + "Could not apply manipulations to structure" + "this is likely because you have already applied all the possible manipulations" + ) + + +def _apply_manip(struct, manipulations) -> Structure: + """Apply manipulations to a structure.""" + struct_copy = struct.copy() + rm_indices = [] + for manip in manipulations: + idx, sp = manip + if sp is None: + rm_indices.append(idx) + else: + struct_copy.replace(idx, sp) + struct_copy.remove_sites(rm_indices) + return struct_copy + + +def get_randomly_manipulated_structures( + struct: Structure, manipulations: list, seed=None, n_return: int = 1 +) -> list[Structure]: + """Get a structure with random manipulations applied. + + Args: + struct: Input structure + manipulations: List of manipulations to apply + seed: Seed for random number generator + n_return: Number of structures to return + + Returns: + List of structures with manipulations applied. + """ + rng = np.random.default_rng(seed) + seen: set[tuple] = set() + sampled_manips = [] + + for _ in range(n_return): + manip_ = _get_manipulation(manipulations, rng, 1000, seen) + seen.add(manip_) + sampled_manips.append(manip_) + output_structs = [] + for manip_ in sampled_manips: + output_structs.append(_apply_manip(struct, manip_)) + return output_structs diff --git a/tests/transformations/test_standard_transformations.py b/tests/transformations/test_standard_transformations.py index 0074eece962..d9ce0da09d8 100644 --- a/tests/transformations/test_standard_transformations.py +++ b/tests/transformations/test_standard_transformations.py @@ -401,6 +401,32 @@ def test_best_first(self): output = trafo.apply_transformation(struct, return_ranked_list=3) assert output[0]["energy"] == approx(-234.57813667648315, abs=1e-4) + def test_random_sample(self): + struc_str = ( + "3.333573 0.000000 1.924639\n" + "1.111191 3.142924 1.924639\n" + "0.000000 0.000000 3.849278\n" + "1.0 0.0 0.0\n" + "0.0 1.0 0.0\n" + "0.0 0.0 1.0\n" + "0.875000 0.875000 0.875000 Si=1\n" + "0.125000 0.125000 0.125000 Si=1" + ) + si = Structure.from_str(struc_str, fmt="mcsqs") + struct = si * [3, 2, 1] + struct.replace(0, {"Fe": 0.5, "Ni": 0.5}) + struct.replace(1, {"Fe": 0.5, "Ni": 0.5}) + trafo = OrderDisorderedStructureTransformation( + algo=OrderDisorderedStructureTransformation.ALGO_RANDOM, no_oxi_states=True + ) + output = trafo.apply_transformation(struct * [2, 2, 2], return_ranked_list=3) + assert len(output) == 3 + for entry in output: + assert set(entry.keys()) == {"structure", "energy", "energy_above_minimum"} + + output = trafo.apply_transformation(struct * [2, 2, 2], return_ranked_list=False) + assert output.composition.reduced_formula == struct.composition.reduced_formula + class TestPrimitiveCellTransformation: def test_apply_transformation(self): From 5937743cf0719131b890bb2bd85e3578c8322698 Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Wed, 1 Jan 2025 06:16:54 +0800 Subject: [PATCH 03/24] Drop GULP libs from code base (#4234) * drop _gulp_kw * drop OxideTersoffPotentialentials file * drop bush and lewis potential * make global var all cap --- .../command_line/OxideTersoffPotentials | 132 -------------- src/pymatgen/command_line/bush.lib | 79 --------- src/pymatgen/command_line/gulp_caller.py | 161 ++---------------- src/pymatgen/command_line/lewis.lib | 86 ---------- 4 files changed, 10 insertions(+), 448 deletions(-) delete mode 100644 src/pymatgen/command_line/OxideTersoffPotentials delete mode 100644 src/pymatgen/command_line/bush.lib delete mode 100644 src/pymatgen/command_line/lewis.lib diff --git a/src/pymatgen/command_line/OxideTersoffPotentials b/src/pymatgen/command_line/OxideTersoffPotentials deleted file mode 100644 index 8f3b1522751..00000000000 --- a/src/pymatgen/command_line/OxideTersoffPotentials +++ /dev/null @@ -1,132 +0,0 @@ -H(1) O H 1.8858 2.188184 1.12768 10.0000 -Li(1) O Li 0.98816 1.937984 1.94001 10.0000 -Be(2) O Be 2.76882 1.848429 1.52217 10.0000 -B(3) O B 2.38924 2.597403 1.34003 10.0000 -C(4) O C 4.79187 2.237136 1.20089 10.0000 -C(2) O C 2.40553 2.409639 1.03098 10.0000 -N(5) O N 6.27677 2.222222 1.16142 10.0000 -N(3) O N 3.81089 2.232143 1.13758 10.0000 -NH4(1) O NH4 0.40537 2.262443 2.45364 10.0000 -Na(1) O Na 0.57523 2.074689 2.37433 10.0000 -Mg(2) O Mg 1.57554 1.953125 1.95627 10.0000 -Al(3) O Al 1.80346 2.358491 1.75806 10.0000 -Si(4) O Si 2.8572 2.314815 1.53594 10.0000 -P(5) O P 3.89635 2.28833 1.44066 10.0000 -P(3) O P 2.02062 2.487562 1.41051 10.0000 -S(6) O S 4.96726 2.267574 1.38102 10.0000 -S(4) O S 3.03672 2.34192 1.41188 10.0000 -Cl(7) O Cl 5.991 2.257336 1.34801 10.0000 -Cl(5) O Cl 4.29089 2.247191 1.35653 10.0000 -Cl(3) O Cl 3.07119 2.03666 1.38441 10.0000 -K(1) O K 0.34985 2.293578 2.76636 10.0000 -Ca(2) O Ca 0.99429 2.10084 2.32032 10.0000 -Sc(3) O Sc 2.1561 2.024291 1.99615 10.0000 -Ti(4) O Ti 2.81333 1.988072 1.83144 10.0000 -Ti(3) O Ti 1.97851 2.173913 1.88619 10.0000 -V(5) O V 3.69533 1.960784 1.60258 10.0000 -V(4) O V 2.08047 2.347418 1.77638 10.0000 -V(3) O V 1.82936 2.277904 1.85797 10.0000 -Cr(6) O Cr 3.68751 2.10084 1.53251 10.0000 -Cr(5) O Cr 2.36551 2.487562 1.55546 10.0000 -Cr(4) O Cr 1.93329 2.444988 1.76209 10.0000 -Cr(3) O Cr 1.77335 2.325581 1.83887 10.0000 -Mn(7) O Mn 4.9163 1.923077 1.48171 10.0000 -Mn(6) O Mn 2.82236 2.403846 1.52931 10.0000 -Mn(5) O Mn 2.46456 2.421308 1.57577 10.0000 -Mn(4) O Mn 1.85886 2.487562 1.77045 10.0000 -Mn(3) O Mn 1.81283 2.28833 1.85786 10.0000 -Mn(2) O Mn 1.64143 2.079002 2.02969 10.0000 -Fe(4) O Fe 1.87285 2.439024 1.82786 10.0000 -Fe(3) O Fe 1.66681 2.380952 1.86647 10.0000 -Fe(2) O Fe 1.69269 2.083333 1.96005 10.0000 -Ni(3) O Ni 1.66191 2.415459 1.81887 10.0000 -Ni(2) O Ni 1.46841 2.257336 1.92452 10.0000 -Co(3) O Co 1.87024 2.304147 1.7762 10.0000 -Co(2) O Co 1.51476 2.217295 1.93362 10.0000 -Cu(3) O Cu 1.88242 2.34192 1.70823 10.0000 -Cu(2) O Cu 1.85341 2.227171 1.56633 10.0000 -Cu(1) O Cu 0.66417 2.932551 1.78269 10.0000 -Zn(2) O Zn 1.24031 2.48139 1.88557 10.0000 -Ga(3) O Ga 1.18456 2.680965 1.79391 10.0000 -Ge(4) O Ge 1.91375 2.525253 1.66872 10.0000 -As(5) O As 2.71934 2.43309 1.58127 10.0000 -As(3) O As 1.51493 2.475248 1.64554 10.0000 -Se(6) O Se 3.44865 2.403846 1.53287 10.0000 -Se(4) O Se 2.38082 2.34192 1.55957 10.0000 -Br(7) O Br 4.24339 2.364066 1.50274 10.0000 -Rb(1) O Rb 0.26813 2.421308 2.89683 10.0000 -Sr(2) O Sr 0.74351 2.197802 2.53589 10.0000 -Y(3) O Y 1.62701 2.09205 2.21523 10.0000 -Zr(4) O Zr 2.19103 2.040816 1.99602 10.0000 -Nb(5) O Nb 2.72326 2.008032 1.85459 10.0000 -Nb(4) O Nb 2.7096 1.901141 1.85989 10.0000 -Nb(3) O Nb 2.02848 1.996008 1.9519 10.0000 -Mo(6) O Mo 1.9915 2.557545 1.71254 10.0000 -Mo(5) O Mo 2.64802 2.074689 1.7867 10.0000 -Mo(4) O Mo 3.10807 1.779359 1.85099 10.0000 -Mo(3) O Mo 1.42826 2.392344 1.92974 10.0000 -Ru(6) O Ru 2.42109 2.352941 1.66431 10.0000 -Ru(5) O Ru 2.13208 2.293578 1.81571 10.0000 -Ru(4) O Ru 1.99513 2.227171 1.84053 10.0000 -Rh(4) O Rh 1.62725 2.48139 1.81793 10.0000 -Rh(3) O Rh 1.92826 2.09205 1.86915 10.0000 -Pd(4) O Pd 2.04218 2.227171 1.79813 10.0000 -Pd(2) O Pd 1.7391 2.008032 1.83671 10.0000 -Ag(1) O Ag 0.63519 2.538071 2.22578 10.0000 -Cd(2) O Cd 0.98346 2.457002 2.1694 10.0000 -Ta(4) O Ta 2.75655 1.831502 1.79826 10.0000 -In(3) O In 0.84076 2.832861 2.02471 10.0000 -Sn(4) O Sn 1.35268 2.638522 1.93422 10.0000 -Sn(2) O Sn 0.97261 2.183406 1.9642 10.0000 -Sb(5) O Sb 1.95523 2.5 1.86318 10.0000 -Sb(3) O Sb 1.17786 2.364066 2.07526 10.0000 -I(7) O I 3.21424 2.386635 1.74105 10.0000 -I(5) O I 2.48947 2.358491 1.64421 10.0000 -Te(6) O Te 2.56406 2.427184 1.80876 10.0000 -Te(4) O Te 1.67169 2.493766 1.75208 10.0000 -Cs(1) O Cs 0.23307 2.386635 3.13121 10.0000 -Ba(2) O Ba 0.57994 2.28833 2.73769 10.0000 -La(3) O La 1.18587 2.217295 2.46989 10.0000 -Ce(4) O Ce 1.48412 2.257336 2.19872 10.0000 -Ce(3) O Ce 1.22048 2.227171 2.37861 10.0000 -Pr(3) O Pr 1.17041 2.277904 2.37113 10.0000 -Nd(3) O Nd 1.13205 2.336449 2.33016 10.0000 -Sm(3) O Sm 1.17622 2.309469 2.29536 10.0000 -Eu(3) O Eu 1.19545 2.304147 2.26888 10.0000 -Eu(2) O Eu 1.13032 2.024291 2.53846 10.0000 -Gd(3) O Gd 1.09161 2.409639 2.2719 10.0000 -Tb(4) O Tb 1.70132 2.024291 2.38506 10.0000 -Tb(3) O Tb 1.20764 2.309469 2.23563 10.0000 -Dy(3) O Dy 1.1735 2.347418 2.22689 10.0000 -Ho(3) O Ho 1.12157 2.409639 2.21122 10.0000 -Er(3) O Er 1.12394 2.427184 2.17477 10.0000 -Tm(3) O Tm 1.18138 2.375297 2.16042 10.0000 -Yb(3) O Yb 1.21989 2.347418 2.1422 10.0000 -Lu(3) O Lu 1.19488 2.375297 2.136 10.0000 -Hf(4) O Hf 1.89992 2.09205 1.99964 10.0000 -Ta(5) O Ta 2.36669 2.057613 1.85532 10.0000 -W(6) O W 1.84267 2.493766 1.77713 10.0000 -W(5) O W 2.6157 2.008032 1.76261 10.0000 -W(4) O W 2.47114 1.923077 1.81945 10.0000 -Re(7) O Re 3.55593 1.968504 1.59634 10.0000 -Re(6) O Re 2.95099 2.008032 1.71147 10.0000 -Re(5) O Re 2.41099 2.087683 1.76914 10.0000 -Re(3) O Re 0.81067 2.493766 2.33218 10.0000 -Os(8) O Os 3.71019 1.953125 1.66146 10.0000 -Os(7) O Os 2.91948 2.087683 1.72869 10.0000 -Os(6) O Os 2.44871 2.159827 1.7828 10.0000 -Os(4) O Os 2.27524 2.008032 1.81244 10.0000 -Ir(5) O Ir 2.32476 2.087683 1.83476 10.0000 -Ir(4) O Ir 1.68667 2.293578 1.87402 10.0000 -Pt(4) O Pt 2.03825 2.087683 1.87174 10.0000 -Pt(2) O Pt 2.14999 1.74216 1.80179 10.0000 -Au(3) O Au 1.96967 2.008032 1.81312 10.0000 -Au(1) O Au 0.85304 2.267574 1.89543 10.0000 -Hg(2) O Hg 1.12852 2.150538 2.25275 10.0000 -Hg(1) O Hg 0.73931 2.150538 2.43155 10.0000 -Tl(3) O Tl 0.67637 2.95858 2.10642 10.0000 -Tl(1) O Tl 0.34999 2.070393 2.77086 10.0000 -Pb(4) O Pb 1.02719 2.824859 2.02857 10.0000 -Pb(2) O Pb 0.63833 2.309469 2.44191 10.0000 -Bi(5) O Bi 1.4405 2.695418 1.98599 10.0000 -Bi(3) O Bi 0.97904 2.415459 2.18321 10.0000 diff --git a/src/pymatgen/command_line/bush.lib b/src/pymatgen/command_line/bush.lib deleted file mode 100644 index 1d9ef873bc8..00000000000 --- a/src/pymatgen/command_line/bush.lib +++ /dev/null @@ -1,79 +0,0 @@ -# -# BUSH -library of potentials for GULP -# -# from T.S.Bush, J.D.Gale, C.R.A.Catlow and P.D. Battle -# J. Mater Chem., 4, 831-837 (1994) -# -species -Li core 1.000 -Na core 1.000 -K core 1.000 -Mg core 1.580 -Mg shel 0.420 -Ca core 0.719 -Ca shel 1.281 -Sr core 0.169 -Sr shel 1.831 -Ba core 0.169 -Ba shel 1.831 -Fe core 1.971 -Fe shel 1.029 -Ti core 2.332 -Ti shel 1.668 -Al core 0.043 -Al shel 2.957 -Ga core 3.000 -Y core 3.000 -La core 5.149 -La shel -2.149 -Pr core 1.678 -Pr shel 1.322 -Nd core 1.678 -Nd shel 1.322 -Gd core -0.973 -Gd shel 3.973 -Eu core -0.991 -Eu shel 3.991 -Tb core -0.972 -Tb shel 3.972 -Yb core -0.278 -Yb shel 3.278 -O core 0.513 -O shel -2.513 -buckingham -Li core O shel 426.480 0.3000 0.00 0.0 10.0 -Na core O shel 1271.504 0.3000 0.00 0.0 10.0 -K core O shel 3587.570 0.3000 0.00 0.0 10.0 -Mg shel O shel 2457.243 0.2610 0.00 0.0 10.0 -Ca shel O shel 2272.741 0.2986 0.00 0.0 10.0 -Sr shel O shel 1956.702 0.3252 0.00 0.0 10.0 -Ba shel O shel 4818.416 0.3067 0.00 0.0 10.0 -Fe shel O shel 3219.335 0.2641 0.00 0.0 10.0 -Ti shel O shel 2088.107 0.2888 0.00 0.0 10.0 -Al shel O shel 2409.505 0.2649 0.00 0.0 10.0 -Ga core O shel 2339.776 0.2742 0.00 0.0 10.0 -Y core O shel 1519.279 0.3291 0.00 0.0 10.0 -La shel O shel 5436.827 0.2939 0.00 0.0 10.0 -Pr shel O shel 13431.118 0.2557 0.00 0.0 10.0 -Nd shel O shel 13084.217 0.2550 0.00 0.0 10.0 -Gd shel O shel 866.339 0.3770 0.00 0.0 10.0 -Eu shel O shel 847.868 0.3791 0.00 0.0 10.0 -Tb shel O shel 845.137 0.3750 0.00 0.0 10.0 -Yb shel O shel 991.029 0.3515 0.00 0.0 10.0 -O shel O shel 25.410 0.6937 32.32 0.0 12.0 -spring -Mg 349.95 -Ca 34.05 -Sr 21.53 -Ba 34.05 -Fe 179.58 -Ti 253.60 -Al 403.98 -La 173.90 -Pr 302.36 -Nd 302.35 -Gd 299.96 -Eu 304.92 -Tb 299.98 -Yb 308.91 -O 20.53 diff --git a/src/pymatgen/command_line/gulp_caller.py b/src/pymatgen/command_line/gulp_caller.py index 4d7bb3b17e0..eeeed9b0bc2 100644 --- a/src/pymatgen/command_line/gulp_caller.py +++ b/src/pymatgen/command_line/gulp_caller.py @@ -23,10 +23,8 @@ __status__ = "Production" __date__ = "Jun 22, 2013M" -MODULE_DIR = os.path.dirname(os.path.abspath(__file__)) - -_anions = set(map(Element, ["O", "S", "F", "Cl", "Br", "N", "P"])) -_cations = set( +_ANIONS = set(map(Element, ["O", "S", "F", "Cl", "Br", "N", "P"])) +_CATIONS = set( map( Element, [ @@ -92,144 +90,6 @@ ], ) ) -_gulp_kw = { - # Control of calculation type - "angle", - "bond", - "cosmo", - "cosmic", - "cost", - "defect", - "distance", - "eem", - "efg", - "fit", - "free_energy", - "gasteiger", - "genetic", - "gradients", - "md", - "montecarlo", - "noautobond", - "noenergy", - "optimise", - "pot", - "predict", - "preserve_Q", - "property", - "phonon", - "qeq", - "qbond", - "single", - "sm", - "static_first", - "torsion", - "transition_state", - # Geometric variable specification - "breathe", - "bulk_noopt", - "cellonly", - "conp", - "conv", - "isotropic", - "orthorhombic", - "nobreathe", - "noflgs", - "shell", - "unfix", - # Algorithm - "c6", - "dipole", - "fbfgs", - "fix_molecule", - "full", - "hill", - "kfull", - "marvinSE", - "madelung", - "minimum_image", - "molecule", - "molmec", - "molq", - "newda", - "noanisotropic_2b", - "nod2sym", - "nodsymmetry", - "noelectrostatics", - "noexclude", - "nofcentral", - "nofirst_point", - "noksymmetry", - "nolist_md", - "nomcediff", - "nonanal", - "noquicksearch", - "noreal", - "norecip", - "norepulsive", - "nosasinitevery", - "nosderv", - "nozeropt", - "numerical", - "qiter", - "qok", - "spatial", - "storevectors", - "nomolecularinternalke", - "voigt", - "zsisa", - # Optimization method - "conjugate", - "dfp", - "lbfgs", - "numdiag", - "positive", - "rfo", - "unit", - # Output control - "average", - "broaden_dos", - "cartesian", - "compare", - "conserved", - "dcharge", - "dynamical_matrix", - "eigenvectors", - "global", - "hessian", - "hexagonal", - "intensity", - "linmin", - "meanke", - "nodensity_out", - "nodpsym", - "nofrequency", - "nokpoints", - "operators", - "outcon", - "prt_eam", - "prt_two", - "prt_regi_before", - "qsas", - "restore", - "save", - "terse", - # Structure control - "lower_symmetry", - "nosymmetry", - # PDF control - "PDF", - "PDFcut", - "PDFbelow", - "PDFkeep", - "coreinfo", - "nowidth", - "nopartial", - # Miscellaneous - "nomodcoord", - "oldunits", - "zero_potential", -} class GulpIO: @@ -243,8 +103,6 @@ def keyword_line(*args): Args: args: 1st line keywords """ - # if len(list(filter(lambda x: x in _gulp_kw, args))) != len(args): - # raise GulpError("Wrong keywords given") gin = " ".join(args) gin += "\n" return gin @@ -300,7 +158,7 @@ def structure_lines( specie = site.specie core_site_desc = f"{specie.symbol} core {' '.join(coord)}\n" gin += core_site_desc - if (specie in _anions and anion_shell_flg) or (specie in _cations and cation_shell_flg): + if (specie in _ANIONS and anion_shell_flg) or (specie in _CATIONS and cation_shell_flg): shel_site_desc = f"{specie.symbol} shel {' '.join(coord)}\n" gin += shel_site_desc else: @@ -785,7 +643,7 @@ def __str__(self): class BuckinghamPotential: - """Generate the Buckingham Potential Table from the bush.lib and lewis.lib. + """Generate the Buckingham Potential Table from the bush.lib or lewis.lib. Ref: T.S.Bush, J.D.Gale, C.R.A.Catlow and P.D. Battle, J. Mater Chem., @@ -794,15 +652,16 @@ class BuckinghamPotential: 1149-1161 (1985) """ - def __init__(self, bush_lewis_flag): + def __init__(self, bush_lewis_flag, pot_file): """ Args: bush_lewis_flag (str): Flag for using Bush or Lewis potential. + pot_file: The potential file, either bush.lib or lewis.lib. """ if bush_lewis_flag not in {"bush", "lewis"}: raise ValueError(f"bush_lewis_flag should be bush or lewis, got {bush_lewis_flag}") - pot_file = "bush.lib" if bush_lewis_flag == "bush" else "lewis.lib" - with open(os.path.join(os.environ["GULP_LIB"], pot_file)) as file: + + with open(pot_file) as file: # In lewis.lib there is no shell for cation species_dict, pot_dict, spring_dict = {}, {}, {} sp_flg, pot_flg, spring_flg = False, False, False @@ -867,9 +726,9 @@ def __init__(self, bush_lewis_flag): class TersoffPotential: """Generate Tersoff Potential Table from "OxideTersoffPotentialentials" file.""" - def __init__(self): + def __init__(self, pot_file): """Init TersoffPotential.""" - with open(f"{MODULE_DIR}/OxideTersoffPotentials") as file: + with open(pot_file) as file: data = {} for row in file: metaloxi = row.split()[0] diff --git a/src/pymatgen/command_line/lewis.lib b/src/pymatgen/command_line/lewis.lib deleted file mode 100644 index 4bc13293b90..00000000000 --- a/src/pymatgen/command_line/lewis.lib +++ /dev/null @@ -1,86 +0,0 @@ -# -# LEWIS library - collection of potentials based -# around the Catlow oxygen-oxygen potential -# -# Taken from Tables 1 and 2 of Lewis and Catlow. -# Potentials derived using method (a) Extrapolation -# for systems with limited data - fit rho as being -# common to all related oxides and only fit A for -# each system (b) fitting of both A and rho where -# structures are of low symmetry. -# -# Reference: -# (1) G.V. Lewis and C.R.A. Catlow, J. Phys. C: Solid -# State Phys., 18, 1149-1161 (1985) -# -species -# Table 1 species -Ca_2+ core 2.00000 -Sc_2+ core 2.00000 -Ti_2+ core 2.00000 -V_2+ core 2.00000 -Cr_2+ core 2.00000 -Mn_2+ core 2.00000 -Fe_2+ core 2.00000 -Co_2+ core 2.00000 -Ni_2+ core 2.00000 -Zn_2+ core 2.00000 -Zr_4+ core 4.00000 -Cd_2+ core 2.00000 -Hf_4+ core 4.00000 -Ce_4+ core 4.00000 -Eu_2+ core 2.00000 -Tb_4+ core 4.00000 -Th_4+ core 4.00000 -U_4+ core 4.00000 -# Table 2 species -Sc_3+ core 3.00000 -Mn_3+ core 3.00000 -Y_3+ core 3.00000 -La_3+ core 3.00000 -Nd_3+ core 3.00000 -Eu_3+ core 3.00000 -Gd_3+ core 3.00000 -Ho_3+ core 3.00000 -Yb_3+ core 3.00000 -Lu_3+ core 3.00000 -Pu_3+ core 3.00000 -# Oxygen -O core 0.86902 -O shel -2.86902 -buckingham -# Table 1 potentials -Ca_2+ core O shel 1227.7 0.33720 0.00000 0.0 10.0 -Sc_2+ core O shel 838.6 0.33720 0.00000 0.0 10.0 -Ti_2+ core O shel 633.3 0.33720 0.00000 0.0 10.0 -V_2+ core O shel 557.8 0.33720 0.00000 0.0 10.0 -Cr_2+ core O shel 619.8 0.33720 0.00000 0.0 10.0 -Mn_2+ core O shel 832.7 0.33720 0.00000 0.0 10.0 -Fe_2+ core O shel 725.7 0.33720 0.00000 0.0 10.0 -Co_2+ core O shel 684.9 0.33720 0.00000 0.0 10.0 -Ni_2+ core O shel 641.2 0.33720 0.00000 0.0 10.0 -Zn_2+ core O shel 700.3 0.33720 0.00000 0.0 10.0 -Zr_4+ core O shel 1453.8 0.35000 0.00000 0.0 10.0 -Cd_2+ core O shel 868.3 0.35000 0.00000 0.0 10.0 -Hf_4+ core O shel 1454.6 0.35000 0.00000 0.0 10.0 -Ce_4+ core O shel 1017.4 0.39490 0.00000 0.0 10.0 -Eu_2+ core O shel 665.2 0.39490 0.00000 0.0 10.0 -Tb_4+ core O shel 905.3 0.39490 0.00000 0.0 10.0 -Th_4+ core O shel 1144.6 0.39490 0.00000 0.0 10.0 -U_4+ core O shel 1055.0 0.39490 0.00000 0.0 10.0 -# Table 1 potentials -Sc_3+ core O shel 1299.4 0.33120 0.00000 0.0 10.0 -Mn_3+ core O shel 1257.9 0.32140 0.00000 0.0 10.0 -Y_3+ core O shel 1345.1 0.34910 0.00000 0.0 10.0 -La_3+ core O shel 1439.7 0.36510 0.00000 0.0 10.0 -Nd_3+ core O shel 1379.9 0.36010 0.00000 0.0 10.0 -Eu_3+ core O shel 1358.0 0.35560 0.00000 0.0 10.0 -Gd_3+ core O shel 1336.8 0.35510 0.00000 0.0 10.0 -Ho_3+ core O shel 1350.2 0.34870 0.00000 0.0 10.0 -Yb_3+ core O shel 1309.6 0.34620 0.00000 0.0 10.0 -Lu_3+ core O shel 1347.1 0.34300 0.00000 0.0 10.0 -Pu_3+ core O shel 1376.2 0.35930 0.00000 0.0 10.0 -# Oxygen-oxygen potential -O shel O shel 22764.0 0.14900 27.87900 0.0 12.0 -spring -O 74.92 From 3be22d0cdfb56d06b7229258c0689ffdb61bd149 Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Wed, 1 Jan 2025 06:18:09 +0800 Subject: [PATCH 04/24] Replace some deprecated API (#4228) * TO BE REVERTED: mark spglib deprecation as error * filter known deprecation warning * replace some deprecated API * revert debug filter * set deprecation warning as error * MaterialsProjectCompatibility -> MaterialsProject2020Compatibility * remove non-existent arg * filter known warning * fix grammar * revert warning filter --------- Co-authored-by: Shyue Ping Ong --- src/pymatgen/command_line/critic2_caller.py | 2 +- src/pymatgen/entries/compatibility.py | 1 - src/pymatgen/io/feff/inputs.py | 4 ++-- tests/electronic_structure/test_boltztrap2.py | 2 ++ tests/entries/test_computed_entries.py | 4 ++-- tests/ext/test_matproj.py | 2 +- tests/files/entries/Mn-O_entries.json | 2 +- 7 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/pymatgen/command_line/critic2_caller.py b/src/pymatgen/command_line/critic2_caller.py index 4769e715860..2e57258300b 100644 --- a/src/pymatgen/command_line/critic2_caller.py +++ b/src/pymatgen/command_line/critic2_caller.py @@ -766,7 +766,7 @@ def get_volume_and_charge(nonequiv_idx): def _parse_stdout(self, stdout): warnings.warn( "Parsing critic2 standard output is deprecated and will not be maintained, " - "please use the native JSON output in future.", + "please use the native JSON output in the future.", DeprecationWarning, stacklevel=2, ) diff --git a/src/pymatgen/entries/compatibility.py b/src/pymatgen/entries/compatibility.py index 09770153e15..6833dd0e15b 100644 --- a/src/pymatgen/entries/compatibility.py +++ b/src/pymatgen/entries/compatibility.py @@ -913,7 +913,6 @@ def __init__( correct_peroxide: Specify whether peroxide/superoxide/ozonide corrections are to be applied or not. check_potcar_hash (bool): Use potcar hash to verify potcars are correct. - silence_deprecation (bool): Silence deprecation warning. Defaults to False. """ self.compat_type = compat_type self.correct_peroxide = correct_peroxide diff --git a/src/pymatgen/io/feff/inputs.py b/src/pymatgen/io/feff/inputs.py index d9365c25499..f56a0577057 100644 --- a/src/pymatgen/io/feff/inputs.py +++ b/src/pymatgen/io/feff/inputs.py @@ -190,8 +190,8 @@ def __init__( self.periodic = True sym = SpacegroupAnalyzer(struct, **self.spacegroup_analyzer_settings) data = sym.get_symmetry_dataset() - self.space_number = data.get("number") - self.space_group = data.get("international") + self.space_number = data.number + self.space_group = data.international # for Molecule, skip the symmetry check elif isinstance(self.struct, Molecule): self.periodic = False diff --git a/tests/electronic_structure/test_boltztrap2.py b/tests/electronic_structure/test_boltztrap2.py index cdb75a24532..b68c94e1cc4 100644 --- a/tests/electronic_structure/test_boltztrap2.py +++ b/tests/electronic_structure/test_boltztrap2.py @@ -80,6 +80,7 @@ def test_get_volume(self): assert self.loader.get_volume() == approx(477.6256714925874, abs=1e-5) +@pytest.mark.filterwarnings("ignore:BandstructureLoader is deprecated:DeprecationWarning") class TestBandstructureLoader(TestCase): def setUp(self): self.loader = BandstructureLoader(BAND_STRUCT, VASP_RUN.structures[-1]) @@ -107,6 +108,7 @@ def test_set_upper_lower_bands(self): assert self.loader_sp_dn.ebands.shape == (14, 198) +@pytest.mark.filterwarnings("ignore:VasprunLoader is deprecated:DeprecationWarning") class TestVasprunLoader(TestCase): def setUp(self): self.loader = VasprunLoader(VASP_RUN) diff --git a/tests/entries/test_computed_entries.py b/tests/entries/test_computed_entries.py index 9cf63caca6f..98f6b006867 100644 --- a/tests/entries/test_computed_entries.py +++ b/tests/entries/test_computed_entries.py @@ -470,11 +470,11 @@ def setUp(self): for temp in self.temps } - with open(f"{TEST_DIR}/Mn-O_entries.json") as file: - data = json.load(file) with open(f"{TEST_DIR}/structure_CO2.json") as file: self.co2_struct = MontyDecoder().process_decoded(json.load(file)) + with open(f"{TEST_DIR}/Mn-O_entries.json") as file: + data = json.load(file) self.mp_entries = [MontyDecoder().process_decoded(d) for d in data] def test_gf_sisso(self): diff --git a/tests/ext/test_matproj.py b/tests/ext/test_matproj.py index 18558a41525..8c043f61f4a 100644 --- a/tests/ext/test_matproj.py +++ b/tests/ext/test_matproj.py @@ -908,7 +908,7 @@ def test_parity_with_mp_api(self): pytest.skip("mp_api.client.MPRester cannot be imported for this test.") mpr_mp_api = MpApi(PMG_MAPI_KEY) # Test summary - mp_data = mpr_mp_api.summary.search(formula="Al2O3") + mp_data = mpr_mp_api.materials.search(formula="Al2O3") pmg_data = self.rester.get_summary({"formula": "Al2O3"}) assert len(mp_data) == len(pmg_data) diff --git a/tests/files/entries/Mn-O_entries.json b/tests/files/entries/Mn-O_entries.json index 8276418e3c1..6f69a54a958 100644 --- a/tests/files/entries/Mn-O_entries.json +++ b/tests/files/entries/Mn-O_entries.json @@ -1 +1 @@ -[{"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -31.42682858, "composition": {"Mn": 2.0, "O": 2.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -1.40458, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-1.405 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -3.36170030192, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-3.362 eV)"}], "parameters": {"run_type": "GGA+U", "is_hubbard": true, "pseudo_potential": {"functional": "PBE", "labels": ["Mn_pv", "O"], "pot_type": "paw"}, "hubbards": {"Mn": 3.9, "O": 0.0}, "potcar_symbols": ["PBE Mn_pv", "PBE O"], "oxide_type": "oxide"}, "data": {"oxide_type": "oxide"}, "entry_id": "mp-19006", "correction": -4.76628030192, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[2.768974, 5e-05, 1.598707], [0.923025, 2.610708, 1.59873], [-0.878246, -2.578988, 4.71854]], "a": 3.1973553269890105, "b": 3.1974535219122417, "c": 5.448588337565979, "alpha": 89.99985583138601, "beta": 72.93751790695626, "gamma": 59.998925238391344, "volume": 45.386638186518894}, "sites": [{"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.0, 0.0], "xyz": [0.0, 0.0, 0.0], "label": "Mn", "properties": {"magmom": 4.591}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.5, 0.5], "xyz": [0.022389500000000007, 0.015859999999999985, 3.158635], "label": "Mn", "properties": {"magmom": -4.591}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.499999, 0.750001, 0.250001], "xyz": [1.8571915258050005, 1.3133090316699998, 3.178040718563], "label": "O", "properties": {"magmom": 0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.500001, 0.249999, 0.749999], "xyz": [0.9565614741950001, -1.28153903167, 4.737936281436999], "label": "O", "properties": {"magmom": 0.0}}]}}, {"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -85.73370849, "composition": {"Mn": 4.0, "O": 8.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -5.61832, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-5.618 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -6.72340060384, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-6.723 eV)"}], "parameters": {"run_type": "GGA+U", "is_hubbard": true, "pseudo_potential": {"functional": "PBE", "labels": ["Mn_pv", "O"], "pot_type": "paw"}, "hubbards": {"Mn": 3.9, "O": 0.0}, "potcar_symbols": ["PBE Mn_pv", "PBE O"], "oxide_type": "oxide"}, "data": {"oxide_type": "oxide"}, "entry_id": "mp-19395", "correction": -12.341720603839999, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[2.865569, -0.000728, 0.587157], [1.430411, 7.014927, 0.296261], [0.022098, 0.002584, 7.16407]], "a": 2.9251050521979547, "b": 7.1654062707128485, "c": 7.164104547224308, "alpha": 87.57482286635624, "beta": 78.24361041871992, "gamma": 78.25127452159832, "volume": 143.92681011884497}, "sites": [{"species": [{"element": "Mn", "occu": 1}], "abc": [0.65172, 0.183104, 0.516697], "xyz": [2.1408805747299997, 1.2853218862959999, 4.138562010974], "label": "Mn", "properties": {"magmom": 3.201}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.16706, 0.48647, 0.183322], "xyz": [1.178625045866, 3.4129036220580002, 1.5555441776299999], "label": "Mn", "properties": {"magmom": 3.2}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.834099, 0.516327, 0.819773], "xyz": [3.1468434014819997, 3.623507282489, 6.515625776], "label": "Mn", "properties": {"magmom": 3.202}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.34942, 0.819682, 0.486093], "xyz": [2.1845109523960002, 5.751011079766, 3.930408486452], "label": "Mn", "properties": {"magmom": 3.201}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.836051, 0.709259, 0.623567], "xyz": [3.4240732870339996, 4.976402761093, 5.168296615296], "label": "O", "properties": {"magmom": -0.054}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.457531, 0.378522, 0.710109], "xyz": [1.868220671363, 2.6568060369820006, 5.4680544192389995], "label": "O", "properties": {"magmom": -0.055}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.543632, 0.623959, 0.293333], "xyz": [2.4568148963909997, 4.377389044369, 2.6055101968330003], "label": "O", "properties": {"magmom": -0.054}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.164293, 0.29433, 0.380077], "xyz": [0.9002047388929999, 2.065565977574, 2.906562518521], "label": "O", "properties": {"magmom": -0.052}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.156647, 0.049469, 0.64082], "xyz": [0.533804629262, 0.348563263627, 4.697511455388], "label": "O", "properties": {"magmom": -0.177}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.795471, 0.361934, 0.050233], "xyz": [2.798301461707, 2.538491288002, 0.934166023031], "label": "O", "properties": {"magmom": -0.177}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.844601, 0.953264, 0.361624], "xyz": [3.791812921625, 6.687396938616, 3.369027984941], "label": "O", "properties": {"magmom": -0.177}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.205655, 0.640841, 0.953012], "xyz": [1.527044267522, 4.497765699774999, 7.138052647175999], "label": "O", "properties": {"magmom": -0.177}}]}}, {"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -107.75750916, "composition": {"Mn": 6.0, "O": 8.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -5.61832, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-5.618 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -10.085100905760001, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-10.085 eV)"}], "parameters": {"run_type": "GGA+U", "is_hubbard": true, "pseudo_potential": {"functional": "PBE", "labels": ["Mn_pv", "O"], "pot_type": "paw"}, "hubbards": {"Mn": 3.9, "O": 0.0}, "potcar_symbols": ["PBE Mn_pv", "PBE O"], "oxide_type": "oxide"}, "data": {"oxide_type": "oxide"}, "entry_id": "mp-18759", "correction": -15.703420905760002, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[-1.411225, 5.010316, -2.713619], [-0.005231, -0.015119, 6.348054], [5.212233, 0.001971, -2.707051]], "a": 5.870140585849883, "b": 6.3480741594942005, "c": 5.87328714160401, "alpha": 117.49296084548875, "beta": 89.99975596506606, "gamma": 117.6525217154401, "volume": 165.45414815955115}, "sites": [{"species": [{"element": "Mn", "occu": 1}], "abc": [0.374136, 0.249108, 0.623737], "xyz": [2.721769414173, 1.8720027087510003, -1.1223993919389998], "label": "Mn", "properties": {"magmom": -4.567}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.625867, 0.750903, 0.376265], "xyz": [1.0740137190770005, 3.12518015983, 2.0498396655740008], "label": "Mn", "properties": {"magmom": -4.567}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.499997, 0.999997, 0.999996], "xyz": [4.501372900436, 2.4919950065250003, 2.2841934248990006], "label": "Mn", "properties": {"magmom": -3.927}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [4e-06, 0.499999, 1e-06], "xyz": [-0.002615927436, -0.007539441646, 3.1740070904190008], "label": "Mn", "properties": {"magmom": 3.823}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.999997, 0.999997, 0.999999], "xyz": [3.7957760371350004, 4.997153012438, 0.9273758037460005], "label": "Mn", "properties": {"magmom": 3.806}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [5e-06, 0.500006, 0.500001], "xyz": [2.6034991247220005, -0.0065490371629999995, 1.8205233131779999], "label": "Mn", "properties": {"magmom": 3.825}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.786014, 0.516723, 0.758504], "xyz": [2.8415539942690002, 3.9318611967710004, -0.9060660293279992], "label": "O", "properties": {"magmom": -0.017}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.24077, 0.983639, 0.213991], "xyz": [0.770444893044, 1.19188392154, 5.011550891335], "label": "O", "properties": {"magmom": 0.024}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.759146, 0.016228, 0.230767], "xyz": [0.13140067019300017, 3.8037708407610005, -2.581714827179], "label": "O", "properties": {"magmom": 0.024}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.759229, 0.016358, 0.786008], "xyz": [3.025328321641, 3.805279111530001, -4.084180514827], "label": "O", "properties": {"magmom": 0.024}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.771278, 0.484118, 0.241929], "xyz": [0.17001110064900016, 3.8575039658650003, 0.3253384299109999], "label": "O", "properties": {"magmom": -0.084}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.213985, 0.483274, 0.241496], "xyz": [0.9542244326490001, 1.06530183827, 1.8334336987850004], "label": "O", "properties": {"magmom": -0.017}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.22872, 0.51588, 0.758071], "xyz": [3.6257687322630003, 1.139654043741, 0.6020383012190003], "label": "O", "properties": {"magmom": -0.084}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.240853, 0.983771, 0.769233], "xyz": [3.664377746263, 1.1933921640420002, 3.509095192744], "label": "O", "properties": {"magmom": 0.024}}]}}, {"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -265.68948764, "composition": {"Mn": 29.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}], "parameters": {"run_type": "GGA", "is_hubbard": false, "pseudo_potential": {"functional": "PBE", "labels": ["Mn_pv"], "pot_type": "paw"}, "hubbards": {}, "potcar_symbols": ["PBE Mn_pv"], "oxide_type": "None"}, "data": {"oxide_type": "None"}, "entry_id": "mp-35", "correction": 0, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[-4.309249, 4.309249, 4.309249], [4.309249, -4.309249, 4.309249], [4.309249, 4.309249, -4.309249]], "a": 7.4638382104653775, "b": 7.4638382104653775, "c": 7.4638382104653775, "alpha": 109.47122063449069, "beta": 109.47122063449069, "gamma": 109.47122063449069, "volume": 320.0845853552375}, "sites": [{"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.0, 0.0], "xyz": [0.0, 0.0, 0.0], "label": "Mn", "properties": {"magmom": 0.767}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.637573, 0.637573, 0.637573], "xyz": [2.747460812677, 2.747460812677, 2.747460812677], "label": "Mn", "properties": {"magmom": 2.176}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.0, 0.362427], "xyz": [1.5617881873230002, 1.5617881873230002, -1.5617881873230002], "label": "Mn", "properties": {"magmom": 2.161}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.362427, 0.0, 0.0], "xyz": [-1.5617881873230002, 1.5617881873230002, 1.5617881873230002], "label": "Mn", "properties": {"magmom": 2.177}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.362427, 0.0], "xyz": [1.5617881873230002, -1.5617881873230002, 1.5617881873230002], "label": "Mn", "properties": {"magmom": 2.174}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.391672, 0.712408, 0.391672], "xyz": [3.0699434615920005, 0.30568088706399976, 3.0699434615920005], "label": "Mn", "properties": {"magmom": -0.488}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.320736, 0.0, 0.608328], "xyz": [1.239305538408, 4.003568112936001, -1.239305538408], "label": "Mn", "properties": {"magmom": -0.472}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.608328, 0.0, 0.320736], "xyz": [-1.239305538408, 4.003568112936001, 1.239305538408], "label": "Mn", "properties": {"magmom": -0.504}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.320736, 0.608328, 0.0], "xyz": [1.239305538408, -1.239305538408, 4.003568112936001], "label": "Mn", "properties": {"magmom": -0.482}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.679264, 0.679264, 0.287592], "xyz": [1.239305538408, 1.239305538408, 4.614929887064], "label": "Mn", "properties": {"magmom": -0.475}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.287592, 0.679264, 0.679264], "xyz": [4.614929887064, 1.239305538408, 1.2393055384079998], "label": "Mn", "properties": {"magmom": -0.485}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.608328, 0.320736], "xyz": [4.003568112936001, -1.239305538408, 1.239305538408], "label": "Mn", "properties": {"magmom": -0.485}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.320736, 0.608328], "xyz": [4.003568112936001, 1.239305538408, -1.239305538408], "label": "Mn", "properties": {"magmom": -0.464}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.608328, 0.320736, 0.0], "xyz": [-1.239305538408, 1.239305538408, 4.003568112936001], "label": "Mn", "properties": {"magmom": -0.492}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.391672, 0.391672, 0.712408], "xyz": [3.0699434615920005, 3.0699434615920005, 0.30568088706399976], "label": "Mn", "properties": {"magmom": -0.499}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.712408, 0.391672, 0.391672], "xyz": [0.30568088706399976, 3.0699434615920005, 3.0699434615920005], "label": "Mn", "properties": {"magmom": -0.477}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.679264, 0.287592, 0.679264], "xyz": [1.239305538408, 4.614929887064, 1.2393055384079998], "label": "Mn", "properties": {"magmom": -0.484}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.371604, 0.178119, 0.371604], "xyz": [0.767559122631, 2.435109208161, 0.7675591226309999], "label": "Mn", "properties": {"magmom": 0.123}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.806515, 0.0, 0.628396], "xyz": [-0.7675591226310003, 6.1833887918390005, 0.7675591226310003], "label": "Mn", "properties": {"magmom": 0.135}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.628396, 0.0, 0.806515], "xyz": [0.7675591226310003, 6.1833887918390005, -0.7675591226310003], "label": "Mn", "properties": {"magmom": 0.127}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.806515, 0.628396, 0.0], "xyz": [-0.7675591226310003, 0.7675591226310003, 6.1833887918390005], "label": "Mn", "properties": {"magmom": 0.122}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.193485, 0.193485, 0.821881], "xyz": [3.541689877369, 3.541689877369, -1.874139791839], "label": "Mn", "properties": {"magmom": 0.136}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.821881, 0.193485, 0.193485], "xyz": [-1.8741397918389997, 3.541689877369, 3.541689877369], "label": "Mn", "properties": {"magmom": 0.142}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.628396, 0.806515], "xyz": [6.1833887918390005, 0.7675591226310003, -0.7675591226310003], "label": "Mn", "properties": {"magmom": 0.149}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.806515, 0.628396], "xyz": [6.1833887918390005, -0.7675591226310003, 0.7675591226310003], "label": "Mn", "properties": {"magmom": 0.147}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.628396, 0.806515, 0.0], "xyz": [0.7675591226310003, -0.7675591226310003, 6.1833887918390005], "label": "Mn", "properties": {"magmom": 0.111}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.371604, 0.371604, 0.178119], "xyz": [0.767559122631, 0.767559122631, 2.435109208161], "label": "Mn", "properties": {"magmom": 0.11}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.178119, 0.371604, 0.371604], "xyz": [2.435109208161, 0.767559122631, 0.7675591226309999], "label": "Mn", "properties": {"magmom": 0.144}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.193485, 0.821881, 0.193485], "xyz": [3.541689877369, -1.8741397918389997, 3.541689877369], "label": "Mn", "properties": {"magmom": 0.132}}]}}, {"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -39.58364375, "composition": {"O": 8.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}], "parameters": {"run_type": "GGA", "is_hubbard": false, "pseudo_potential": {"functional": "PBE", "labels": ["O"], "pot_type": "paw"}, "hubbards": {}, "potcar_symbols": ["PBE O"], "oxide_type": "None"}, "data": {"oxide_type": "None"}, "entry_id": "mp-12957", "correction": 0, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[3.110107, 4.377428, 0.0], [-3.110107, 4.377428, 0.0], [0.0, 1.908312, 3.953345]], "a": 5.369789702272613, "b": 5.369789702272613, "c": 4.389828171850124, "alpha": 69.2448296788145, "beta": 69.2448296788145, "gamma": 70.78662063844565, "volume": 107.6438082346079}, "sites": [{"species": [{"element": "O", "occu": 1}], "abc": [0.726541, 0.213911, 0.155391], "xyz": [1.59433415141, 4.413295427448, 0.614314232895], "label": "O", "properties": {"magmom": 0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.786089, 0.273459, 0.844609], "xyz": [1.59433415141, 6.249872572552, 3.339030767105], "label": "O", "properties": {"magmom": 0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.273459, 0.786089, 0.844609], "xyz": [-1.59433415141, 6.249872572552, 3.339030767105], "label": "O", "properties": {"magmom": 0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.213911, 0.726541, 0.155391], "xyz": [-1.59433415141, 4.413295427448, 0.614314232895], "label": "O", "properties": {"magmom": 0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.792252, 0.792252, 0.17832], "xyz": [0.0, 7.2763423715519995, 0.7049604804], "label": "O", "properties": {"magmom": -0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.207748, 0.207748, 0.82168], "xyz": [0.0, 3.3868256284480003, 3.2483845196], "label": "O", "properties": {"magmom": -0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.851778, 0.851778, 0.867359], "xyz": [0.0, 9.112385321976, 3.428969365855], "label": "O", "properties": {"magmom": -0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.148222, 0.148222, 0.132641], "xyz": [0.0, 1.550782678024, 0.5243756341450001], "label": "O", "properties": {"magmom": -0.0}}]}}, {"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -605.44549615, "composition": {"Mn": 32.0, "O": 48.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -33.70992, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-33.710 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -53.78720483072, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProjectCompatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-53.787 eV)"}], "parameters": {"run_type": "GGA+U", "is_hubbard": true, "pseudo_potential": {"functional": "PBE", "labels": ["Mn_pv", "O"], "pot_type": "paw"}, "hubbards": {"Mn": 3.9, "O": 0.0}, "potcar_symbols": ["PBE Mn_pv", "PBE O"], "oxide_type": "oxide"}, "data": {"oxide_type": "oxide"}, "entry_id": "mp-1172875", "correction": -87.49712483072, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[9.580269, 0.0, 0.0], [0.0, 9.608742, 0.0], [0.0, 0.0, 9.658434]], "a": 9.580269, "b": 9.608742, "c": 9.658434, "alpha": 90.0, "beta": 90.0, "gamma": 90.0, "volume": 889.1007007723838}, "sites": [{"species": [{"element": "Mn", "occu": 1}], "abc": [0.5, 0.5, 0.0], "xyz": [4.7901345, 4.804371, 0.0], "label": "Mn", "properties": {"magmom": 3.954}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.5, 0.0, 0.5], "xyz": [4.7901345, 0.0, 4.829217], "label": "Mn", "properties": {"magmom": 3.947}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.5, 0.5], "xyz": [0.0, 4.804371, 4.829217], "label": "Mn", "properties": {"magmom": 3.95}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.0, 0.0], "xyz": [0.0, 0.0, 0.0], "label": "Mn", "properties": {"magmom": 3.95}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.0, 0.5], "xyz": [0.0, 0.0, 4.829217], "label": "Mn", "properties": {"magmom": 3.958}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.5, 0.0], "xyz": [0.0, 4.804371, 0.0], "label": "Mn", "properties": {"magmom": 3.961}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.5, 0.0, 0.0], "xyz": [4.7901345, 0.0, 0.0], "label": "Mn", "properties": {"magmom": 3.958}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.5, 0.5, 0.5], "xyz": [4.7901345, 4.804371, 4.829217], "label": "Mn", "properties": {"magmom": 3.96}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.509136, 0.758839, 0.285941], "xyz": [4.877659837584, 7.291488170538, 2.761742276394], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.490864, 0.258839, 0.214059], "xyz": [4.702609162416, 2.4871171705379997, 2.067474723606], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.990864, 0.241161, 0.785941], "xyz": [9.492743662415998, 2.3172538294619995, 7.590959276394], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.009136, 0.741161, 0.714059], "xyz": [0.087525337584, 7.121624829461999, 6.896691723606], "label": "Mn", "properties": {"magmom": 3.995}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.490864, 0.241161, 0.714059], "xyz": [4.702609162416, 2.3172538294619995, 6.896691723606], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.509136, 0.741161, 0.785941], "xyz": [4.877659837584, 7.121624829461999, 7.590959276394], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.009136, 0.758839, 0.214059], "xyz": [0.087525337584, 7.291488170538, 2.067474723606], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.990864, 0.258839, 0.285941], "xyz": [9.492743662415998, 2.4871171705379997, 2.761742276394], "label": "Mn", "properties": {"magmom": 3.995}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.256414, 0.787943, 0.999876], "xyz": [2.4565150953659995, 7.571140997705999, 9.657236354184], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.743586, 0.287943, 0.500124], "xyz": [7.1237539046339995, 2.766769997706, 4.830414645816], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.243586, 0.212057, 0.499876], "xyz": [2.3336194046339997, 2.0376010022939997, 4.828019354184], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.756414, 0.712057, 0.000124], "xyz": [7.246649595366, 6.841972002294, 0.001197645816], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.743586, 0.212057, 0.000124], "xyz": [7.1237539046339995, 2.0376010022939997, 0.001197645816], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.256414, 0.712057, 0.499876], "xyz": [2.4565150953659995, 6.841972002294, 4.828019354184], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.756414, 0.787943, 0.500124], "xyz": [7.246649595366, 7.571140997705999, 4.830414645816], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.243586, 0.287943, 0.999876], "xyz": [2.3336194046339997, 2.766769997706, 9.657236354184], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.215751, 0.511796, 0.246639], "xyz": [2.066952617019, 4.917715720632, 2.382146503326], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.784249, 0.011796, 0.253361], "xyz": [7.5133163829809995, 0.11334472063199999, 2.447070496674], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.284249, 0.488204, 0.746639], "xyz": [2.7231818829809997, 4.691026279368, 7.211363503326], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.715751, 0.988204, 0.753361], "xyz": [6.857087117019, 9.495397279368, 7.276287496674], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.784249, 0.488204, 0.753361], "xyz": [7.5133163829809995, 4.691026279368, 7.276287496674], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.215751, 0.988204, 0.746639], "xyz": [2.066952617019, 9.495397279368, 7.211363503326], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.715751, 0.511796, 0.253361], "xyz": [6.857087117019, 4.917715720632, 2.447070496674], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.284249, 0.011796, 0.246639], "xyz": [2.7231818829809997, 0.11334472063199999, 2.382146503326], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.148653, 0.92325, 0.125336], "xyz": [1.424135727657, 8.871271051499999, 1.210549483824], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.851347, 0.42325, 0.374664], "xyz": [8.156133272342998, 4.0669000515, 3.618667516176], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.351347, 0.07675, 0.625336], "xyz": [3.365998772343, 0.7374709485, 6.039766483824], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.648653, 0.57675, 0.874664], "xyz": [6.214270227657, 5.541841948499999, 8.447884516176], "label": "O", "properties": {"magmom": -0.067}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.851347, 0.07675, 0.874664], "xyz": [8.156133272342998, 0.7374709485, 8.447884516176], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.148653, 0.57675, 0.625336], "xyz": [1.424135727657, 5.541841948499999, 6.039766483824], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.648653, 0.92325, 0.374664], "xyz": [6.214270227657, 8.871271051499999, 3.618667516176], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.351347, 0.42325, 0.125336], "xyz": [3.365998772343, 4.0669000515, 1.210549483824], "label": "O", "properties": {"magmom": -0.067}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.093362, 0.639767, 0.352725], "xyz": [0.8944330743779999, 6.147356043114, 3.40677113265], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.906638, 0.139767, 0.147275], "xyz": [8.685835925622, 1.342985043114, 1.4224458673499998], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.406638, 0.360233, 0.852725], "xyz": [3.8957014256219997, 3.461385956886, 8.23598813265], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.593362, 0.860233, 0.647275], "xyz": [5.684567574377999, 8.265756956886, 6.25166286735], "label": "O", "properties": {"magmom": -0.047}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.906638, 0.360233, 0.647275], "xyz": [8.685835925622, 3.461385956886, 6.25166286735], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.093362, 0.860233, 0.852725], "xyz": [0.8944330743779999, 8.265756956886, 8.23598813265], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.593362, 0.639767, 0.147275], "xyz": [5.684567574377999, 6.147356043114, 1.4224458673499998], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.406638, 0.139767, 0.352725], "xyz": [3.8957014256219997, 1.342985043114, 3.40677113265], "label": "O", "properties": {"magmom": -0.047}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.377278, 0.8579, 0.416654], "xyz": [3.6144247277819996, 8.2433397618, 4.024225159836], "label": "O", "properties": {"magmom": -0.083}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.622722, 0.3579, 0.083346], "xyz": [5.965844272218, 3.4389687617999996, 0.804991840164], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.122722, 0.1421, 0.916654], "xyz": [1.1757097722179999, 1.3654022382, 8.853442159836], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.877278, 0.6421, 0.583346], "xyz": [8.404559227782, 6.1697732381999995, 5.634208840164], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.622722, 0.1421, 0.583346], "xyz": [5.965844272218, 1.3654022382, 5.634208840164], "label": "O", "properties": {"magmom": -0.083}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.377278, 0.6421, 0.916654], "xyz": [3.6144247277819996, 6.1697732381999995, 8.853442159836], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.877278, 0.8579, 0.083346], "xyz": [8.404559227782, 8.2433397618, 0.804991840164], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.122722, 0.3579, 0.416654], "xyz": [1.1757097722179999, 3.4389687617999996, 4.024225159836], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.361212, 0.58585, 0.372296], "xyz": [3.4605081260279995, 5.629281500699999, 3.595796344464], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.638788, 0.08585, 0.127704], "xyz": [6.119760873972, 0.8249105006999999, 1.233420655536], "label": "O", "properties": {"magmom": -0.075}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.138788, 0.41415, 0.872296], "xyz": [1.3296263739719998, 3.9794604993, 8.425013344463999], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.861212, 0.91415, 0.627704], "xyz": [8.250642626028, 8.7838314993, 6.062637655536], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.638788, 0.41415, 0.627704], "xyz": [6.119760873972, 3.9794604993, 6.062637655536], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.361212, 0.91415, 0.872296], "xyz": [3.4605081260279995, 8.7838314993, 8.425013344463999], "label": "O", "properties": {"magmom": -0.075}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.861212, 0.58585, 0.127704], "xyz": [8.250642626028, 5.629281500699999, 1.233420655536], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.138788, 0.08585, 0.372296], "xyz": [1.3296263739719998, 0.8249105006999999, 3.595796344464], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.41963, 0.878812, 0.146192], "xyz": [4.02016828047, 8.444277774504, 1.4119857833279998], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.58037, 0.378812, 0.353808], "xyz": [5.56010071953, 3.6399067745039995, 3.417231216672], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.08037, 0.121188, 0.646192], "xyz": [0.7699662195299999, 1.164464225496, 6.241202783328], "label": "O", "properties": {"magmom": -0.069}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.91963, 0.621188, 0.853808], "xyz": [8.81030278047, 5.968835225495999, 8.246448216672], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.58037, 0.121188, 0.853808], "xyz": [5.56010071953, 1.164464225496, 8.246448216672], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.41963, 0.621188, 0.646192], "xyz": [4.02016828047, 5.968835225495999, 6.241202783328], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.91963, 0.878812, 0.353808], "xyz": [8.81030278047, 8.444277774504, 3.417231216672], "label": "O", "properties": {"magmom": -0.069}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.08037, 0.378812, 0.146192], "xyz": [0.7699662195299999, 3.6399067745039995, 1.4119857833279998], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.138498, 0.653634, 0.088196], "xyz": [1.326848095962, 6.280600468428, 0.851835245064], "label": "O", "properties": {"magmom": -0.039}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.861502, 0.153634, 0.411804], "xyz": [8.253420904038, 1.4762294684279997, 3.9773817549359998], "label": "O", "properties": {"magmom": -0.039}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.361502, 0.346366, 0.588196], "xyz": [3.4632864040379996, 3.3281415315719998, 5.681052245064], "label": "O", "properties": {"magmom": -0.038}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.638498, 0.846366, 0.911804], "xyz": [6.116982595962, 8.132512531571999, 8.806598754936], "label": "O", "properties": {"magmom": -0.039}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.861502, 0.346366, 0.911804], "xyz": [8.253420904038, 3.3281415315719998, 8.806598754936], "label": "O", "properties": {"magmom": -0.039}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.138498, 0.846366, 0.588196], "xyz": [1.326848095962, 8.132512531571999, 5.681052245064], "label": "O", "properties": {"magmom": -0.039}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.638498, 0.653634, 0.411804], "xyz": [6.116982595962, 6.280600468428, 3.9773817549359998], "label": "O", "properties": {"magmom": -0.038}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.361502, 0.153634, 0.088196], "xyz": [3.4632864040379996, 1.4762294684279997, 0.851835245064], "label": "O", "properties": {"magmom": -0.039}}]}}] \ No newline at end of file +[{"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -31.42682858, "composition": {"Mn": 2.0, "O": 2.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -1.40458, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-1.405 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -3.36170030192, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-3.362 eV)"}], "parameters": {"run_type": "GGA+U", "is_hubbard": true, "pseudo_potential": {"functional": "PBE", "labels": ["Mn_pv", "O"], "pot_type": "paw"}, "hubbards": {"Mn": 3.9, "O": 0.0}, "potcar_symbols": ["PBE Mn_pv", "PBE O"], "oxide_type": "oxide"}, "data": {"oxide_type": "oxide"}, "entry_id": "mp-19006", "correction": -4.76628030192, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[2.768974, 5e-05, 1.598707], [0.923025, 2.610708, 1.59873], [-0.878246, -2.578988, 4.71854]], "a": 3.1973553269890105, "b": 3.1974535219122417, "c": 5.448588337565979, "alpha": 89.99985583138601, "beta": 72.93751790695626, "gamma": 59.998925238391344, "volume": 45.386638186518894}, "sites": [{"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.0, 0.0], "xyz": [0.0, 0.0, 0.0], "label": "Mn", "properties": {"magmom": 4.591}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.5, 0.5], "xyz": [0.022389500000000007, 0.015859999999999985, 3.158635], "label": "Mn", "properties": {"magmom": -4.591}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.499999, 0.750001, 0.250001], "xyz": [1.8571915258050005, 1.3133090316699998, 3.178040718563], "label": "O", "properties": {"magmom": 0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.500001, 0.249999, 0.749999], "xyz": [0.9565614741950001, -1.28153903167, 4.737936281436999], "label": "O", "properties": {"magmom": 0.0}}]}}, {"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -85.73370849, "composition": {"Mn": 4.0, "O": 8.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -5.61832, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-5.618 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -6.72340060384, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-6.723 eV)"}], "parameters": {"run_type": "GGA+U", "is_hubbard": true, "pseudo_potential": {"functional": "PBE", "labels": ["Mn_pv", "O"], "pot_type": "paw"}, "hubbards": {"Mn": 3.9, "O": 0.0}, "potcar_symbols": ["PBE Mn_pv", "PBE O"], "oxide_type": "oxide"}, "data": {"oxide_type": "oxide"}, "entry_id": "mp-19395", "correction": -12.341720603839999, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[2.865569, -0.000728, 0.587157], [1.430411, 7.014927, 0.296261], [0.022098, 0.002584, 7.16407]], "a": 2.9251050521979547, "b": 7.1654062707128485, "c": 7.164104547224308, "alpha": 87.57482286635624, "beta": 78.24361041871992, "gamma": 78.25127452159832, "volume": 143.92681011884497}, "sites": [{"species": [{"element": "Mn", "occu": 1}], "abc": [0.65172, 0.183104, 0.516697], "xyz": [2.1408805747299997, 1.2853218862959999, 4.138562010974], "label": "Mn", "properties": {"magmom": 3.201}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.16706, 0.48647, 0.183322], "xyz": [1.178625045866, 3.4129036220580002, 1.5555441776299999], "label": "Mn", "properties": {"magmom": 3.2}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.834099, 0.516327, 0.819773], "xyz": [3.1468434014819997, 3.623507282489, 6.515625776], "label": "Mn", "properties": {"magmom": 3.202}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.34942, 0.819682, 0.486093], "xyz": [2.1845109523960002, 5.751011079766, 3.930408486452], "label": "Mn", "properties": {"magmom": 3.201}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.836051, 0.709259, 0.623567], "xyz": [3.4240732870339996, 4.976402761093, 5.168296615296], "label": "O", "properties": {"magmom": -0.054}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.457531, 0.378522, 0.710109], "xyz": [1.868220671363, 2.6568060369820006, 5.4680544192389995], "label": "O", "properties": {"magmom": -0.055}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.543632, 0.623959, 0.293333], "xyz": [2.4568148963909997, 4.377389044369, 2.6055101968330003], "label": "O", "properties": {"magmom": -0.054}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.164293, 0.29433, 0.380077], "xyz": [0.9002047388929999, 2.065565977574, 2.906562518521], "label": "O", "properties": {"magmom": -0.052}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.156647, 0.049469, 0.64082], "xyz": [0.533804629262, 0.348563263627, 4.697511455388], "label": "O", "properties": {"magmom": -0.177}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.795471, 0.361934, 0.050233], "xyz": [2.798301461707, 2.538491288002, 0.934166023031], "label": "O", "properties": {"magmom": -0.177}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.844601, 0.953264, 0.361624], "xyz": [3.791812921625, 6.687396938616, 3.369027984941], "label": "O", "properties": {"magmom": -0.177}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.205655, 0.640841, 0.953012], "xyz": [1.527044267522, 4.497765699774999, 7.138052647175999], "label": "O", "properties": {"magmom": -0.177}}]}}, {"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -107.75750916, "composition": {"Mn": 6.0, "O": 8.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -5.61832, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-5.618 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -10.085100905760001, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-10.085 eV)"}], "parameters": {"run_type": "GGA+U", "is_hubbard": true, "pseudo_potential": {"functional": "PBE", "labels": ["Mn_pv", "O"], "pot_type": "paw"}, "hubbards": {"Mn": 3.9, "O": 0.0}, "potcar_symbols": ["PBE Mn_pv", "PBE O"], "oxide_type": "oxide"}, "data": {"oxide_type": "oxide"}, "entry_id": "mp-18759", "correction": -15.703420905760002, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[-1.411225, 5.010316, -2.713619], [-0.005231, -0.015119, 6.348054], [5.212233, 0.001971, -2.707051]], "a": 5.870140585849883, "b": 6.3480741594942005, "c": 5.87328714160401, "alpha": 117.49296084548875, "beta": 89.99975596506606, "gamma": 117.6525217154401, "volume": 165.45414815955115}, "sites": [{"species": [{"element": "Mn", "occu": 1}], "abc": [0.374136, 0.249108, 0.623737], "xyz": [2.721769414173, 1.8720027087510003, -1.1223993919389998], "label": "Mn", "properties": {"magmom": -4.567}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.625867, 0.750903, 0.376265], "xyz": [1.0740137190770005, 3.12518015983, 2.0498396655740008], "label": "Mn", "properties": {"magmom": -4.567}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.499997, 0.999997, 0.999996], "xyz": [4.501372900436, 2.4919950065250003, 2.2841934248990006], "label": "Mn", "properties": {"magmom": -3.927}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [4e-06, 0.499999, 1e-06], "xyz": [-0.002615927436, -0.007539441646, 3.1740070904190008], "label": "Mn", "properties": {"magmom": 3.823}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.999997, 0.999997, 0.999999], "xyz": [3.7957760371350004, 4.997153012438, 0.9273758037460005], "label": "Mn", "properties": {"magmom": 3.806}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [5e-06, 0.500006, 0.500001], "xyz": [2.6034991247220005, -0.0065490371629999995, 1.8205233131779999], "label": "Mn", "properties": {"magmom": 3.825}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.786014, 0.516723, 0.758504], "xyz": [2.8415539942690002, 3.9318611967710004, -0.9060660293279992], "label": "O", "properties": {"magmom": -0.017}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.24077, 0.983639, 0.213991], "xyz": [0.770444893044, 1.19188392154, 5.011550891335], "label": "O", "properties": {"magmom": 0.024}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.759146, 0.016228, 0.230767], "xyz": [0.13140067019300017, 3.8037708407610005, -2.581714827179], "label": "O", "properties": {"magmom": 0.024}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.759229, 0.016358, 0.786008], "xyz": [3.025328321641, 3.805279111530001, -4.084180514827], "label": "O", "properties": {"magmom": 0.024}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.771278, 0.484118, 0.241929], "xyz": [0.17001110064900016, 3.8575039658650003, 0.3253384299109999], "label": "O", "properties": {"magmom": -0.084}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.213985, 0.483274, 0.241496], "xyz": [0.9542244326490001, 1.06530183827, 1.8334336987850004], "label": "O", "properties": {"magmom": -0.017}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.22872, 0.51588, 0.758071], "xyz": [3.6257687322630003, 1.139654043741, 0.6020383012190003], "label": "O", "properties": {"magmom": -0.084}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.240853, 0.983771, 0.769233], "xyz": [3.664377746263, 1.1933921640420002, 3.509095192744], "label": "O", "properties": {"magmom": 0.024}}]}}, {"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -265.68948764, "composition": {"Mn": 29.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}], "parameters": {"run_type": "GGA", "is_hubbard": false, "pseudo_potential": {"functional": "PBE", "labels": ["Mn_pv"], "pot_type": "paw"}, "hubbards": {}, "potcar_symbols": ["PBE Mn_pv"], "oxide_type": "None"}, "data": {"oxide_type": "None"}, "entry_id": "mp-35", "correction": 0, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[-4.309249, 4.309249, 4.309249], [4.309249, -4.309249, 4.309249], [4.309249, 4.309249, -4.309249]], "a": 7.4638382104653775, "b": 7.4638382104653775, "c": 7.4638382104653775, "alpha": 109.47122063449069, "beta": 109.47122063449069, "gamma": 109.47122063449069, "volume": 320.0845853552375}, "sites": [{"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.0, 0.0], "xyz": [0.0, 0.0, 0.0], "label": "Mn", "properties": {"magmom": 0.767}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.637573, 0.637573, 0.637573], "xyz": [2.747460812677, 2.747460812677, 2.747460812677], "label": "Mn", "properties": {"magmom": 2.176}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.0, 0.362427], "xyz": [1.5617881873230002, 1.5617881873230002, -1.5617881873230002], "label": "Mn", "properties": {"magmom": 2.161}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.362427, 0.0, 0.0], "xyz": [-1.5617881873230002, 1.5617881873230002, 1.5617881873230002], "label": "Mn", "properties": {"magmom": 2.177}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.362427, 0.0], "xyz": [1.5617881873230002, -1.5617881873230002, 1.5617881873230002], "label": "Mn", "properties": {"magmom": 2.174}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.391672, 0.712408, 0.391672], "xyz": [3.0699434615920005, 0.30568088706399976, 3.0699434615920005], "label": "Mn", "properties": {"magmom": -0.488}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.320736, 0.0, 0.608328], "xyz": [1.239305538408, 4.003568112936001, -1.239305538408], "label": "Mn", "properties": {"magmom": -0.472}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.608328, 0.0, 0.320736], "xyz": [-1.239305538408, 4.003568112936001, 1.239305538408], "label": "Mn", "properties": {"magmom": -0.504}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.320736, 0.608328, 0.0], "xyz": [1.239305538408, -1.239305538408, 4.003568112936001], "label": "Mn", "properties": {"magmom": -0.482}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.679264, 0.679264, 0.287592], "xyz": [1.239305538408, 1.239305538408, 4.614929887064], "label": "Mn", "properties": {"magmom": -0.475}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.287592, 0.679264, 0.679264], "xyz": [4.614929887064, 1.239305538408, 1.2393055384079998], "label": "Mn", "properties": {"magmom": -0.485}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.608328, 0.320736], "xyz": [4.003568112936001, -1.239305538408, 1.239305538408], "label": "Mn", "properties": {"magmom": -0.485}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.320736, 0.608328], "xyz": [4.003568112936001, 1.239305538408, -1.239305538408], "label": "Mn", "properties": {"magmom": -0.464}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.608328, 0.320736, 0.0], "xyz": [-1.239305538408, 1.239305538408, 4.003568112936001], "label": "Mn", "properties": {"magmom": -0.492}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.391672, 0.391672, 0.712408], "xyz": [3.0699434615920005, 3.0699434615920005, 0.30568088706399976], "label": "Mn", "properties": {"magmom": -0.499}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.712408, 0.391672, 0.391672], "xyz": [0.30568088706399976, 3.0699434615920005, 3.0699434615920005], "label": "Mn", "properties": {"magmom": -0.477}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.679264, 0.287592, 0.679264], "xyz": [1.239305538408, 4.614929887064, 1.2393055384079998], "label": "Mn", "properties": {"magmom": -0.484}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.371604, 0.178119, 0.371604], "xyz": [0.767559122631, 2.435109208161, 0.7675591226309999], "label": "Mn", "properties": {"magmom": 0.123}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.806515, 0.0, 0.628396], "xyz": [-0.7675591226310003, 6.1833887918390005, 0.7675591226310003], "label": "Mn", "properties": {"magmom": 0.135}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.628396, 0.0, 0.806515], "xyz": [0.7675591226310003, 6.1833887918390005, -0.7675591226310003], "label": "Mn", "properties": {"magmom": 0.127}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.806515, 0.628396, 0.0], "xyz": [-0.7675591226310003, 0.7675591226310003, 6.1833887918390005], "label": "Mn", "properties": {"magmom": 0.122}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.193485, 0.193485, 0.821881], "xyz": [3.541689877369, 3.541689877369, -1.874139791839], "label": "Mn", "properties": {"magmom": 0.136}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.821881, 0.193485, 0.193485], "xyz": [-1.8741397918389997, 3.541689877369, 3.541689877369], "label": "Mn", "properties": {"magmom": 0.142}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.628396, 0.806515], "xyz": [6.1833887918390005, 0.7675591226310003, -0.7675591226310003], "label": "Mn", "properties": {"magmom": 0.149}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.806515, 0.628396], "xyz": [6.1833887918390005, -0.7675591226310003, 0.7675591226310003], "label": "Mn", "properties": {"magmom": 0.147}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.628396, 0.806515, 0.0], "xyz": [0.7675591226310003, -0.7675591226310003, 6.1833887918390005], "label": "Mn", "properties": {"magmom": 0.111}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.371604, 0.371604, 0.178119], "xyz": [0.767559122631, 0.767559122631, 2.435109208161], "label": "Mn", "properties": {"magmom": 0.11}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.178119, 0.371604, 0.371604], "xyz": [2.435109208161, 0.767559122631, 0.7675591226309999], "label": "Mn", "properties": {"magmom": 0.144}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.193485, 0.821881, 0.193485], "xyz": [3.541689877369, -1.8741397918389997, 3.541689877369], "label": "Mn", "properties": {"magmom": 0.132}}]}}, {"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -39.58364375, "composition": {"O": 8.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}], "parameters": {"run_type": "GGA", "is_hubbard": false, "pseudo_potential": {"functional": "PBE", "labels": ["O"], "pot_type": "paw"}, "hubbards": {}, "potcar_symbols": ["PBE O"], "oxide_type": "None"}, "data": {"oxide_type": "None"}, "entry_id": "mp-12957", "correction": 0, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[3.110107, 4.377428, 0.0], [-3.110107, 4.377428, 0.0], [0.0, 1.908312, 3.953345]], "a": 5.369789702272613, "b": 5.369789702272613, "c": 4.389828171850124, "alpha": 69.2448296788145, "beta": 69.2448296788145, "gamma": 70.78662063844565, "volume": 107.6438082346079}, "sites": [{"species": [{"element": "O", "occu": 1}], "abc": [0.726541, 0.213911, 0.155391], "xyz": [1.59433415141, 4.413295427448, 0.614314232895], "label": "O", "properties": {"magmom": 0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.786089, 0.273459, 0.844609], "xyz": [1.59433415141, 6.249872572552, 3.339030767105], "label": "O", "properties": {"magmom": 0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.273459, 0.786089, 0.844609], "xyz": [-1.59433415141, 6.249872572552, 3.339030767105], "label": "O", "properties": {"magmom": 0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.213911, 0.726541, 0.155391], "xyz": [-1.59433415141, 4.413295427448, 0.614314232895], "label": "O", "properties": {"magmom": 0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.792252, 0.792252, 0.17832], "xyz": [0.0, 7.2763423715519995, 0.7049604804], "label": "O", "properties": {"magmom": -0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.207748, 0.207748, 0.82168], "xyz": [0.0, 3.3868256284480003, 3.2483845196], "label": "O", "properties": {"magmom": -0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.851778, 0.851778, 0.867359], "xyz": [0.0, 9.112385321976, 3.428969365855], "label": "O", "properties": {"magmom": -0.0}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.148222, 0.148222, 0.132641], "xyz": [0.0, 1.550782678024, 0.5243756341450001], "label": "O", "properties": {"magmom": -0.0}}]}}, {"@module": "pymatgen.entries.computed_entries", "@class": "ComputedStructureEntry", "energy": -605.44549615, "composition": {"Mn": 32.0, "O": 48.0}, "energy_adjustments": [{"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MPRelaxSet Potcar Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": 0, "name": "MP Gas Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (0.000 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -33.70992, "name": "MP Anion Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-33.710 eV)"}, {"@module": "pymatgen.entries.computed_entries", "@class": "ConstantEnergyAdjustment", "@version": "2020.8.3", "value": -53.78720483072, "name": "MP Advanced Correction", "cls": {"@module": "pymatgen.entries.compatibility", "@class": "MaterialsProject2020Compatibility", "@version": "2020.8.3", "compat_type": "Advanced", "correct_peroxide": true, "check_potcar_hash": false}, "description": "Constant energy adjustment (-53.787 eV)"}], "parameters": {"run_type": "GGA+U", "is_hubbard": true, "pseudo_potential": {"functional": "PBE", "labels": ["Mn_pv", "O"], "pot_type": "paw"}, "hubbards": {"Mn": 3.9, "O": 0.0}, "potcar_symbols": ["PBE Mn_pv", "PBE O"], "oxide_type": "oxide"}, "data": {"oxide_type": "oxide"}, "entry_id": "mp-1172875", "correction": -87.49712483072, "structure": {"@module": "pymatgen.core.structure", "@class": "Structure", "charge": null, "lattice": {"matrix": [[9.580269, 0.0, 0.0], [0.0, 9.608742, 0.0], [0.0, 0.0, 9.658434]], "a": 9.580269, "b": 9.608742, "c": 9.658434, "alpha": 90.0, "beta": 90.0, "gamma": 90.0, "volume": 889.1007007723838}, "sites": [{"species": [{"element": "Mn", "occu": 1}], "abc": [0.5, 0.5, 0.0], "xyz": [4.7901345, 4.804371, 0.0], "label": "Mn", "properties": {"magmom": 3.954}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.5, 0.0, 0.5], "xyz": [4.7901345, 0.0, 4.829217], "label": "Mn", "properties": {"magmom": 3.947}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.5, 0.5], "xyz": [0.0, 4.804371, 4.829217], "label": "Mn", "properties": {"magmom": 3.95}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.0, 0.0], "xyz": [0.0, 0.0, 0.0], "label": "Mn", "properties": {"magmom": 3.95}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.0, 0.5], "xyz": [0.0, 0.0, 4.829217], "label": "Mn", "properties": {"magmom": 3.958}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.0, 0.5, 0.0], "xyz": [0.0, 4.804371, 0.0], "label": "Mn", "properties": {"magmom": 3.961}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.5, 0.0, 0.0], "xyz": [4.7901345, 0.0, 0.0], "label": "Mn", "properties": {"magmom": 3.958}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.5, 0.5, 0.5], "xyz": [4.7901345, 4.804371, 4.829217], "label": "Mn", "properties": {"magmom": 3.96}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.509136, 0.758839, 0.285941], "xyz": [4.877659837584, 7.291488170538, 2.761742276394], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.490864, 0.258839, 0.214059], "xyz": [4.702609162416, 2.4871171705379997, 2.067474723606], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.990864, 0.241161, 0.785941], "xyz": [9.492743662415998, 2.3172538294619995, 7.590959276394], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.009136, 0.741161, 0.714059], "xyz": [0.087525337584, 7.121624829461999, 6.896691723606], "label": "Mn", "properties": {"magmom": 3.995}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.490864, 0.241161, 0.714059], "xyz": [4.702609162416, 2.3172538294619995, 6.896691723606], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.509136, 0.741161, 0.785941], "xyz": [4.877659837584, 7.121624829461999, 7.590959276394], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.009136, 0.758839, 0.214059], "xyz": [0.087525337584, 7.291488170538, 2.067474723606], "label": "Mn", "properties": {"magmom": 3.994}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.990864, 0.258839, 0.285941], "xyz": [9.492743662415998, 2.4871171705379997, 2.761742276394], "label": "Mn", "properties": {"magmom": 3.995}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.256414, 0.787943, 0.999876], "xyz": [2.4565150953659995, 7.571140997705999, 9.657236354184], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.743586, 0.287943, 0.500124], "xyz": [7.1237539046339995, 2.766769997706, 4.830414645816], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.243586, 0.212057, 0.499876], "xyz": [2.3336194046339997, 2.0376010022939997, 4.828019354184], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.756414, 0.712057, 0.000124], "xyz": [7.246649595366, 6.841972002294, 0.001197645816], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.743586, 0.212057, 0.000124], "xyz": [7.1237539046339995, 2.0376010022939997, 0.001197645816], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.256414, 0.712057, 0.499876], "xyz": [2.4565150953659995, 6.841972002294, 4.828019354184], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.756414, 0.787943, 0.500124], "xyz": [7.246649595366, 7.571140997705999, 4.830414645816], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.243586, 0.287943, 0.999876], "xyz": [2.3336194046339997, 2.766769997706, 9.657236354184], "label": "Mn", "properties": {"magmom": 3.983}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.215751, 0.511796, 0.246639], "xyz": [2.066952617019, 4.917715720632, 2.382146503326], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.784249, 0.011796, 0.253361], "xyz": [7.5133163829809995, 0.11334472063199999, 2.447070496674], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.284249, 0.488204, 0.746639], "xyz": [2.7231818829809997, 4.691026279368, 7.211363503326], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.715751, 0.988204, 0.753361], "xyz": [6.857087117019, 9.495397279368, 7.276287496674], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.784249, 0.488204, 0.753361], "xyz": [7.5133163829809995, 4.691026279368, 7.276287496674], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.215751, 0.988204, 0.746639], "xyz": [2.066952617019, 9.495397279368, 7.211363503326], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.715751, 0.511796, 0.253361], "xyz": [6.857087117019, 4.917715720632, 2.447070496674], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "Mn", "occu": 1}], "abc": [0.284249, 0.011796, 0.246639], "xyz": [2.7231818829809997, 0.11334472063199999, 2.382146503326], "label": "Mn", "properties": {"magmom": 3.993}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.148653, 0.92325, 0.125336], "xyz": [1.424135727657, 8.871271051499999, 1.210549483824], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.851347, 0.42325, 0.374664], "xyz": [8.156133272342998, 4.0669000515, 3.618667516176], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.351347, 0.07675, 0.625336], "xyz": [3.365998772343, 0.7374709485, 6.039766483824], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.648653, 0.57675, 0.874664], "xyz": [6.214270227657, 5.541841948499999, 8.447884516176], "label": "O", "properties": {"magmom": -0.067}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.851347, 0.07675, 0.874664], "xyz": [8.156133272342998, 0.7374709485, 8.447884516176], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.148653, 0.57675, 0.625336], "xyz": [1.424135727657, 5.541841948499999, 6.039766483824], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.648653, 0.92325, 0.374664], "xyz": [6.214270227657, 8.871271051499999, 3.618667516176], "label": "O", "properties": {"magmom": -0.066}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.351347, 0.42325, 0.125336], "xyz": [3.365998772343, 4.0669000515, 1.210549483824], "label": "O", "properties": {"magmom": -0.067}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.093362, 0.639767, 0.352725], "xyz": [0.8944330743779999, 6.147356043114, 3.40677113265], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.906638, 0.139767, 0.147275], "xyz": [8.685835925622, 1.342985043114, 1.4224458673499998], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.406638, 0.360233, 0.852725], "xyz": [3.8957014256219997, 3.461385956886, 8.23598813265], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.593362, 0.860233, 0.647275], "xyz": [5.684567574377999, 8.265756956886, 6.25166286735], "label": "O", "properties": {"magmom": -0.047}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.906638, 0.360233, 0.647275], "xyz": [8.685835925622, 3.461385956886, 6.25166286735], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.093362, 0.860233, 0.852725], "xyz": [0.8944330743779999, 8.265756956886, 8.23598813265], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.593362, 0.639767, 0.147275], "xyz": [5.684567574377999, 6.147356043114, 1.4224458673499998], "label": "O", "properties": {"magmom": -0.046}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.406638, 0.139767, 0.352725], "xyz": [3.8957014256219997, 1.342985043114, 3.40677113265], "label": "O", "properties": {"magmom": -0.047}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.377278, 0.8579, 0.416654], "xyz": [3.6144247277819996, 8.2433397618, 4.024225159836], "label": "O", "properties": {"magmom": -0.083}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.622722, 0.3579, 0.083346], "xyz": [5.965844272218, 3.4389687617999996, 0.804991840164], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.122722, 0.1421, 0.916654], "xyz": [1.1757097722179999, 1.3654022382, 8.853442159836], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.877278, 0.6421, 0.583346], "xyz": [8.404559227782, 6.1697732381999995, 5.634208840164], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.622722, 0.1421, 0.583346], "xyz": [5.965844272218, 1.3654022382, 5.634208840164], "label": "O", "properties": {"magmom": -0.083}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.377278, 0.6421, 0.916654], "xyz": [3.6144247277819996, 6.1697732381999995, 8.853442159836], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.877278, 0.8579, 0.083346], "xyz": [8.404559227782, 8.2433397618, 0.804991840164], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.122722, 0.3579, 0.416654], "xyz": [1.1757097722179999, 3.4389687617999996, 4.024225159836], "label": "O", "properties": {"magmom": -0.082}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.361212, 0.58585, 0.372296], "xyz": [3.4605081260279995, 5.629281500699999, 3.595796344464], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.638788, 0.08585, 0.127704], "xyz": [6.119760873972, 0.8249105006999999, 1.233420655536], "label": "O", "properties": {"magmom": -0.075}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.138788, 0.41415, 0.872296], "xyz": [1.3296263739719998, 3.9794604993, 8.425013344463999], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.861212, 0.91415, 0.627704], "xyz": [8.250642626028, 8.7838314993, 6.062637655536], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.638788, 0.41415, 0.627704], "xyz": [6.119760873972, 3.9794604993, 6.062637655536], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.361212, 0.91415, 0.872296], "xyz": [3.4605081260279995, 8.7838314993, 8.425013344463999], "label": "O", "properties": {"magmom": -0.075}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.861212, 0.58585, 0.127704], "xyz": [8.250642626028, 5.629281500699999, 1.233420655536], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.138788, 0.08585, 0.372296], "xyz": [1.3296263739719998, 0.8249105006999999, 3.595796344464], "label": "O", "properties": {"magmom": -0.074}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.41963, 0.878812, 0.146192], "xyz": [4.02016828047, 8.444277774504, 1.4119857833279998], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.58037, 0.378812, 0.353808], "xyz": [5.56010071953, 3.6399067745039995, 3.417231216672], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.08037, 0.121188, 0.646192], "xyz": [0.7699662195299999, 1.164464225496, 6.241202783328], "label": "O", "properties": {"magmom": -0.069}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.91963, 0.621188, 0.853808], "xyz": [8.81030278047, 5.968835225495999, 8.246448216672], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.58037, 0.121188, 0.853808], "xyz": [5.56010071953, 1.164464225496, 8.246448216672], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.41963, 0.621188, 0.646192], "xyz": [4.02016828047, 5.968835225495999, 6.241202783328], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.91963, 0.878812, 0.353808], "xyz": [8.81030278047, 8.444277774504, 3.417231216672], "label": "O", "properties": {"magmom": -0.069}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.08037, 0.378812, 0.146192], "xyz": [0.7699662195299999, 3.6399067745039995, 1.4119857833279998], "label": "O", "properties": {"magmom": -0.068}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.138498, 0.653634, 0.088196], "xyz": [1.326848095962, 6.280600468428, 0.851835245064], "label": "O", "properties": {"magmom": -0.039}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.861502, 0.153634, 0.411804], "xyz": [8.253420904038, 1.4762294684279997, 3.9773817549359998], "label": "O", "properties": {"magmom": -0.039}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.361502, 0.346366, 0.588196], "xyz": [3.4632864040379996, 3.3281415315719998, 5.681052245064], "label": "O", "properties": {"magmom": -0.038}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.638498, 0.846366, 0.911804], "xyz": [6.116982595962, 8.132512531571999, 8.806598754936], "label": "O", "properties": {"magmom": -0.039}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.861502, 0.346366, 0.911804], "xyz": [8.253420904038, 3.3281415315719998, 8.806598754936], "label": "O", "properties": {"magmom": -0.039}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.138498, 0.846366, 0.588196], "xyz": [1.326848095962, 8.132512531571999, 5.681052245064], "label": "O", "properties": {"magmom": -0.039}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.638498, 0.653634, 0.411804], "xyz": [6.116982595962, 6.280600468428, 3.9773817549359998], "label": "O", "properties": {"magmom": -0.038}}, {"species": [{"element": "O", "occu": 1}], "abc": [0.361502, 0.153634, 0.088196], "xyz": [3.4632864040379996, 1.4762294684279997, 0.851835245064], "label": "O", "properties": {"magmom": -0.039}}]}}] \ No newline at end of file From 1abc45936f839369854399369bc966732f85bf08 Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Wed, 1 Jan 2025 06:18:28 +0800 Subject: [PATCH 05/24] Bump `phonopy` to apply fix for NumPy 2 in Windows (#4227) * install phonopy from git repo dev branch * unskip failing tests * remove python < 3.10 check * bump phonopy to test windows np2 fix --- pyproject.toml | 2 +- tests/io/test_phonopy.py | 9 --------- tests/util/test_typing.py | 8 -------- 3 files changed, 1 insertion(+), 18 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index db6f4b52ee6..cc7ff402087 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -107,7 +107,7 @@ optional = [ "hiphive>=1.3.1", "jarvis-tools>=2020.7.14", "matplotlib>=3.8", - "phonopy>=2.23", + "phonopy>=2.33.3", "seekpath>=2.0.1", ] # tblite only support Python 3.12+ through conda-forge diff --git a/tests/io/test_phonopy.py b/tests/io/test_phonopy.py index 0f20d54e474..14848c11bbb 100644 --- a/tests/io/test_phonopy.py +++ b/tests/io/test_phonopy.py @@ -1,7 +1,6 @@ from __future__ import annotations import os -import platform from pathlib import Path from unittest import TestCase @@ -124,10 +123,6 @@ def test_structure_conversion(self): assert struct_pmg_round_trip.site_properties["magmom"] == struct_pmg.site_properties["magmom"] -@pytest.mark.skipif( - platform.system() == "Windows" and int(np.__version__[0]) >= 2, - reason="cannot run NP2 on windows, see PR 4224", -) @pytest.mark.skipif(Phonopy is None, reason="Phonopy not present") class TestGetDisplacedStructures(PymatgenTest): def test_get_displaced_structures(self): @@ -160,10 +155,6 @@ def test_get_displaced_structures(self): assert os.path.isfile("test.yaml") -@pytest.mark.skipif( - platform.system() == "Windows" and int(np.__version__[0]) >= 2, - reason="cannot run NP2 on windows, see PR 4224", -) @pytest.mark.skipif(Phonopy is None, reason="Phonopy not present") class TestPhonopyFromForceConstants(TestCase): def setUp(self) -> None: diff --git a/tests/util/test_typing.py b/tests/util/test_typing.py index 2fe5592605c..c0dd731fb55 100644 --- a/tests/util/test_typing.py +++ b/tests/util/test_typing.py @@ -2,13 +2,10 @@ from __future__ import annotations -import sys from pathlib import Path from types import GenericAlias from typing import TYPE_CHECKING, get_args -import pytest - from pymatgen.core import Composition, DummySpecies, Element, Species from pymatgen.entries import Entry from pymatgen.util.typing import CompositionLike, EntryLike, PathLike, PbcLike, SpeciesLike @@ -20,8 +17,6 @@ __date__ = "2022-10-20" __email__ = "janosh@lbl.gov" -skip_below_py310 = pytest.mark.skipif(sys.version_info < (3, 10), reason="requires python 3.10 or higher") - def _type_str(some_type: Any) -> str: return str(some_type).replace("typing.", "").replace("pymatgen.core.periodic_table.", "") @@ -48,7 +43,6 @@ def test_entry_like(): assert Entry.__name__ in str(EntryLike) -@skip_below_py310 def test_species_like(): assert isinstance("H", SpeciesLike) assert isinstance(Element("H"), SpeciesLike) @@ -56,7 +50,6 @@ def test_species_like(): assert isinstance(DummySpecies("X"), SpeciesLike) -@skip_below_py310 def test_composition_like(): assert isinstance("H", CompositionLike) assert isinstance(Element("H"), CompositionLike) @@ -71,7 +64,6 @@ def test_pbc_like(): assert get_args(PbcLike) == (bool, bool, bool) -@skip_below_py310 def test_pathlike(): assert isinstance("path/to/file", PathLike) assert isinstance(Path("path/to/file"), PathLike) From 3cb5ea473e56ba363bf84948cb246e0834a1f3ca Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 7 Jan 2025 13:46:41 -0800 Subject: [PATCH 06/24] pre-commit autoupdate (#4245) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/astral-sh/ruff-pre-commit: v0.8.1 → v0.8.6](https://github.com/astral-sh/ruff-pre-commit/compare/v0.8.1...v0.8.6) - [github.com/pre-commit/mirrors-mypy: v1.13.0 → v1.14.1](https://github.com/pre-commit/mirrors-mypy/compare/v1.13.0...v1.14.1) - [github.com/RobertCraigie/pyright-python: v1.1.389 → v1.1.391](https://github.com/RobertCraigie/pyright-python/compare/v1.1.389...v1.1.391) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- .pre-commit-config.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index d57d1fa0207..0d3402a4eb0 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -8,7 +8,7 @@ ci: repos: - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.8.1 + rev: v0.8.6 hooks: - id: ruff args: [--fix, --unsafe-fixes] @@ -22,7 +22,7 @@ repos: - id: trailing-whitespace - repo: https://github.com/pre-commit/mirrors-mypy - rev: v1.13.0 + rev: v1.14.1 hooks: - id: mypy @@ -65,6 +65,6 @@ repos: args: [--drop-empty-cells, --keep-output] - repo: https://github.com/RobertCraigie/pyright-python - rev: v1.1.389 + rev: v1.1.391 hooks: - id: pyright From 9b4623d837202d8b6051e3f4298c2a6bb99da113 Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Wed, 8 Jan 2025 05:46:55 +0800 Subject: [PATCH 07/24] Fix CI failure for `io.exciting.inputs` owing to `scipy` constant update (#4244) * add some types for io.exciting inputs * fix scale check --- src/pymatgen/io/exciting/inputs.py | 131 ++++++++++++++--------------- tests/io/exciting/test_inputs.py | 12 ++- 2 files changed, 76 insertions(+), 67 deletions(-) diff --git a/src/pymatgen/io/exciting/inputs.py b/src/pymatgen/io/exciting/inputs.py index 7ef99482b03..41bc7ef09a8 100644 --- a/src/pymatgen/io/exciting/inputs.py +++ b/src/pymatgen/io/exciting/inputs.py @@ -3,6 +3,7 @@ from __future__ import annotations import itertools +import warnings import xml.etree.ElementTree as ET from typing import TYPE_CHECKING @@ -16,10 +17,13 @@ from pymatgen.symmetry.bandstructure import HighSymmKpath if TYPE_CHECKING: - from pathlib import Path + from typing import ClassVar, Literal + from numpy.typing import ArrayLike, NDArray from typing_extensions import Self + from pymatgen.util.typing import PathLike + __author__ = "Christian Vorwerk" __copyright__ = "Copyright 2016" __version__ = "1.0" @@ -37,10 +41,18 @@ class ExcitingInput(MSONable): Attributes: structure (Structure): Associated Structure. title (str): Optional title string. - lockxyz (numpy.ndarray): Lockxyz attribute for each site if available. A Nx3 array of booleans. + lockxyz (Nx3 NDArray of booleans): Lockxyz attribute for each site if available. """ - def __init__(self, structure: Structure, title=None, lockxyz=None): + # Conversion factor between Bohr radius and Angstrom + bohr2ang: ClassVar[float] = const.value("Bohr radius") / const.value("Angstrom star") + + def __init__( + self, + structure: Structure, + title: str | None = None, + lockxyz: ArrayLike | None = None, + ) -> None: """ Args: structure (Structure): Structure object. @@ -52,22 +64,19 @@ def __init__(self, structure: Structure, title=None, lockxyz=None): if structure.is_ordered: site_properties = {} if lockxyz: - site_properties["selective_dynamics"] = lockxyz + site_properties["selective_dynamics"] = np.asarray(lockxyz) self.structure = structure.copy(site_properties=site_properties) self.title = structure.formula if title is None else title else: raise ValueError("Structure with partial occupancies cannot be converted into exciting input!") - # define conversion factor between Bohr radius and Angstrom - bohr2ang = const.value("Bohr radius") / const.value("Angstrom star") - @property - def lockxyz(self): + def lockxyz(self) -> NDArray: """Selective dynamics site properties.""" return self.structure.site_properties.get("selective_dynamics") @lockxyz.setter - def lockxyz(self, lockxyz): + def lockxyz(self, lockxyz: ArrayLike) -> NDArray: self.structure.add_site_property("selective_dynamics", lockxyz) @classmethod @@ -164,7 +173,7 @@ def from_str(cls, data: str) -> Self: return cls(structure_in, title_in, lockxyz) @classmethod - def from_file(cls, filename: str | Path) -> Self: + def from_file(cls, filename: PathLike) -> Self: """ Args: filename: Filename. @@ -178,32 +187,27 @@ def from_file(cls, filename: str | Path) -> Self: def write_etree( self, - celltype, - cartesian=False, - bandstr=False, + celltype: Literal["unchanged", "conventional", "primitive"], + cartesian: bool = False, + bandstr: bool = False, symprec: float = 0.4, - angle_tolerance=5, + angle_tolerance: float = 5, **kwargs, - ): - """Write the exciting input parameters to an XML object. + ) -> ET.Element: + """Convert the exciting input parameters to an XML Element object. Args: celltype (str): Choice of unit cell. Can be either the unit cell from self.structure ("unchanged"), the conventional cell ("conventional"), or the primitive unit cell ("primitive"). - cartesian (bool): Whether the atomic positions are provided in Cartesian or unit-cell coordinates. Default is False. - bandstr (bool): Whether the bandstructure path along the HighSymmKpath is included in the input file. Only supported if the celltype is set to "primitive". Default is False. - symprec (float): Tolerance for the symmetry finding. Default is 0.4. - angle_tolerance (float): Angle tolerance for the symmetry finding. - Default is 5. - + Default is 5. **kwargs: Additional parameters for the input file. Returns: @@ -297,77 +301,68 @@ def write_etree( def write_string( self, - celltype, - cartesian=False, - bandstr=False, + celltype: Literal["unchanged", "conventional", "primitive"], + cartesian: bool = False, + bandstr: bool = False, symprec: float = 0.4, - angle_tolerance=5, + angle_tolerance: float = 5, **kwargs, - ): - """Write exciting input.xml as a string. + ) -> str: + """Convert exciting input to a string. Args: celltype (str): Choice of unit cell. Can be either the unit cell - from self.structure ("unchanged"), the conventional cell - ("conventional"), or the primitive unit cell ("primitive"). - + from self.structure ("unchanged"), the conventional cell + ("conventional"), or the primitive unit cell ("primitive"). cartesian (bool): Whether the atomic positions are provided in - Cartesian or unit-cell coordinates. Default is False. - + Cartesian or unit-cell coordinates. Default is False. bandstr (bool): Whether the bandstructure path along the - HighSymmKpath is included in the input file. Only supported if the - celltype is set to "primitive". Default is False. - + HighSymmKpath is included in the input file. Only supported if the + celltype is set to "primitive". Default is False. symprec (float): Tolerance for the symmetry finding. Default is 0.4. - angle_tolerance (float): Angle tolerance for the symmetry finding. - Default is 5. - + Default is 5. **kwargs: Additional parameters for the input file. Returns: - String + str """ try: root = self.write_etree(celltype, cartesian, bandstr, symprec, angle_tolerance, **kwargs) self._indent(root) # output should be a string not a bytes object string = ET.tostring(root).decode("UTF-8") + except Exception: raise ValueError("Incorrect celltype!") + return string def write_file( self, - celltype, - filename, - cartesian=False, - bandstr=False, + celltype: Literal["unchanged", "conventional", "primitive"], + filename: PathLike, + cartesian: bool = False, + bandstr: bool = False, symprec: float = 0.4, - angle_tolerance=5, + angle_tolerance: float = 5, **kwargs, - ): + ) -> None: """Write exciting input file. Args: celltype (str): Choice of unit cell. Can be either the unit cell - from self.structure ("unchanged"), the conventional cell - ("conventional"), or the primitive unit cell ("primitive"). - - filename (str): Filename for exciting input. - + from self.structure ("unchanged"), the conventional cell + ("conventional"), or the primitive unit cell ("primitive"). + filename (PathLike): Filename for exciting input. cartesian (bool): Whether the atomic positions are provided in - Cartesian or unit-cell coordinates. Default is False. - + Cartesian or unit-cell coordinates. Default is False. bandstr (bool): Whether the bandstructure path along the - HighSymmKpath is included in the input file. Only supported if the - celltype is set to "primitive". Default is False. - + HighSymmKpath is included in the input file. Only supported if the + celltype is set to "primitive". Default is False. symprec (float): Tolerance for the symmetry finding. Default is 0.4. - angle_tolerance (float): Angle tolerance for the symmetry finding. - Default is 5. - + Default is 5. **kwargs: Additional parameters for the input file. """ try: @@ -378,15 +373,15 @@ def write_file( except Exception: raise ValueError("Incorrect celltype!") - # Missing PrettyPrint option in the current version of xml.etree.cElementTree @staticmethod - def _indent(elem, level=0): + def _indent(elem: ET.Element, level: int = 0) -> None: """ - Helper method to indent elements. + Helper method to indent elements, as missing PrettyPrint option + in the current version of xml.etree.cElementTree. Args: - elem: - level: + elem (ET.Element): The Element to process. + level (int): The indentation level. """ i = "\n" + level * " " if len(elem): @@ -401,19 +396,23 @@ def _indent(elem, level=0): elif level and (not elem.tail or not elem.tail.strip()): elem.tail = i - def _dicttoxml(self, paramdict_, element): + def _dicttoxml(self, paramdict_: dict, element: ET.Element) -> None: for key, value in paramdict_.items(): if isinstance(value, str) and key == "text()": element.text = value + elif isinstance(value, str): element.attrib[key] = value + elif isinstance(value, list): for item in value: self._dicttoxml(item, ET.SubElement(element, key)) + elif isinstance(value, dict): if element.findall(key) == []: self._dicttoxml(value, ET.SubElement(element, key)) else: self._dicttoxml(value, element.findall(key)[0]) + else: - print("cannot deal with", key, "=", value) + warnings.warn(f"cannot deal with {key} = {value}", stacklevel=2) diff --git a/tests/io/exciting/test_inputs.py b/tests/io/exciting/test_inputs.py index ccbac253944..0f119448c02 100644 --- a/tests/io/exciting/test_inputs.py +++ b/tests/io/exciting/test_inputs.py @@ -1,5 +1,7 @@ from __future__ import annotations +import math +import re from xml.etree import ElementTree as ET from numpy.testing import assert_allclose @@ -165,4 +167,12 @@ def test_param_dict(self): root = tree.getroot() ref_str = ET.tostring(root, encoding="unicode") - assert ref_str.strip() == test_str.strip() + ref_list = ref_str.strip().split() + test_list = test_str.strip().split() + + # "scale" is float, direct compare might give surprising results + ref_scale = float(re.search(r'scale="([-+]?\d*\.\d+|\d+)"', ref_list.pop(7))[1]) + test_scale = float(re.search(r'scale="([-+]?\d*\.\d+|\d+)"', test_list.pop(7))[1]) + + assert ref_list == test_list + assert math.isclose(ref_scale, test_scale) From e2baa687cb08ef1ab28fc91a64ddbbc24910ad5f Mon Sep 17 00:00:00 2001 From: "John de Wasseige (Osium)" <165780039+jdewasseigeosium@users.noreply.github.com> Date: Tue, 7 Jan 2025 22:47:25 +0100 Subject: [PATCH 08/24] Remove `is_rare_earth_metal` from `ElementBase` (periodic_table.py) (#4242) * Remove is_rare_earth_metal from periodic_table.py * Rm deprecated from monty * Rm is_rare_earth_metal from docs/pymatgen.md --- docs/pymatgen.md | 1 - src/pymatgen/core/periodic_table.py | 14 -------------- 2 files changed, 15 deletions(-) diff --git a/docs/pymatgen.md b/docs/pymatgen.md index a72f8e125bf..90f1e934b24 100644 --- a/docs/pymatgen.md +++ b/docs/pymatgen.md @@ -2454,7 +2454,6 @@ nav_order: 6 * [`ElementBase.is_noble_gas`](pymatgen.core.md#pymatgen.core.periodic_table.ElementBase.is_noble_gas) * [`ElementBase.is_post_transition_metal`](pymatgen.core.md#pymatgen.core.periodic_table.ElementBase.is_post_transition_metal) * [`ElementBase.is_quadrupolar`](pymatgen.core.md#pymatgen.core.periodic_table.ElementBase.is_quadrupolar) - * [`ElementBase.is_rare_earth_metal`](pymatgen.core.md#pymatgen.core.periodic_table.ElementBase.is_rare_earth_metal) * [`ElementBase.is_transition_metal`](pymatgen.core.md#pymatgen.core.periodic_table.ElementBase.is_transition_metal) * [`ElementBase.is_valid_symbol()`](pymatgen.core.md#pymatgen.core.periodic_table.ElementBase.is_valid_symbol) * [`ElementBase.iupac_ordering`](pymatgen.core.md#pymatgen.core.periodic_table.ElementBase.iupac_ordering) diff --git a/src/pymatgen/core/periodic_table.py b/src/pymatgen/core/periodic_table.py index d3ae2e44d49..7bddfbe6dfd 100644 --- a/src/pymatgen/core/periodic_table.py +++ b/src/pymatgen/core/periodic_table.py @@ -14,7 +14,6 @@ from typing import TYPE_CHECKING, overload import numpy as np -from monty.dev import deprecated from monty.json import MSONable from pymatgen.core.units import SUPPORTED_UNIT_NAMES, FloatWithUnit, Ha_to_eV, Length, Mass, Unit @@ -754,19 +753,6 @@ def is_rare_earth(self) -> bool: """ return self.is_lanthanoid or self.is_actinoid or self.symbol in {"Sc", "Y"} - @property - @deprecated( - is_rare_earth, - message="is_rare_earth is corrected to include Y and Sc.", - deadline=(2025, 1, 1), - ) - def is_rare_earth_metal(self) -> bool: - """True if element is a rare earth metal, Lanthanides (La) series and Actinides (Ac) series. - - This property is Deprecated, and scheduled for removal after 2025-01-01. - """ - return self.is_lanthanoid or self.is_actinoid - @property def is_metal(self) -> bool: """True if is a metal.""" From 266e85a2a7c96a5700e5d4ec878e2422013f789f Mon Sep 17 00:00:00 2001 From: Aaron Kaplan <33381112+esoteric-ephemera@users.noreply.github.com> Date: Thu, 9 Jan 2025 08:37:48 -0800 Subject: [PATCH 09/24] Add new MP input sets / concurrently update MatPES POTCARs (#3916) * add new MP24 input sets * pre-commit auto-fixes * typing for config updates * pre-commit auto-fixes * skip json in codespell check * still trying to skip codespell json checks * update base PBE 64 pseudopotentials, add hash for MP24 sets to sets * fix matpes set to remove the GGA tag for r2SCAN runs * slight tweak * pre-commit auto-fixes * fixes * pre-commit auto-fixes * disable auto_ismear * fix bandap --> kspacing * pre-commit auto-fixes * Add GGA_COMPAT False tag * Add full test, clean up vdw stuff (prev unused) * Add citation info --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Shyue Ping Ong --- src/pymatgen/io/vasp/MP24RelaxSet.yaml | 31 ++++ src/pymatgen/io/vasp/PBE64Base.yaml | 24 +-- src/pymatgen/io/vasp/sets.py | 205 ++++++++++++++++++++++++- tests/io/vasp/test_sets.py | 100 +++++++++++- 4 files changed, 342 insertions(+), 18 deletions(-) create mode 100644 src/pymatgen/io/vasp/MP24RelaxSet.yaml diff --git a/src/pymatgen/io/vasp/MP24RelaxSet.yaml b/src/pymatgen/io/vasp/MP24RelaxSet.yaml new file mode 100644 index 00000000000..72de8bef925 --- /dev/null +++ b/src/pymatgen/io/vasp/MP24RelaxSet.yaml @@ -0,0 +1,31 @@ +# Default VASP settings for calculations in the Materials Project +# using the Regularized-Restored Strongly Constrained and Appropriately +# Normed functional (r2SCAN). +PARENT: PBE64Base +INCAR: + ALGO: Normal + EDIFF: 1.e-05 + EDIFFG: -0.02 + ENAUG: 1360 + ENCUT: 680 + GGA_COMPAT: False + IBRION: 2 + ISIF: 3 + ISMEAR: 0 # included to have some reasonable default + ISPIN: 2 + KSPACING: 0.22 # included to have some reasonable default + LAECHG: True + LASPH: True + LCHARG: True + LELF: False # LELF = True restricts calculation to KPAR = 1 + LMAXMIX: 6 # per benchmark + LMIXTAU: True + LORBIT: 11 + LREAL: False # per benchmark + LVTOT: True + LWAVE: False + METAGGA: R2SCAN + NELM: 200 + NSW: 99 + PREC: Accurate + SIGMA: 0.05 # included to have some reasonable default diff --git a/src/pymatgen/io/vasp/PBE64Base.yaml b/src/pymatgen/io/vasp/PBE64Base.yaml index af0236253ed..358944a2b26 100644 --- a/src/pymatgen/io/vasp/PBE64Base.yaml +++ b/src/pymatgen/io/vasp/PBE64Base.yaml @@ -11,7 +11,7 @@ POTCAR: At: At Au: Au B: B - Ba: Ba_sv + Ba: Ba_sv_GW Be: Be_sv Bi: Bi Br: Br @@ -26,8 +26,8 @@ POTCAR: Cr: Cr_pv Cs: Cs_sv Cu: Cu_pv - Dy: Dy_3 - Er: Er_3 + Dy: Dy_h + Er: Er_h Eu: Eu F: F Fe: Fe_pv @@ -39,7 +39,7 @@ POTCAR: He: He Hf: Hf_pv Hg: Hg - Ho: Ho_3 + Ho: Ho_h I: I In: In_d Ir: Ir @@ -54,7 +54,7 @@ POTCAR: N: N Na: Na_pv Nb: Nb_pv - Nd: Nd_3 + Nd: Nd_h Ne: Ne Ni: Ni_pv Np: Np @@ -64,9 +64,9 @@ POTCAR: Pa: Pa Pb: Pb_d Pd: Pd - Pm: Pm_3 + Pm: Pm_h Po: Po_d - Pr: Pr_3 + Pr: Pr_h Pt: Pt Pu: Pu Ra: Ra_sv @@ -80,22 +80,22 @@ POTCAR: Sc: Sc_sv Se: Se Si: Si - Sm: Sm_3 + Sm: Sm_h Sn: Sn_d Sr: Sr_sv Ta: Ta_pv - Tb: Tb_3 + Tb: Tb_h Tc: Tc_pv Te: Te Th: Th Ti: Ti_pv Tl: Tl_d - Tm: Tm_3 + Tm: Tm_h U: U V: V_pv W: W_sv - Xe: Xe + Xe: Xe_GW Y: Y_sv - Yb: Yb_3 + Yb: Yb_h Zn: Zn Zr: Zr_sv diff --git a/src/pymatgen/io/vasp/sets.py b/src/pymatgen/io/vasp/sets.py index 11e5e555816..d23a861ca38 100644 --- a/src/pymatgen/io/vasp/sets.py +++ b/src/pymatgen/io/vasp/sets.py @@ -84,7 +84,10 @@ def _load_yaml_config(fname): - config = loadfn(f"{MODULE_DIR}/{fname}.yaml") + fname = f"{MODULE_DIR}/{fname}" + if not fname.endswith(".yaml"): + fname += ".yaml" + config = loadfn(fname) if "PARENT" in config: parent_config = _load_yaml_config(config["PARENT"]) for k, v in parent_config.items(): @@ -623,7 +626,11 @@ def incar(self) -> Incar: elif key == "KSPACING" and self.auto_kspacing: # Default to metal if no prev calc available bandgap = 0 if self.bandgap is None else self.bandgap - incar[key] = auto_kspacing(bandgap, self.bandgap_tol) + if new_kspacing := getattr(self, "kspacing_update", None): + # allow custom KSPACING update + incar[key] = new_kspacing + else: + incar[key] = auto_kspacing(bandgap, self.bandgap_tol) else: incar[key] = setting @@ -1294,7 +1301,7 @@ class MPRelaxSet(VaspInputSet): @due.dcite( Doi("10.1021/acs.jpclett.0c02405"), - description="AccurAccurate and Numerically Efficient r2SCAN Meta-Generalized Gradient Approximation", + description="Accurate and Numerically Efficient r2SCAN Meta-Generalized Gradient Approximation", ) @due.dcite( Doi("10.1103/PhysRevLett.115.036402"), @@ -1352,7 +1359,7 @@ class MPScanRelaxSet(VaspInputSet): James W. Furness, Aaron D. Kaplan, Jinliang Ning, John P. Perdew, and Jianwei Sun. Accurate and Numerically Efficient r2SCAN Meta-Generalized Gradient Approximation. - The Journal of Physical Chemistry Letters 0, 11 DOI: 10.1021/acs.jpclett.0c02405 + The Journal of Physical Chemistry Letters 11, 8208-8215 (2022) DOI: 10.1021/acs.jpclett.0c02405 """ bandgap: float | None = None @@ -1375,6 +1382,149 @@ def __post_init__(self) -> None: self._config_dict["INCAR"].pop(k, None) +@dataclass +class MP24RelaxSet(VaspInputSet): + """ + Materials Project relax set after a 2023-2024 benchmarking effort. + + By default, this uses r2SCAN as the xc functional. + For discussion around this benchmarking effort, see: + https://github.com/materialsproject/foundation/pull/26 + + Citation info: + - r2SCAN: + James W. Furness, Aaron D. Kaplan, Jinliang Ning, John P. Perdew, and Jianwei Sun. + Accurate and Numerically Efficient r2SCAN Meta-Generalized Gradient Approximation. + J. Phys. Chem. Lett. 11, 8208-8215 (2022) DOI: 10.1021/acs.jpclett.0c02405 + - r2SCAN-rVV10: + Jinliang Ning, Manish Kothakonda, James W. Furness, Aaron D. Kaplan, Sebastian Ehlert, + Jan Gerit Brandenburg, John P. Perdew, and Jianwei Sun. + Workhorse minimally empirical dispersion-corrected density functional with tests for + weakly bound systems: r2SCAN+rVV10. + Phys. Rev. B 106, 075422 (2022) DOI: 10.1103/PhysRevB.106.075422 + - r2SCAN-D4: + Sebastian Ehlert, Uwe Huniar, Jinliang Ning, James W. Furness, Jianwei Sun, + Aaron D. Kaplan, John P. Perdew, and Jan Gerit Brandenburg. + r2SCAN-D4: Dispersion corrected meta-generalized gradient approximation for general chemical applications. + J. Chem. Phys. 154, 061101 (2021) DOI: 10.1063/5.0041008 + - PBE: + John P. Perdew, Kieron Burke, and Matthias Ernzerhof, + Generalized Gradient Approximation Made Simple, + Phys. Rev. Lett. 77, 3865 (1996) DOI: 10.1103/PhysRevLett.77.3865 + - PBEsol: + John P. Perdew, Adrienn Ruzsinszky, Gábor I. Csonka, Oleg A. Vydrov, + Gustavo E. Scuseria, Lucian A. Constantin, Xiaolan Zhou, and Kieron Burke. + Restoring the Density-Gradient Expansion for Exchange in Solids and Surfaces. + Phys. Rev. Lett. 100, 136406 (2009) DOI: 10.1103/PhysRevLett.100.136406 + - PBE-D4 and PBEsol-D4: + Eike Caldeweyher,Jan-Michael Mewes, Sebastian Ehlert, and Stefan Grimme. + Extension and evaluation of the D4 London-dispersion model for periodic systems. + Phys. Chem. Chem. Phys. 22, 8499-8512 (2020) DOI: 10.1039/D0CP00502A + """ + + xc_functional: Literal["r2SCAN", "PBE", "PBEsol"] = "r2SCAN" + dispersion: Literal["rVV10", "D4"] | None = None + CONFIG = _load_yaml_config("MP24RelaxSet") + auto_ismear: bool = False + auto_kspacing: bool = True + inherit_incar: bool = False + + def __post_init__(self) -> None: + super().__post_init__() + + to_func = { + "r2SCAN": "R2SCAN", + "PBE": "PE", + "PBEsol": "PS", + } + + config_updates: dict[str, Any] = {} + if self.xc_functional == "r2SCAN": + config_updates |= {"METAGGA": to_func[self.xc_functional]} + self._config_dict["INCAR"].pop("GGA", None) + elif self.xc_functional in ["PBE", "PBEsol"]: + config_updates |= {"GGA": to_func[self.xc_functional]} + self._config_dict["INCAR"].pop("METAGGA", None) + else: + raise ValueError(f"Unknown XC functional {self.xc_functional}!") + + if self.dispersion == "rVV10": + if self.xc_functional == "r2SCAN": + config_updates |= {"BPARAM": 11.95, "CPARAM": 0.0093, "LUSE_VDW": True} + else: + raise ValueError( + "Use of rVV10 with functionals other than r2 / SCAN is not currently supported in VASP." + ) + + elif self.dispersion == "D4": + d4_pars = { + "r2SCAN": { + "S6": 1.0, + "S8": 0.60187490, + "A1": 0.51559235, + "A2": 5.77342911, + }, + "PBE": { + "S6": 1.0, + "S8": 0.95948085, + "A1": 0.38574991, + "A2": 4.80688534, + }, + "PBEsol": { + "S6": 1.0, + "S8": 1.71885698, + "A1": 0.47901421, + "A2": 5.96771589, + }, + } + config_updates |= {"IVDW": 13, **{f"VDW_{k}": v for k, v in d4_pars[self.xc_functional].items()}} + + if len(config_updates) > 0: + self._config_dict["INCAR"].update(config_updates) + + @staticmethod + def _sigmoid_interp( + bg, min_dk: float = 0.22, max_dk: float = 0.5, shape: float = 0.43, center: float = 4.15, fac: float = 12.0 + ): + delta = shape * (bg - center) + sigmoid = delta / (1.0 + delta**fac) ** (1.0 / fac) + return 0.5 * (min_dk + max_dk + (max_dk - min_dk) * sigmoid) + + def _multi_sigmoid_interp( + self, + bandgap: float, + dks: tuple[float, ...] = (0.22, 0.44, 0.5), + shape: tuple[float, ...] = (1.1, 2.5), + center: tuple[float, ...] = (2.35, 6.1), + fac: tuple[float, ...] = (8, 8), + bg_cut: tuple[float, ...] = (4.5,), + ): + if bandgap < self.bandgap_tol: + return dks[0] + + min_bds = [self.bandgap_tol, *bg_cut] + max_bds = [*bg_cut, np.inf] + + for icut, min_bd in enumerate(min_bds): + if min_bd <= bandgap < max_bds[icut]: + return self._sigmoid_interp( + bandgap, + min_dk=dks[icut], + max_dk=dks[icut + 1], + shape=shape[icut], + center=center[icut], + fac=fac[icut], + ) + + return None + + @property + def kspacing_update(self): + if self.bandgap is None: + return 0.22 + return self._multi_sigmoid_interp(self.bandgap) + + @dataclass class MPMetalRelaxSet(VaspInputSet): """ @@ -1571,7 +1721,8 @@ def __post_init__(self) -> None: ) if self.xc_functional.upper() == "R2SCAN": - self._config_dict["INCAR"].update({"METAGGA": "R2SCAN", "ALGO": "ALL", "GGA": None}) + self._config_dict["INCAR"].update({"METAGGA": "R2SCAN", "ALGO": "ALL"}) + self._config_dict["INCAR"].pop("GGA", None) if self.xc_functional.upper().endswith("+U"): self._config_dict["INCAR"]["LDAU"] = True @@ -1601,6 +1752,7 @@ class MPScanStaticSet(MPScanRelaxSet): def incar_updates(self) -> dict[str, Any]: """Updates to the INCAR config for this calculation type.""" updates: dict[str, Any] = { + "ALGO": "Fast", "LREAL": False, "NSW": 0, "LORBIT": 11, @@ -1626,6 +1778,49 @@ def incar_updates(self) -> dict[str, Any]: return updates +@dataclass +class MP24StaticSet(MP24RelaxSet): + """Create input files for a static calculation using MP24 parameters. + + For class information, refer to `MP24RelaxSet`. + If you use this set, please consider citing the appropriate papers in `MP24RelaxSet`. + + Args: + structure (Structure): Structure from previous run. + bandgap (float): Bandgap of the structure in eV. The bandgap is used to + compute the appropriate k-point density and determine the smearing settings. + lepsilon (bool): Whether to add static dielectric calculation + lcalcpol (bool): Whether to turn on evaluation of the Berry phase approximations + for electronic polarization. + **kwargs: Keywords supported by MP24RelaxSet. + """ + + lepsilon: bool = False + lcalcpol: bool = False + inherit_incar: bool = False + auto_kspacing: bool = True + + @property + def incar_updates(self) -> dict[str, Any]: + """Updates to the INCAR config for this calculation type.""" + updates: dict[str, Any] = { + "NSW": 0, + "LORBIT": 11, + "ISMEAR": -5, + } + + if self.lepsilon: + # LPEAD=T: numerical evaluation of overlap integral prevents + # LRF_COMMUTATOR errors and can lead to better expt. agreement + # but produces slightly different results + updates |= {"IBRION": 8, "LEPSILON": True, "LPEAD": True, "NSW": 1, "NPAR": None} + + if self.lcalcpol: + updates["LCALCPOL"] = True + + return updates + + @dataclass class MPHSEBSSet(VaspInputSet): """Implementation of a VaspInputSet for HSE band structure computations. diff --git a/tests/io/vasp/test_sets.py b/tests/io/vasp/test_sets.py index 4509e1b95f5..cef111d7d7e 100644 --- a/tests/io/vasp/test_sets.py +++ b/tests/io/vasp/test_sets.py @@ -29,6 +29,8 @@ MITMDSet, MITNEBSet, MITRelaxSet, + MP24RelaxSet, + MP24StaticSet, MPAbsorptionSet, MPHSEBSSet, MPHSERelaxSet, @@ -116,13 +118,14 @@ def test_sets_changed(self): "MPHSERelaxSet.yaml": "1779cb6a6af43ad54a12aec22882b9b8aa3469b764e29ac4ab486960d067b811", "VASPIncarBase.yaml": "8c1ce90d6697e45b650e1881e2b3d82a733dba17fb1bd73747a38261ec65a4c4", "MPSCANRelaxSet.yaml": "ad652ea740d06f9edd979494f31e25074b82b9fffdaaf7eff2ae5541fb0e6288", - "PBE64Base.yaml": "3434c918c17706feae397d0852f2224e771db94d7e4c988039e8658e66d87494", + "PBE64Base.yaml": "40e7e42159f59543b17f512666916001045f7644f422ccc45b8466d6a1cf0c48", "MPRelaxSet.yaml": "c9b0a519588fb3709509a9f9964632692584905e2961a0fe2e5f657561913083", "MITRelaxSet.yaml": "0b4bec619fa860dac648584853c3b3d5407e4148a85d0e95024fbd1dc315669d", "vdW_parameters.yaml": "7d2599a855533865335a313c043b6f89e03fc2633c88b6bc721723d94cc862bd", "MatPESStaticSet.yaml": "4ec60ad4bbbb9a756f1b3fea8ca4eab8fc767d8f6a67332e7af3908c910fd7c5", "MPAbsorptionSet.yaml": "e49cd0ab87864f1c244e9b5ceb4703243116ec1fbb8958a374ddff07f7a5625c", "PBE54Base.yaml": "cdffe123eca8b19354554b60a7f8de9b8776caac9e1da2bd2a0516b7bfac8634", + "MP24RelaxSet.yaml": "35a5d4456f01d644cf41218725c5e0896c59e1658045ecd1544579cbb1ed7b85", } for input_set, hash_str in hashes.items(): @@ -2285,3 +2288,98 @@ def test_dict_set_alias(): ): DictSet() assert isinstance(DictSet(), VaspInputSet) + + +class TestMP24Sets(PymatgenTest): + def setUp(self): + self.relax_set = MP24RelaxSet + self.static_set = MP24StaticSet + + filepath = f"{VASP_IN_DIR}/POSCAR" + self.structure = Structure.from_file(filepath) + + @staticmethod + def matches_ref(test_val, ref_val) -> bool: + if isinstance(ref_val, float): + return test_val == approx(ref_val) + return test_val == ref_val + + def test_kspacing(self): + bandgaps = [0.0, 0.1, 0.5, 1.0, 2.0, 3, 5, 10, 1e4] + expected_kspacing = [ + 0.22, + 0.22000976174867864, + 0.2200466614246148, + 0.22056799311325073, + 0.2876525546497567, + 0.40800309817134106, + 0.44000114629141485, + 0.4999999999540808, + 0.5, + ] + for i, bandgap in enumerate(bandgaps): + assert self.relax_set()._multi_sigmoid_interp(bandgap) == approx(expected_kspacing[i]) + + def test_default(self): + vis = self.relax_set(structure=self.structure) + expected_incar_relax = { + "ALGO": "Normal", + "EDIFF": 1.0e-05, + "EDIFFG": -0.02, + "ENAUG": 1360, + "ENCUT": 680, + "GGA_COMPAT": False, + "KSPACING": 0.22, + "ISMEAR": 0, + "SIGMA": 0.05, + "METAGGA": "R2scan", + "LMAXMIX": 6, + "LREAL": False, + } + + assert all(self.matches_ref(vis.incar[k], v) for k, v in expected_incar_relax.items()) + + assert self.relax_set(self.structure, xc_functional="r2SCAN")._config_dict == vis._config_dict + assert vis.inherit_incar is False + assert vis.dispersion is None + assert vis.potcar_functional == "PBE_64" + assert vis.potcar_symbols == ["Fe_pv", "P", "O"] + assert vis.kpoints is None + + vis = self.static_set(structure=self.structure, dispersion="rVV10") + + expected_incar_static = { + "ISMEAR": -5, + "NSW": 0, + "LORBIT": 11, + "METAGGA": "R2scan", + "LUSE_VDW": True, + "BPARAM": 11.95, + "CPARAM": 0.0093, + } + + assert all(self.matches_ref(vis.incar[k], v) for k, v in expected_incar_static.items()) + assert ( + self.static_set(self.structure, xc_functional="r2SCAN", dispersion="rVV10")._config_dict == vis._config_dict + ) + + def test_non_default_xc_func(self): + for xc_functional, vasp_name in {"PBE": "Pe", "PBEsol": "Ps"}.items(): + vis = self.relax_set(structure=self.structure, xc_functional=xc_functional) + assert vis.incar.get("METAGGA") is None + assert vis.incar["GGA"] == vasp_name + + vis = self.static_set(structure=self.structure, xc_functional=xc_functional, dispersion="D4") + assert vis.incar.get("METAGGA") is None + print(self.relax_set(structure=self.structure, xc_functional=xc_functional).incar) + assert vis.incar["GGA"] == vasp_name + assert all( + isinstance(vis.incar[k], float | int) + for k in ( + "IVDW", + "VDW_A1", + "VDW_A2", + "VDW_S6", + "VDW_S8", + ) + ) From 3b97337119da09ef1334ea9904981ba9c86032b7 Mon Sep 17 00:00:00 2001 From: Shyue Ping Ong Date: Thu, 9 Jan 2025 08:38:16 -0800 Subject: [PATCH 10/24] Update pre-commit. --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 60a633321ac..9faa23a1566 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -8,7 +8,7 @@ ci: repos: - repo: https://github.com/astral-sh/ruff-pre-commit - rev: v0.7.2 + rev: v0.9.0 hooks: - id: ruff args: [--fix, --unsafe-fixes] From 7f9b758cbe5286f9838439919133f6eaf9f76fa3 Mon Sep 17 00:00:00 2001 From: Shyue Ping Ong Date: Thu, 9 Jan 2025 08:42:16 -0800 Subject: [PATCH 11/24] Fix linting. --- pyproject.toml | 1 + src/pymatgen/analysis/phase_diagram.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index cc7ff402087..3f0e090ec1f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -242,6 +242,7 @@ docstring-code-format = true "src/pymatgen/analysis/*" = ["D"] "src/pymatgen/io/*" = ["D"] "dev_scripts/*" = ["D"] +"src/pymatgen/util/string.py" = ["A005"] [tool.pytest.ini_options] addopts = "--durations=30 --quiet -r xXs --color=yes --import-mode=importlib" diff --git a/src/pymatgen/analysis/phase_diagram.py b/src/pymatgen/analysis/phase_diagram.py index 8e07887b11b..2bf5271f3d4 100644 --- a/src/pymatgen/analysis/phase_diagram.py +++ b/src/pymatgen/analysis/phase_diagram.py @@ -1805,7 +1805,7 @@ def get_pd_for_entry(self, entry: Entry | Composition) -> PhaseDiagram: Raises: ValueError: If no suitable PhaseDiagram is found for the entry. """ - entry_space = frozenset(entry.elements) if isinstance(entry, Composition) else frozenset(entry.elements) + entry_space = frozenset(entry.elements) try: return self.pds[entry_space] From 4be17da6b85088e26882f07c92769a75f66e2e40 Mon Sep 17 00:00:00 2001 From: Ihor Radchenko Date: Thu, 9 Jan 2025 17:44:20 +0100 Subject: [PATCH 12/24] AseAtomsAdaptor: Support arbitrary selective dynamics constraints (#4229) * AseAtomsAdaptor: Support arbitrary selective dynamics constraints * src/pymatgen/io/ase.py (AseAtomsAdaptor.get_atoms): Use FixCartesian constraint instead of FixAtoms. FixCartesian can constrain individual coordinates and directly map selective dynamics settings. (AseAtomsAdaptor.get_structure): Add mapping from FixCartesian constraint to selective dynamics. * AseAtomsAdaptor.get_atoms: Fix failing tests * src/pymatgen/io/ase.py (AseAtomsAdaptor.get_atoms): Make sure that old tests are not failing. Never create empty constraints. Prefer using FixAtoms when possible (as in the past). * Add new tests for converting selective dynamics in Ase/Structure * tests/io/test_ase.py (test_get_atoms_from_structure_dyn) (test_get_structure_dyn): Test mixed coordinate constraint. --- src/pymatgen/io/ase.py | 77 ++++++++++++++++++++++++++++-------------- tests/io/test_ase.py | 14 ++++++++ 2 files changed, 65 insertions(+), 26 deletions(-) diff --git a/src/pymatgen/io/ase.py b/src/pymatgen/io/ase.py index f3cf8516d6d..308128c798b 100644 --- a/src/pymatgen/io/ase.py +++ b/src/pymatgen/io/ase.py @@ -6,7 +6,6 @@ from __future__ import annotations import warnings -from collections.abc import Iterable from importlib.metadata import PackageNotFoundError from typing import TYPE_CHECKING @@ -18,7 +17,7 @@ try: from ase.atoms import Atoms from ase.calculators.singlepoint import SinglePointDFTCalculator - from ase.constraints import FixAtoms + from ase.constraints import FixAtoms, FixCartesian from ase.io.jsonio import decode, encode from ase.spacegroup import Spacegroup @@ -26,7 +25,7 @@ except ImportError: NO_ASE_ERR = PackageNotFoundError("AseAtomsAdaptor requires the ASE package. Use `pip install ase`") - encode = decode = FixAtoms = SinglePointDFTCalculator = Spacegroup = None + encode = decode = FixAtoms = FixCartesian = SinglePointDFTCalculator = Spacegroup = None class Atoms: # type: ignore[no-redef] def __init__(self, *args, **kwargs): @@ -157,31 +156,38 @@ def get_atoms(structure: SiteCollection, msonable: bool = True, **kwargs) -> MSO # Get the oxidation states from the structure oxi_states: list[float | None] = [getattr(site.specie, "oxi_state", None) for site in structure] - # Read in selective dynamics if present. Note that the ASE FixAtoms class fixes (x,y,z), so - # here we make sure that [False, False, False] or [True, True, True] is set for the site selective - # dynamics property. As a consequence, if only a subset of dimensions are fixed, this won't get passed to ASE. + # Read in selective dynamics if present. + # Note that FixCartesian class uses an opposite notion of + # "fix" and "not fix" flags: in ASE True means fixed and False + # means not fixed. + fix_atoms: dict | None = None if "selective_dynamics" in structure.site_properties: - fix_atoms = [] + fix_atoms = { + str([xc, yc, zc]): ([xc, yc, zc], []) + for xc in [True, False] + for yc in [True, False] + for zc in [True, False] + } + # [False, False, False] is free to move - no constraint in ASE. + del fix_atoms[str([False, False, False])] for site in structure: selective_dynamics: ArrayLike = site.properties.get("selective_dynamics") # type: ignore[assignment] - if ( - isinstance(selective_dynamics, Iterable) - and True in selective_dynamics - and False in selective_dynamics - ): - raise ValueError( - "ASE FixAtoms constraint does not support selective dynamics in only some dimensions. " - f"Remove the {selective_dynamics=} and try again if you do not need them." - ) - is_fixed = bool(~np.all(site.properties["selective_dynamics"])) - fix_atoms.append(is_fixed) - + for cmask_str in fix_atoms: + cmask_site = (~np.array(selective_dynamics)).tolist() + fix_atoms[cmask_str][1].append(cmask_str == str(cmask_site)) else: fix_atoms = None - # Set the selective dynamics with the FixAtoms class. + # Set the selective dynamics with the FixCartesian class. if fix_atoms is not None: - atoms.set_constraint(FixAtoms(mask=fix_atoms)) + atoms.set_constraint( + [ + FixAtoms(indices) if cmask == [True, True, True] else FixCartesian(indices, mask=cmask) + for cmask, indices in fix_atoms.values() + # Do not add empty constraints + if any(indices) + ] + ) # Add any remaining site properties to the ASE Atoms object for prop in structure.site_properties: @@ -254,21 +260,40 @@ def get_structure(atoms: Atoms, cls: type[Structure] = Structure, **cls_kwargs) oxi_states = atoms.get_array("oxi_states") if atoms.has("oxi_states") else None # If the ASE Atoms object has constraints, make sure that they are of the - # kind FixAtoms, which are the only ones that can be supported in Pymatgen. + # FixAtoms or FixCartesian kind, which are the only ones that + # can be supported in Pymatgen. # By default, FixAtoms fixes all three (x, y, z) dimensions. if atoms.constraints: unsupported_constraint_type = False - constraint_indices = [] + constraint_indices: dict = { + str([xc, yc, zc]): ([xc, yc, zc], []) + for xc in [True, False] + for yc in [True, False] + for zc in [True, False] + } for constraint in atoms.constraints: if isinstance(constraint, FixAtoms): - constraint_indices.extend(constraint.get_indices().tolist()) + constraint_indices[str([False] * 3)][1].extend(constraint.get_indices().tolist()) + elif isinstance(constraint, FixCartesian): + cmask = (~np.array(constraint.mask)).tolist() + constraint_indices[str(cmask)][1].extend(constraint.get_indices().tolist()) else: unsupported_constraint_type = True if unsupported_constraint_type: warnings.warn( - "Only FixAtoms is supported by Pymatgen. Other constraints will not be set.", stacklevel=2 + "Only FixAtoms and FixCartesian is supported by Pymatgen. Other constraints will not be set.", + stacklevel=2, ) - sel_dyn = [[False] * 3 if atom.index in constraint_indices else [True] * 3 for atom in atoms] + sel_dyn = [] + for atom in atoms: + constrained = False + for mask, indices in constraint_indices.values(): + if atom.index in indices: + sel_dyn.append(mask) + constrained = True + break # Assume no duplicates + if not constrained: + sel_dyn.append([False] * 3) else: sel_dyn = None diff --git a/tests/io/test_ase.py b/tests/io/test_ase.py index 4459b4ea5f0..4328d0f6959 100644 --- a/tests/io/test_ase.py +++ b/tests/io/test_ase.py @@ -91,6 +91,18 @@ def test_get_atoms_from_structure_dyn(): STRUCTURE.add_site_property("selective_dynamics", [[False] * 3] * len(STRUCTURE)) atoms = AseAtomsAdaptor.get_atoms(STRUCTURE) assert atoms.constraints[0].get_indices().tolist() == [atom.index for atom in atoms] + STRUCTURE.add_site_property("selective_dynamics", [[True] * 3] * len(STRUCTURE)) + atoms = AseAtomsAdaptor.get_atoms(STRUCTURE) + assert len(atoms.constraints) == 0 + rng = np.random.default_rng(seed=1234) + sel_dyn = [[rng.random() < 0.5, rng.random() < 0.5, rng.random() < 0.5] for _ in STRUCTURE] + STRUCTURE.add_site_property("selective_dynamics", sel_dyn) + atoms = AseAtomsAdaptor.get_atoms(STRUCTURE) + for c in atoms.constraints: + # print(c) + assert isinstance(c, ase.constraints.FixAtoms | ase.constraints.FixCartesian) + ase_mask = c.mask if isinstance(c, ase.constraints.FixCartesian) else [True, True, True] + assert len(c.index) == len([mask for mask in sel_dyn if np.array_equal(mask, ~np.array(ase_mask))]) def test_get_atoms_from_molecule(): @@ -178,8 +190,10 @@ def test_get_structure_mag(): "select_dyn", [ [True, True, True], + [True, False, True], [False, False, False], np.array([True, True, True]), + np.array([True, False, True]), np.array([False, False, False]), ], ) From 357297f400681c6551b0043e34e6b698c112bf45 Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Fri, 10 Jan 2025 00:45:22 +0800 Subject: [PATCH 13/24] Fix ion formula check in `ion_or_solid_comp_object` of `analysis.pourbaix_diagram` (#4233) * magic methods come first * add some types * add more types * make elements_ho classvar * pre-commit auto-fixes * add type for comment * add test and try-except fix * don't allow subclass * fix re pattern * make generate_entry_label private static method * fix docstring * fix type errors --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- src/pymatgen/analysis/pourbaix_diagram.py | 353 ++++++++++++---------- tests/analysis/test_pourbaix_diagram.py | 40 ++- 2 files changed, 237 insertions(+), 156 deletions(-) diff --git a/src/pymatgen/analysis/pourbaix_diagram.py b/src/pymatgen/analysis/pourbaix_diagram.py index e5e9c003e79..15c9a407f20 100644 --- a/src/pymatgen/analysis/pourbaix_diagram.py +++ b/src/pymatgen/analysis/pourbaix_diagram.py @@ -31,11 +31,16 @@ from pymatgen.util.string import Stringify if TYPE_CHECKING: - from typing import Any + from collections.abc import Sequence + from typing import Any, ClassVar, Literal import matplotlib.pyplot as plt + from numpy.typing import NDArray from typing_extensions import Self + from pymatgen.core import DummySpecies, Species + from pymatgen.entries.computed_entries import ComputedStructureEntry + __author__ = "Sai Jayaraman" __copyright__ = "Copyright 2012, The Materials Project" __version__ = "0.4" @@ -62,12 +67,15 @@ logger = logging.getLogger(__name__) -PREFAC = 0.0591 +PREFAC: float = 0.0591 # ln(10) * RT/nF in Nernst Equation # TODO: Revise to more closely reflect PDEntry, invoke from energy/composition + # TODO: PourbaixEntries depend implicitly on having entry energies be # formation energies, should be a better way to get from raw energies + + # TODO: uncorrected_energy is a bit of a misnomer, but not sure what to rename class PourbaixEntry(MSONable, Stringify): """ @@ -82,7 +90,12 @@ class PourbaixEntry(MSONable, Stringify): work. This may be changed to be more flexible in the future. """ - def __init__(self, entry, entry_id=None, concentration=1e-6): + def __init__( + self, + entry: ComputedEntry | ComputedStructureEntry, + entry_id: str | None = None, + concentration: float = 1e-6, + ) -> None: """ Args: entry (ComputedEntry | ComputedStructureEntry | PDEntry | IonEntry): An entry object @@ -100,29 +113,42 @@ def __init__(self, entry, entry_id=None, concentration=1e-6): self.charge = 0 self.uncorrected_energy = entry.energy if entry_id is not None: - self.entry_id = entry_id + self.entry_id: str | None = entry_id elif getattr(entry, "entry_id", None): self.entry_id = entry.entry_id else: self.entry_id = None + def __repr__(self) -> str: + energy, npH, nPhi, nH2O, entry_id = ( + self.energy, + self.npH, + self.nPhi, + self.nH2O, + self.entry_id, + ) + return ( + f"{type(self).__name__}({self.entry.composition} with {energy=:.4f}, {npH=}, " + f"{nPhi=}, {nH2O=}, {entry_id=})" + ) + @property - def npH(self): + def npH(self) -> float: """The number of H.""" return self.entry.composition.get("H", 0) - 2 * self.entry.composition.get("O", 0) @property - def nH2O(self): + def nH2O(self) -> float: """The number of H2O.""" return self.entry.composition.get("O", 0) @property - def nPhi(self): + def nPhi(self) -> float: """The number of electrons.""" return self.npH - self.charge @property - def name(self): + def name(self) -> str: """The entry's name.""" if self.phase_type == "Solid": return f"{self.entry.reduced_formula}(s)" @@ -130,22 +156,22 @@ def name(self): return self.entry.name @property - def energy(self): + def energy(self) -> float: """Total energy of the Pourbaix entry (at pH, V = 0 vs. SHE).""" # Note: this implicitly depends on formation energies as input return self.uncorrected_energy + self.conc_term - (MU_H2O * self.nH2O) @property - def energy_per_atom(self): + def energy_per_atom(self) -> float: """Energy per atom of the Pourbaix entry.""" return self.energy / self.composition.num_atoms @property - def elements(self): + def elements(self) -> list[Element | Species | DummySpecies]: """Elements in the entry.""" return self.entry.elements - def energy_at_conditions(self, pH, V): + def energy_at_conditions(self, pH: float, V: float) -> float: """Get free energy for a given pH and V. Args: @@ -157,7 +183,7 @@ def energy_at_conditions(self, pH, V): """ return self.energy + self.npH * PREFAC * pH + self.nPhi * V - def get_element_fraction(self, element): + def get_element_fraction(self, element: Element | str) -> float: """Get the elemental fraction of a given non-OH element. Args: @@ -170,13 +196,13 @@ def get_element_fraction(self, element): return self.composition.get(element) * self.normalization_factor @property - def normalized_energy(self): + def normalized_energy(self) -> float: """Energy normalized by number of non H or O atoms, e.g. for Zn2O6, energy / 2 or for AgTe3(OH)3, energy / 4. """ return self.energy * self.normalization_factor - def normalized_energy_at_conditions(self, pH, V): + def normalized_energy_at_conditions(self, pH: float, V: float) -> float: """Energy at an electrochemical condition, compatible with numpy arrays for pH/V input. @@ -190,7 +216,7 @@ def normalized_energy_at_conditions(self, pH, V): return self.energy_at_conditions(pH, V) * self.normalization_factor @property - def conc_term(self): + def conc_term(self) -> float: """The concentration contribution to the free energy. Should only be present when there are ions in the entry. """ @@ -202,14 +228,17 @@ def as_dict(self): Note that the pH, voltage, H2O factors are always calculated when constructing a PourbaixEntry object. """ - dct = {"@module": type(self).__module__, "@class": type(self).__name__} + dct = { + "@module": type(self).__module__, + "@class": type(self).__name__, + "entry": self.entry.as_dict(), + "concentration": self.concentration, + "entry_id": self.entry_id, + } if isinstance(self.entry, IonEntry): dct["entry_type"] = "Ion" else: dct["entry_type"] = "Solid" - dct["entry"] = self.entry.as_dict() - dct["concentration"] = self.concentration - dct["entry_id"] = self.entry_id return dct @classmethod @@ -224,17 +253,17 @@ def from_dict(cls, dct: dict) -> Self: return cls(entry, entry_id, concentration) @property - def normalization_factor(self): + def normalization_factor(self) -> float: """Sum of number of atoms minus the number of H and O in composition.""" return 1.0 / (self.num_atoms - self.composition.get("H", 0) - self.composition.get("O", 0)) @property - def composition(self): + def composition(self) -> Composition: """Composition.""" return self.entry.composition @property - def num_atoms(self): + def num_atoms(self) -> float: """Number of atoms in current formula. Useful for normalization.""" return self.composition.num_atoms @@ -245,40 +274,27 @@ def to_pretty_string(self) -> str: return self.entry.name - def __repr__(self): - energy, npH, nPhi, nH2O, entry_id = ( - self.energy, - self.npH, - self.nPhi, - self.nH2O, - self.entry_id, - ) - return ( - f"{type(self).__name__}({self.entry.composition} with {energy=:.4f}, {npH=}, " - f"{nPhi=}, {nH2O=}, {entry_id=})" - ) - class MultiEntry(PourbaixEntry): """PourbaixEntry-like object for constructing multi-elemental Pourbaix diagrams.""" - def __init__(self, entry_list, weights=None): + def __init__(self, entry_list: Sequence[PourbaixEntry], weights: list[float] | None = None) -> None: """Initialize a MultiEntry. Args: - entry_list ([PourbaixEntry]): List of component PourbaixEntries - weights ([float]): Weights associated with each entry. Default is None + entry_list (Sequence[PourbaixEntry]): Component PourbaixEntries. + weights (list[float]): Weights associated with each entry. Default is None """ self.weights = weights or [1.0] * len(entry_list) - self.entry_list = entry_list + self.entry_list = list(entry_list) - def __getattr__(self, attr): + def __getattr__(self, attr: str) -> Any: """ Because most of the attributes here are just weighted averages of the entry_list, we save some space by having a set of conditionals to define the attributes. """ # Attributes that are weighted averages of entry attributes - if attr in [ + if attr in { "energy", "npH", "nH2O", @@ -287,7 +303,7 @@ def __getattr__(self, attr): "composition", "uncorrected_energy", "elements", - ]: + }: # TODO: Composition could be changed for compat with sum start = Composition() if attr == "composition" else 0 weighted_values = ( @@ -296,18 +312,13 @@ def __getattr__(self, attr): return sum(weighted_values, start) # Attributes that are just lists of entry attributes - if attr in ["entry_id", "phase_type"]: + if attr in {"entry_id", "phase_type"}: return [getattr(entry, attr) for entry in self.entry_list] # normalization_factor, num_atoms should work from superclass return self.__getattribute__(attr) - @property - def name(self): - """MultiEntry name, i.e. the name of each entry joined by ' + '.""" - return " + ".join(entry.name for entry in self.entry_list) - - def __repr__(self): + def __repr__(self) -> str: energy, npH, nPhi, nH2O, entry_id = ( self.energy, self.npH, @@ -318,7 +329,12 @@ def __repr__(self): cls_name, species = type(self).__name__, self.name return f"Pourbaix{cls_name}({energy=:.4f}, {npH=}, {nPhi=}, {nH2O=}, {entry_id=}, {species=})" - def as_dict(self): + @property + def name(self) -> str: + """MultiEntry name, i.e. the name of each entry joined by ' + '.""" + return " + ".join(entry.name for entry in self.entry_list) + + def as_dict(self) -> dict[str, Any]: """Get MSONable dict.""" return { "@module": type(self).__module__, @@ -367,6 +383,9 @@ def __init__(self, ion: Ion, energy: float, name: str | None = None, attribute=N name = name or self.ion.reduced_formula super().__init__(composition=ion.composition, energy=energy, name=name, attribute=attribute) + def __repr__(self) -> str: + return f"IonEntry : {self.composition} with energy = {self.energy:.4f}" + @classmethod def from_dict(cls, dct: dict) -> Self: """Get an IonEntry object from a dict.""" @@ -377,34 +396,30 @@ def from_dict(cls, dct: dict) -> Self: dct.get("attribute"), ) - def as_dict(self): + def as_dict(self) -> dict[Literal["ion", "energy", "name"], Any]: """Create a dict of composition, energy, and ion name.""" return {"ion": self.ion.as_dict(), "energy": self.energy, "name": self.name} - def __repr__(self): - return f"IonEntry : {self.composition} with energy = {self.energy:.4f}" - -def ion_or_solid_comp_object(formula): - """Get an Ion or Composition object given a formula. +def ion_or_solid_comp_object(formula: str) -> Composition | Ion: + """Get an Ion or Composition from a formula. Args: - formula: String formula. Eg. of ion: NaOH(aq), Na[+]; - Eg. of solid: Fe2O3(s), Fe(s), Na2O + formula (str): Formula. E.g. of ion: NaOH(aq), Na[+], Na+; + E.g. of solid: Fe2O3(s), Fe(s), Na2O. Returns: - Composition/Ion object + Composition/Ion object. """ - if re.match(r"\[([^\[\]]+)\]|\(aq\)", formula): - comp_obj = Ion.from_formula(formula) - elif re.search(r"\(s\)", formula): - comp_obj = Composition(formula[:-3]) - else: - comp_obj = Composition(formula) - return comp_obj + # Formula for ion + if formula.endswith("(aq)") or re.search(r"\[.*\]$", formula) or "-" in formula or "+" in formula: + return Ion.from_formula(formula) + # Formula for solid + if formula.endswith("(s)"): + return Composition(formula[:-3]) -ELEMENTS_HO = {Element("H"), Element("O")} + return Composition(formula) # TODO: the solids filter breaks some of the functionality of the @@ -418,6 +433,8 @@ def ion_or_solid_comp_object(formula): class PourbaixDiagram(MSONable): """Create a Pourbaix diagram from entries.""" + elements_ho: ClassVar[set[Element]] = {Element("H"), Element("O")} + def __init__( self, entries: list[PourbaixEntry] | list[MultiEntry], @@ -425,7 +442,7 @@ def __init__( conc_dict: dict[str, float] | None = None, filter_solids: bool = True, nproc: int | None = None, - ): + ) -> None: """ Args: entries ([PourbaixEntry] or [MultiEntry]): Entries list @@ -451,7 +468,7 @@ def __init__( # Get non-OH elements self.pbx_elts = list( - set(itertools.chain.from_iterable([entry.composition.elements for entry in entries])) - ELEMENTS_HO + set(itertools.chain.from_iterable([entry.composition.elements for entry in entries])) - self.elements_ho ) self.dim = len(self.pbx_elts) - 1 @@ -463,7 +480,7 @@ def __init__( self._unprocessed_entries = single_entries self._filtered_entries = single_entries self._conc_dict = None - self._elt_comp = {k: v for k, v in entries[0].composition.items() if k not in ELEMENTS_HO} + self._elt_comp = {k: v for k, v in entries[0].composition.items() if k not in self.elements_ho} self._multi_element = True # Process single entry inputs @@ -483,7 +500,7 @@ def __init__( # If a conc_dict is specified, override individual entry concentrations for entry in ion_entries: - ion_elts = list(set(entry.elements) - ELEMENTS_HO) + ion_elts = list(set(entry.elements) - self.elements_ho) # TODO: the logic here for ion concentration setting is in two # places, in PourbaixEntry and here, should be consolidated if len(ion_elts) == 1: @@ -512,15 +529,15 @@ def __init__( self._stable_domains, self._stable_domain_vertices = self.get_pourbaix_domains(self._processed_entries) - def _convert_entries_to_points(self, pourbaix_entries): + def _convert_entries_to_points(self, pourbaix_entries: list[PourbaixEntry]) -> NDArray: """ Args: - pourbaix_entries ([PourbaixEntry]): list of Pourbaix entries + pourbaix_entries (list[PourbaixEntry]): Pourbaix entries to process into vectors in nph-nphi-composition space. Returns: - list of vectors, [[nph, nphi, e0, x1, x2, ..., xn-1]] - corresponding to each entry in nph-nphi-composition space + NDAarray: vectors as [[nph, nphi, e0, x1, x2, ..., xn-1]] + corresponding to each entry in nph-nphi-composition space """ vecs = [ [entry.npH, entry.nPhi, entry.energy] + [entry.composition.get(elt) for elt in self.pbx_elts[:-1]] @@ -531,15 +548,18 @@ def _convert_entries_to_points(self, pourbaix_entries): vecs *= norms return vecs - def _get_hull_in_nph_nphi_space(self, entries) -> tuple[list[PourbaixEntry], list[Simplex]]: + def _get_hull_in_nph_nphi_space( + self, + entries: list[PourbaixEntry], + ) -> tuple[list[PourbaixEntry], list[Simplex]]: """Generate convex hull of Pourbaix diagram entries in composition, npH, and nphi space. This enables filtering of multi-entries such that only compositionally stable combinations of entries are included. Args: - entries ([PourbaixEntry]): list of PourbaixEntries to construct - the convex hull + entries (list[PourbaixEntry]): PourbaixEntries to construct + the convex hull. Returns: tuple[list[PourbaixEntry], list[Simplex]]: PourbaixEntry list and stable @@ -588,11 +608,15 @@ def _get_hull_in_nph_nphi_space(self, entries) -> tuple[list[PourbaixEntry], lis return min_entries, valid_facets - def _preprocess_pourbaix_entries(self, entries, nproc=None): + def _preprocess_pourbaix_entries( + self, + entries: list[PourbaixEntry], + nproc: int | None = None, + ) -> list[MultiEntry]: """Generate multi-entries for Pourbaix diagram. Args: - entries ([PourbaixEntry]): list of PourbaixEntries to preprocess + entries (list[PourbaixEntry]): PourbaixEntries to preprocess into MultiEntries nproc (int): number of processes to be used in parallel treatment of entry combos @@ -605,23 +629,23 @@ def _preprocess_pourbaix_entries(self, entries, nproc=None): min_entries, valid_facets = self._get_hull_in_nph_nphi_space(entries) - combos = [] + combos: list[list[frozenset]] = [] for facet in valid_facets: for idx in range(1, self.dim + 2): - these_combos = [] + these_combos: list[frozenset] = [] for combo in itertools.combinations(facet, idx): these_entries = [min_entries[i] for i in combo] these_combos.append(frozenset(these_entries)) combos.append(these_combos) - all_combos = set(itertools.chain.from_iterable(combos)) + all_combos: set | list = set(itertools.chain.from_iterable(combos)) - list_combos = [] - for idx in all_combos: - list_combos.append(list(idx)) + list_combos: list = [] + for combo in all_combos: + list_combos.append(list(combo)) all_combos = list_combos - multi_entries = [] + multi_entries: list = [] # Parallel processing of multi-entry generation if nproc is not None: @@ -637,7 +661,11 @@ def _preprocess_pourbaix_entries(self, entries, nproc=None): return multi_entries - def _generate_multielement_entries(self, entries, nproc=None): + def _generate_multielement_entries( + self, + entries: list[PourbaixEntry], + nproc: int | None = None, + ) -> list[MultiEntry]: """ Create entries for multi-element Pourbaix construction. @@ -655,13 +683,13 @@ def _generate_multielement_entries(self, entries, nproc=None): total_comp = Composition(self._elt_comp) # generate all combinations of compounds that have all elements - entry_combos = [itertools.combinations(entries, idx + 1) for idx in range(n_elems)] - entry_combos = itertools.chain.from_iterable(entry_combos) + entry_combos: list = [itertools.combinations(entries, idx + 1) for idx in range(n_elems)] + entry_combos = list(itertools.chain.from_iterable(entry_combos)) - entry_combos = filter(lambda x: total_comp < MultiEntry(x).composition, entry_combos) + entry_combos = list(filter(lambda x: total_comp < MultiEntry(x).composition, entry_combos)) # Generate and filter entries - processed_entries = [] + processed_entries: list = [] total = sum(comb(len(entries), idx + 1) for idx in range(n_elems)) if total > 1e6: warnings.warn( @@ -676,15 +704,17 @@ def _generate_multielement_entries(self, entries, nproc=None): processed_entries = list(filter(bool, processed_entries)) # Serial processing of multi-entry generation else: - for entry_combo in entry_combos: - processed_entry = self.process_multientry(entry_combo, total_comp) + for combo in entry_combos: + processed_entry = self.process_multientry(combo, total_comp) if processed_entry is not None: processed_entries.append(processed_entry) return processed_entries @staticmethod - def process_multientry(entry_list, prod_comp, coeff_threshold=1e-4): + def process_multientry( + entry_list: Sequence, prod_comp: Composition, coeff_threshold: float = 1e-4 + ) -> MultiEntry | None: """Static method for finding a multientry based on a list of entries and a product composition. Essentially checks to see if a valid aqueous @@ -693,7 +723,7 @@ def process_multientry(entry_list, prod_comp, coeff_threshold=1e-4): with weights according to the coefficients if so. Args: - entry_list ([Entry]): list of entries from which to + entry_list (Sequence[Entry]): Entries from which to create a MultiEntry prod_comp (Composition): composition constraint for setting weights of MultiEntry @@ -722,7 +752,10 @@ def process_multientry(entry_list, prod_comp, coeff_threshold=1e-4): return None @staticmethod - def get_pourbaix_domains(pourbaix_entries, limits=None): + def get_pourbaix_domains( + pourbaix_entries: list[PourbaixEntry], + limits: list[list[float]] | None = None, + ) -> tuple[dict, dict]: """Get a set of Pourbaix stable domains (i.e. polygons) in pH-V space from a list of pourbaix_entries. @@ -736,25 +769,27 @@ def get_pourbaix_domains(pourbaix_entries, limits=None): points. Args: - pourbaix_entries ([PourbaixEntry]): Pourbaix entries + pourbaix_entries (list[PourbaixEntry]): Pourbaix entries with which to construct stable Pourbaix domains - limits ([[float]]): limits in which to do the pourbaix + limits (list[list[float]]): limits in which to do the pourbaix analysis Returns: - Returns a dict of the form {entry: [boundary_points]}. - The list of boundary points are the sides of the N-1 - dim polytope bounding the allowable ph-V range of each entry. + tuple[dict[PourbaixEntry, list], dict[PourbaixEntry, NDArray]: + The first dict is of form: {entry: [boundary_points]}. + The list of boundary points are the sides of the N-1 + dim polytope bounding the allowable ph-V range of each entry. """ if limits is None: limits = [[-2, 16], [-4, 4]] # Get hyperplanes - hyperplanes = [ - np.array([-PREFAC * entry.npH, -entry.nPhi, 0, -entry.energy]) * entry.normalization_factor - for entry in pourbaix_entries - ] - hyperplanes = np.array(hyperplanes) + hyperplanes = np.array( + [ + np.array([-PREFAC * entry.npH, -entry.nPhi, 0, -entry.energy]) * entry.normalization_factor + for entry in pourbaix_entries + ] + ) hyperplanes[:, 2] = 1 max_contribs = np.max(np.abs(hyperplanes), axis=0) @@ -773,7 +808,7 @@ def get_pourbaix_domains(pourbaix_entries, limits=None): hs_int = HalfspaceIntersection(hs_hyperplanes, np.array(interior_point)) # organize the boundary points by entry - pourbaix_domains = {entry: [] for entry in pourbaix_entries} + pourbaix_domains: dict[PourbaixEntry, list] = {entry: [] for entry in pourbaix_entries} for intersection, facet in zip(hs_int.intersections, hs_int.dual_facets, strict=True): for v in facet: if v < len(pourbaix_entries): @@ -782,18 +817,21 @@ def get_pourbaix_domains(pourbaix_entries, limits=None): # Remove entries with no Pourbaix region pourbaix_domains = {k: v for k, v in pourbaix_domains.items() if v} - pourbaix_domain_vertices = {} + pourbaix_domain_vertices: dict[PourbaixEntry, NDArray[float]] = {} for entry, points in pourbaix_domains.items(): points = np.array(points)[:, :2] # Initial sort to ensure consistency points = points[np.lexsort(np.transpose(points))] - center = np.mean(points, axis=0) - points_centered = points - center + center: NDArray[float] = np.mean(points, axis=0) + points_centered: NDArray[float] = points - center # Sort points by cross product of centered points, # isn't strictly necessary but useful for plotting tools - points_centered = sorted(points_centered, key=cmp_to_key(lambda x, y: x[0] * y[1] - x[1] * y[0])) + points_centered = sorted( + points_centered, + key=cmp_to_key(lambda x, y: x[0] * y[1] - x[1] * y[0]), # type: ignore[index] + ) points = points_centered + center # Create simplices corresponding to Pourbaix boundary @@ -803,7 +841,7 @@ def get_pourbaix_domains(pourbaix_entries, limits=None): return pourbaix_domains, pourbaix_domain_vertices - def find_stable_entry(self, pH, V): + def find_stable_entry(self, pH: float, V: float) -> PourbaixEntry: """Find stable entry at a pH,V condition. Args: @@ -816,15 +854,20 @@ def find_stable_entry(self, pH, V): energies_at_conditions = [entry.normalized_energy_at_conditions(pH, V) for entry in self.stable_entries] return self.stable_entries[np.argmin(energies_at_conditions)] - def get_decomposition_energy(self, entry, pH, V): + def get_decomposition_energy( + self, + entry: PourbaixEntry, + pH: float, + V: float, + ) -> NDArray: """Find decomposition to most stable entries in eV/atom, supports vectorized inputs for pH and V. Args: entry (PourbaixEntry): PourbaixEntry corresponding to compound to find the decomposition for - pH (float, list[float]): pH at which to find the decomposition - V (float, list[float]): voltage at which to find the decomposition + pH (float): pH at which to find the decomposition + V (float): voltage at which to find the decomposition Returns: Decomposition energy for the entry, i.e. the energy above @@ -833,7 +876,7 @@ def get_decomposition_energy(self, entry, pH, V): # Check composition consistency between entry and Pourbaix diagram: pbx_comp = Composition(self._elt_comp).fractional_composition entry_pbx_comp = Composition( - {elt: coeff for elt, coeff in entry.composition.items() if elt not in ELEMENTS_HO} + {elt: coeff for elt, coeff in entry.composition.items() if elt not in self.elements_ho} ).fractional_composition if entry_pbx_comp != pbx_comp: raise ValueError("Composition of stability entry does not match Pourbaix Diagram") @@ -846,7 +889,7 @@ def get_decomposition_energy(self, entry, pH, V): decomposition_energy /= entry.composition.num_atoms return decomposition_energy - def get_hull_energy(self, pH: float | list[float], V: float | list[float]) -> np.ndarray: + def get_hull_energy(self, pH: float | list[float], V: float | list[float]) -> NDArray: """Get the minimum energy of the Pourbaix "basin" that is formed from the stable Pourbaix planes. Vectorized. @@ -860,7 +903,7 @@ def get_hull_energy(self, pH: float | list[float], V: float | list[float]) -> np all_gs = np.array([entry.normalized_energy_at_conditions(pH, V) for entry in self.stable_entries]) return np.min(all_gs, axis=0) - def get_stable_entry(self, pH, V): + def get_stable_entry(self, pH: float, V: float) -> PourbaixEntry | MultiEntry: """Get the stable entry at a given pH, V condition. Args: @@ -875,26 +918,26 @@ def get_stable_entry(self, pH, V): return self.stable_entries[np.argmin(all_gs)] @property - def stable_entries(self): + def stable_entries(self) -> list: """The stable entries in the Pourbaix diagram.""" return list(self._stable_domains) @property - def unstable_entries(self): + def unstable_entries(self) -> list: """All unstable entries in the Pourbaix diagram.""" return [entry for entry in self.all_entries if entry not in self.stable_entries] @property - def all_entries(self): + def all_entries(self) -> list: """All entries used to generate the Pourbaix diagram.""" return self._processed_entries @property - def unprocessed_entries(self): + def unprocessed_entries(self) -> list: """Unprocessed entries.""" return self._unprocessed_entries - def as_dict(self): + def as_dict(self) -> dict[str, Any]: """Get MSONable dict.""" return { "@module": type(self).__module__, @@ -926,14 +969,33 @@ def from_dict(cls, dct: dict) -> Self: class PourbaixPlotter: """A plotter class for phase diagrams.""" - def __init__(self, pourbaix_diagram): + def __init__(self, pourbaix_diagram: PourbaixDiagram) -> None: """ Args: pourbaix_diagram (PourbaixDiagram): A PourbaixDiagram object. """ self._pbx = pourbaix_diagram - def show(self, *args, **kwargs): + @staticmethod + def _generate_entry_label(entry: PourbaixEntry | MultiEntry) -> str: + """ + Generates a label for the Pourbaix plotter. + + Args: + entry (PourbaixEntry or MultiEntry): entry to get a label for + """ + if isinstance(entry, MultiEntry): + return " + ".join(entry.name for entry in entry.entry_list) + + # TODO - a more elegant solution could be added later to Stringify + # for example, the pattern re.sub(r"([-+][\d\.]*)", r"$^{\1}$", ) + # will convert B(OH)4- to B(OH)$_4^-$. + # for this to work, the ion's charge always must be written AFTER + # the sign (e.g., Fe+2 not Fe2+) + string = entry.to_latex_string() + return re.sub(r"()\[([^)]*)\]", r"\1$^{\2}$", string) + + def show(self, *args, **kwargs) -> None: """Show the Pourbaix plot. Args: @@ -1003,7 +1065,7 @@ def get_pourbaix_plot( if label_domains: ax.annotate( - generate_entry_label(entry), + self._generate_entry_label(entry), center, ha="center", va="center", @@ -1032,12 +1094,12 @@ def plot_entry_stability( Args: entry (Any): The entry to plot stability for. - pH_range (tuple[float, float], optional): pH range for the plot. Defaults to (-2, 16). - pH_resolution (int, optional): pH resolution. Defaults to 100. - V_range (tuple[float, float], optional): Voltage range for the plot. Defaults to (-3, 3). - V_resolution (int, optional): Voltage resolution. Defaults to 100. - e_hull_max (float, optional): Maximum energy above the hull. Defaults to 1. - cmap (str, optional): Colormap for the plot. Defaults to "RdYlBu_r". + pH_range (tuple[float, float]): pH range for the plot. Defaults to (-2, 16). + pH_resolution (int): pH resolution. Defaults to 100. + V_range (tuple[float, float]): Voltage range for the plot. Defaults to (-3, 3). + V_resolution (int): Voltage resolution. Defaults to 100. + e_hull_max (float): Maximum energy above the hull. Defaults to 1. + cmap (str): Colormap for the plot. Defaults to "RdYlBu_r". ax (Axes, optional): Existing matplotlib Axes object for plotting. Defaults to None. **kwargs (Any): Additional keyword arguments passed to `get_pourbaix_plot`. @@ -1056,7 +1118,7 @@ def plot_entry_stability( # Plot stability map cax = ax.pcolor(pH, V, stability, cmap=cmap, vmin=0, vmax=e_hull_max) cbar = ax.figure.colorbar(cax) - cbar.set_label(f"Stability of {generate_entry_label(entry)} (eV/atom)") + cbar.set_label(f"Stability of {self._generate_entry_label(entry)} (eV/atom)") # Set ticklabels # ticklabels = [t.get_text() for t in cbar.ax.get_yticklabels()] @@ -1065,7 +1127,7 @@ def plot_entry_stability( return ax - def domain_vertices(self, entry): + def domain_vertices(self, entry) -> list: """Get the vertices of the Pourbaix domain. Args: @@ -1075,22 +1137,3 @@ def domain_vertices(self, entry): list of vertices """ return self._pbx._stable_domain_vertices[entry] - - -def generate_entry_label(entry): - """ - Generates a label for the Pourbaix plotter. - - Args: - entry (PourbaixEntry or MultiEntry): entry to get a label for - """ - if isinstance(entry, MultiEntry): - return " + ".join(entry.name for entry in entry.entry_list) - - # TODO - a more elegant solution could be added later to Stringify - # for example, the pattern re.sub(r"([-+][\d\.]*)", r"$^{\1}$", ) - # will convert B(OH)4- to B(OH)$_4^-$. - # for this to work, the ion's charge always must be written AFTER - # the sign (e.g., Fe+2 not Fe2+) - string = entry.to_latex_string() - return re.sub(r"()\[([^)]*)\]", r"\1$^{\2}$", string) diff --git a/tests/analysis/test_pourbaix_diagram.py b/tests/analysis/test_pourbaix_diagram.py index 22066499257..30150f32aa6 100644 --- a/tests/analysis/test_pourbaix_diagram.py +++ b/tests/analysis/test_pourbaix_diagram.py @@ -8,7 +8,14 @@ from monty.serialization import dumpfn, loadfn from pytest import approx -from pymatgen.analysis.pourbaix_diagram import IonEntry, MultiEntry, PourbaixDiagram, PourbaixEntry, PourbaixPlotter +from pymatgen.analysis.pourbaix_diagram import ( + IonEntry, + MultiEntry, + PourbaixDiagram, + PourbaixEntry, + PourbaixPlotter, + ion_or_solid_comp_object, +) from pymatgen.core.composition import Composition from pymatgen.core.ion import Ion from pymatgen.entries.computed_entries import ComputedEntry @@ -315,3 +322,34 @@ def test_plot_entry_stability(self): binary_plotter = PourbaixPlotter(pd_binary) ax = binary_plotter.plot_entry_stability(self.test_data["Ag-Te"][53]) assert isinstance(ax, plt.Axes) + + +class TestIonOrSolidCompObject: + def test_ion(self): + # Test cations + assert ion_or_solid_comp_object("Li+").charge == 1 + assert ion_or_solid_comp_object("Li[+]").charge == 1 + assert ion_or_solid_comp_object("Ca[2+]").charge == 2 + assert ion_or_solid_comp_object("Ca[+2]").charge == 2 + assert ion_or_solid_comp_object("Ca++").charge == 2 + assert ion_or_solid_comp_object("Ca[++]").charge == 2 + assert ion_or_solid_comp_object("Ca2+").charge == 1 + assert ion_or_solid_comp_object("C2O4-2").charge == -2 + + # Test anions + assert ion_or_solid_comp_object("Cl-").charge == -1 + assert ion_or_solid_comp_object("Cl[-]").charge == -1 + assert ion_or_solid_comp_object("SO4[-2]").charge == -2 + assert ion_or_solid_comp_object("SO4-2").charge == -2 + assert ion_or_solid_comp_object("SO42-").charge == -1 + assert ion_or_solid_comp_object("SO4--").charge == -2 + assert ion_or_solid_comp_object("SO4[--]").charge == -2 + assert ion_or_solid_comp_object("N3-").charge == -1 + + def test_solid(self): + # Test end with "(s)" + assert ion_or_solid_comp_object("Fe2O3(s)") == Composition("Fe2O3") + assert ion_or_solid_comp_object("Fe(s)") == Composition("Fe1") + + # Test end without "(s)" + assert type(ion_or_solid_comp_object("Na2O")) is Composition From 30dc805698e36465e85f5eaa86c8287d4d8ea1b0 Mon Sep 17 00:00:00 2001 From: Shyue Ping Ong Date: Thu, 9 Jan 2025 08:46:28 -0800 Subject: [PATCH 14/24] Fix linting. --- pyproject.toml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index 3f0e090ec1f..e9e50787f93 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -243,6 +243,8 @@ docstring-code-format = true "src/pymatgen/io/*" = ["D"] "dev_scripts/*" = ["D"] "src/pymatgen/util/string.py" = ["A005"] +"src/pymatgen/util/typing.py" = ["A005"] +"src/pymatgen/util/io.py" = ["A005"] [tool.pytest.ini_options] addopts = "--durations=30 --quiet -r xXs --color=yes --import-mode=importlib" From fb1ca912863df45814916efed1db805c05cc797c Mon Sep 17 00:00:00 2001 From: Shyue Ping Ong Date: Thu, 9 Jan 2025 10:10:33 -0800 Subject: [PATCH 15/24] REformat using latest ruff. --- .../multi_weights_strategy_parameters.py | 2 +- dev_scripts/chemenv/view_environment.py | 3 +- .../connectivity/connected_components.py | 3 +- .../coordination_geometry_finder.py | 3 +- .../structure_environments.py | 4 +- .../coordination_environments/voronoi.py | 2 +- .../analysis/chemenv/utils/chemenv_config.py | 2 +- .../utils/coordination_geometry_utils.py | 2 +- .../analysis/chemenv/utils/graph_utils.py | 5 +- .../analysis/chemenv/utils/scripts_utils.py | 5 +- src/pymatgen/analysis/graphs.py | 6 +- src/pymatgen/analysis/interface_reactions.py | 3 +- src/pymatgen/analysis/magnetism/heisenberg.py | 3 +- src/pymatgen/analysis/pourbaix_diagram.py | 3 +- src/pymatgen/analysis/thermochemistry.py | 3 +- src/pymatgen/command_line/critic2_caller.py | 2 +- src/pymatgen/core/composition.py | 4 +- src/pymatgen/core/trajectory.py | 4 +- src/pymatgen/ext/optimade.py | 2 +- src/pymatgen/io/abinit/variable.py | 2 +- src/pymatgen/io/aims/inputs.py | 4 +- src/pymatgen/io/aims/parsers.py | 5 +- src/pymatgen/io/vasp/outputs.py | 4 +- src/pymatgen/io/xr.py | 2 +- src/pymatgen/phonon/thermal_displacements.py | 3 +- .../advanced_transformations.py | 3 +- src/pymatgen/util/string.py | 2 +- src/pymatgen/vis/structure_vtk.py | 3 +- .../test_coordination_geometry_finder.py | 6 +- tests/analysis/test_interface_reactions.py | 60 +++++++++---------- tests/analysis/test_phase_diagram.py | 60 +++++++++---------- tests/analysis/test_pourbaix_diagram.py | 6 +- tests/analysis/test_quasirrho.py | 6 +- tests/analysis/test_structure_analyzer.py | 6 +- tests/core/test_composition.py | 6 +- tests/core/test_ion.py | 6 +- tests/core/test_sites.py | 6 +- tests/core/test_trajectory.py | 18 +++--- .../test_bandstructure.py | 12 ++-- tests/electronic_structure/test_plotter.py | 6 +- tests/ext/test_optimade.py | 6 +- tests/io/feff/test_inputs.py | 6 +- tests/io/feff/test_outputs.py | 12 ++-- tests/io/lammps/test_data.py | 6 +- tests/symmetry/test_analyzer.py | 6 +- tests/util/test_provenance.py | 6 +- 46 files changed, 153 insertions(+), 176 deletions(-) diff --git a/dev_scripts/chemenv/strategies/multi_weights_strategy_parameters.py b/dev_scripts/chemenv/strategies/multi_weights_strategy_parameters.py index c14b5f9709d..6e1aa545e80 100644 --- a/dev_scripts/chemenv/strategies/multi_weights_strategy_parameters.py +++ b/dev_scripts/chemenv/strategies/multi_weights_strategy_parameters.py @@ -171,7 +171,7 @@ def get_structure(self, morphing_factor): for morphing in self.morphing_description: if morphing["site_type"] != "neighbor": - raise ValueError(f"Key \"site_type\" is {morphing['site_type']} while it can only be neighbor") + raise ValueError(f'Key "site_type" is {morphing["site_type"]} while it can only be neighbor') site_idx = morphing["ineighbor"] + 1 if morphing["expansion_origin"] == "central_site": diff --git a/dev_scripts/chemenv/view_environment.py b/dev_scripts/chemenv/view_environment.py index f8eae1e02a6..e3a080b0eaf 100644 --- a/dev_scripts/chemenv/view_environment.py +++ b/dev_scripts/chemenv/view_environment.py @@ -29,8 +29,7 @@ vis = None while True: cg_symbol = input( - 'Enter symbol of the geometry you want to see, "l" to see the list ' - 'of existing geometries or "q" to quit : ' + 'Enter symbol of the geometry you want to see, "l" to see the list of existing geometries or "q" to quit : ' ) if cg_symbol == "q": break diff --git a/src/pymatgen/analysis/chemenv/connectivity/connected_components.py b/src/pymatgen/analysis/chemenv/connectivity/connected_components.py index a1c7dd147e1..1beaf8693ca 100644 --- a/src/pymatgen/analysis/chemenv/connectivity/connected_components.py +++ b/src/pymatgen/analysis/chemenv/connectivity/connected_components.py @@ -714,8 +714,7 @@ def elastic_centered_graph(self, start_node=None): nbunch=[node_neighbor], data=True, keys=True ) logging.debug( - f" Delta image from {node=} to {node_neighbor=} : " - f"({', '.join(map(str, d_delta))})" + f" Delta image from {node=} to {node_neighbor=} : ({', '.join(map(str, d_delta))})" ) # Loop on the edges of this neighbor for n1, n2, key, edata in node_neighbor_edges: diff --git a/src/pymatgen/analysis/chemenv/coordination_environments/coordination_geometry_finder.py b/src/pymatgen/analysis/chemenv/coordination_environments/coordination_geometry_finder.py index 86c5d0f118a..976f0b872c6 100644 --- a/src/pymatgen/analysis/chemenv/coordination_environments/coordination_geometry_finder.py +++ b/src/pymatgen/analysis/chemenv/coordination_environments/coordination_geometry_finder.py @@ -189,8 +189,7 @@ def __str__(self): ) else: outs.append( - "Points are referenced to the centroid (calculated without the central site)" - f" :\n {self.centre}\n" + f"Points are referenced to the centroid (calculated without the central site) :\n {self.centre}\n" ) return "\n".join(outs) diff --git a/src/pymatgen/analysis/chemenv/coordination_environments/structure_environments.py b/src/pymatgen/analysis/chemenv/coordination_environments/structure_environments.py index b42bc3d58a2..5d3dafd50ff 100644 --- a/src/pymatgen/analysis/chemenv/coordination_environments/structure_environments.py +++ b/src/pymatgen/analysis/chemenv/coordination_environments/structure_environments.py @@ -854,7 +854,7 @@ def dp_func(dp): return dp else: - raise ValueError(f"Wrong value for distance parameter plot type \"{plot_type['distance_parameter'][0]}\"") + raise ValueError(f'Wrong value for distance parameter plot type "{plot_type["distance_parameter"][0]}"') if plot_type["angle_parameter"][0] == "one_minus_gamma": ylabel = "Angle parameter : $1.0-\\gamma$" @@ -872,7 +872,7 @@ def ap_func(ap): return ap else: - raise ValueError(f"Wrong value for angle parameter plot type \"{plot_type['angle_parameter'][0]}\"") + raise ValueError(f'Wrong value for angle parameter plot type "{plot_type["angle_parameter"][0]}"') dist_limits = [dp_func(dp) for dp in dist_limits] ang_limits = [ap_func(ap) for ap in ang_limits] diff --git a/src/pymatgen/analysis/chemenv/coordination_environments/voronoi.py b/src/pymatgen/analysis/chemenv/coordination_environments/voronoi.py index d9100ec4e86..82f56ccd7bf 100644 --- a/src/pymatgen/analysis/chemenv/coordination_environments/voronoi.py +++ b/src/pymatgen/analysis/chemenv/coordination_environments/voronoi.py @@ -463,7 +463,7 @@ def neighbors_surfaces_bounded(self, isite, surface_calculation_options=None): } else: raise ValueError( - f'Type {surface_calculation_options["type"]!r} for the surface calculation in DetailedVoronoiContainer ' + f"Type {surface_calculation_options['type']!r} for the surface calculation in DetailedVoronoiContainer " "is invalid" ) max_dist = surface_calculation_options["distance_bounds"]["upper"] + 0.1 diff --git a/src/pymatgen/analysis/chemenv/utils/chemenv_config.py b/src/pymatgen/analysis/chemenv/utils/chemenv_config.py index ae75a351d3d..90615c9b66f 100644 --- a/src/pymatgen/analysis/chemenv/utils/chemenv_config.py +++ b/src/pymatgen/analysis/chemenv/utils/chemenv_config.py @@ -127,7 +127,7 @@ def package_options_description(self): """Describe package options.""" out = "Package options :\n" out += f" - Maximum distance factor : {self.package_options['default_max_distance_factor']:.4f}\n" - out += f" - Default strategy is \"{self.package_options['default_strategy']['strategy']}\" :\n" + out += f' - Default strategy is "{self.package_options["default_strategy"]["strategy"]}" :\n' strategy_class = strategies_class_lookup[self.package_options["default_strategy"]["strategy"]] out += f"{strategy_class.STRATEGY_DESCRIPTION}\n" out += " with options :\n" diff --git a/src/pymatgen/analysis/chemenv/utils/coordination_geometry_utils.py b/src/pymatgen/analysis/chemenv/utils/coordination_geometry_utils.py index e9ab8ea97d5..2cd830e29ac 100644 --- a/src/pymatgen/analysis/chemenv/utils/coordination_geometry_utils.py +++ b/src/pymatgen/analysis/chemenv/utils/coordination_geometry_utils.py @@ -57,7 +57,7 @@ def get_lower_and_upper_f(surface_calculation_options): lower_points=lower_points, upper_points=upper_points, degree=degree ) else: - raise ValueError(f"Surface calculation of type \"{surface_calculation_options['type']}\" is not implemented") + raise ValueError(f'Surface calculation of type "{surface_calculation_options["type"]}" is not implemented') return lower_and_upper_functions diff --git a/src/pymatgen/analysis/chemenv/utils/graph_utils.py b/src/pymatgen/analysis/chemenv/utils/graph_utils.py index 1dca61ff3e0..3d00e16f50f 100644 --- a/src/pymatgen/analysis/chemenv/utils/graph_utils.py +++ b/src/pymatgen/analysis/chemenv/utils/graph_utils.py @@ -120,10 +120,7 @@ def _c2index_isreverse(c1, c2): elif c2_1_index == c2_0_index - 1: reverse = True else: - msg = ( - "Second node of cycle c1 in cycle c2 is not just after or " - "just before first node of cycle c1 in cycle c2." - ) + msg = "Second node of cycle c1 in cycle c2 is not just after or just before first node of cycle c1 in cycle c2." return None, None, msg return c2_0_index, reverse, "" diff --git a/src/pymatgen/analysis/chemenv/utils/scripts_utils.py b/src/pymatgen/analysis/chemenv/utils/scripts_utils.py index 428618a8e69..1f4d5c1aefe 100644 --- a/src/pymatgen/analysis/chemenv/utils/scripts_utils.py +++ b/src/pymatgen/analysis/chemenv/utils/scripts_utils.py @@ -293,10 +293,7 @@ def compute_environments(chemenv_configuration): if ce is None: continue the_cg = all_cg.get_geometry_from_mp_symbol(ce[0]) - msg = ( - f"Environment for site #{site_idx} {reduced_formula}" - f" ({comp}) : {the_cg.name} ({ce[0]})\n" - ) + msg = f"Environment for site #{site_idx} {reduced_formula} ({comp}) : {the_cg.name} ({ce[0]})\n" else: msg = f"Environments for site #{site_idx} {reduced_formula} ({comp}) : \n" for ce in ces: diff --git a/src/pymatgen/analysis/graphs.py b/src/pymatgen/analysis/graphs.py index b79fc427f8c..aeff8ae9927 100644 --- a/src/pymatgen/analysis/graphs.py +++ b/src/pymatgen/analysis/graphs.py @@ -631,8 +631,7 @@ def break_edge( self.graph.remove_edge(to_index, from_index, edge_index) else: raise ValueError( - f"Edge cannot be broken between {from_index} and {to_index}; " - f"no edge exists between those sites." + f"Edge cannot be broken between {from_index} and {to_index}; no edge exists between those sites." ) def remove_nodes(self, indices: Sequence[int | None]) -> None: @@ -1976,8 +1975,7 @@ def break_edge(self, from_index, to_index, allow_reverse=False): self.graph.remove_edge(to_index, from_index) else: raise ValueError( - f"Edge cannot be broken between {from_index} and {to_index}; " - f"no edge exists between those sites." + f"Edge cannot be broken between {from_index} and {to_index}; no edge exists between those sites." ) def remove_nodes(self, indices: list[int]) -> None: diff --git a/src/pymatgen/analysis/interface_reactions.py b/src/pymatgen/analysis/interface_reactions.py index c8cf44ebe52..bd612580fb8 100644 --- a/src/pymatgen/analysis/interface_reactions.py +++ b/src/pymatgen/analysis/interface_reactions.py @@ -93,8 +93,7 @@ def __init__( if isinstance(pd, GrandPotentialPhaseDiagram) and not bypass_grand_warning: raise TypeError( - "Please use the GrandPotentialInterfacialReactivity " - "class for interfacial reactions with open elements!" + "Please use the GrandPotentialInterfacialReactivity class for interfacial reactions with open elements!" ) self.c1 = c1 diff --git a/src/pymatgen/analysis/magnetism/heisenberg.py b/src/pymatgen/analysis/magnetism/heisenberg.py index 9fa38130d3f..f94ef0968d7 100644 --- a/src/pymatgen/analysis/magnetism/heisenberg.py +++ b/src/pymatgen/analysis/magnetism/heisenberg.py @@ -523,8 +523,7 @@ def get_mft_temperature(self, j_avg): if mft_t > 1500: # Not sensible! logging.warning( - "This mean field estimate is too high! Probably " - "the true low energy orderings were not given as inputs." + "This mean field estimate is too high! Probably the true low energy orderings were not given as inputs." ) return mft_t diff --git a/src/pymatgen/analysis/pourbaix_diagram.py b/src/pymatgen/analysis/pourbaix_diagram.py index 15c9a407f20..3a569232cc0 100644 --- a/src/pymatgen/analysis/pourbaix_diagram.py +++ b/src/pymatgen/analysis/pourbaix_diagram.py @@ -128,8 +128,7 @@ def __repr__(self) -> str: self.entry_id, ) return ( - f"{type(self).__name__}({self.entry.composition} with {energy=:.4f}, {npH=}, " - f"{nPhi=}, {nH2O=}, {entry_id=})" + f"{type(self).__name__}({self.entry.composition} with {energy=:.4f}, {npH=}, {nPhi=}, {nH2O=}, {entry_id=})" ) @property diff --git a/src/pymatgen/analysis/thermochemistry.py b/src/pymatgen/analysis/thermochemistry.py index 4ee5eb521a7..aaae4bec832 100644 --- a/src/pymatgen/analysis/thermochemistry.py +++ b/src/pymatgen/analysis/thermochemistry.py @@ -120,6 +120,5 @@ def __repr__(self): def __str__(self): return ( - f"{self.type}_{self.formula}_{self.phaseinfo} = {self.value}, Valid T : {self.temp_range}, " - f"Ref = {self.ref}" + f"{self.type}_{self.formula}_{self.phaseinfo} = {self.value}, Valid T : {self.temp_range}, Ref = {self.ref}" ) diff --git a/src/pymatgen/command_line/critic2_caller.py b/src/pymatgen/command_line/critic2_caller.py index 2e57258300b..e94d1d2c092 100644 --- a/src/pymatgen/command_line/critic2_caller.py +++ b/src/pymatgen/command_line/critic2_caller.py @@ -701,7 +701,7 @@ def _remap_indices(self): if len(node_mapping) != len(self.structure): warnings.warn( f"Check that all sites in input structure ({len(self.structure)}) have " - f"been detected by critic2 ({ len(node_mapping)}).", + f"been detected by critic2 ({len(node_mapping)}).", stacklevel=2, ) diff --git a/src/pymatgen/core/composition.py b/src/pymatgen/core/composition.py index 71acd2d574a..02491f6926d 100644 --- a/src/pymatgen/core/composition.py +++ b/src/pymatgen/core/composition.py @@ -364,7 +364,7 @@ def formula(self) -> str: """ sym_amt = self.get_el_amt_dict() syms = sorted(sym_amt, key=lambda sym: get_el_sp(sym).X) - formula = [f"{s}{formula_double_format(sym_amt[s], ignore_ones= False)}" for s in syms] + formula = [f"{s}{formula_double_format(sym_amt[s], ignore_ones=False)}" for s in syms] return " ".join(formula) @property @@ -386,7 +386,7 @@ def iupac_formula(self) -> str: """ sym_amt = self.get_el_amt_dict() syms = sorted(sym_amt, key=lambda s: get_el_sp(s).iupac_ordering) - formula = [f"{s}{formula_double_format(sym_amt[s], ignore_ones= False)}" for s in syms] + formula = [f"{s}{formula_double_format(sym_amt[s], ignore_ones=False)}" for s in syms] return " ".join(formula) @property diff --git a/src/pymatgen/core/trajectory.py b/src/pymatgen/core/trajectory.py index 3e4d702998d..c27bf682a8d 100644 --- a/src/pymatgen/core/trajectory.py +++ b/src/pymatgen/core/trajectory.py @@ -455,14 +455,14 @@ def write_Xdatcar( _lattice = self.lattice if self.constant_lattice else self.lattice[idx] for latt_vec in _lattice: - lines.append(f'{" ".join(map(str, latt_vec))}') + lines.append(f"{' '.join(map(str, latt_vec))}") lines.extend((" ".join(site_symbols), " ".join(map(str, n_atoms)))) lines.append(f"Direct configuration= {idx + 1}") for coord, specie in zip(coords, self.species, strict=True): - line = f'{" ".join(format_str.format(c) for c in coord)} {specie}' + line = f"{' '.join(format_str.format(c) for c in coord)} {specie}" lines.append(line) xdatcar_str = "\n".join(lines) + "\n" diff --git a/src/pymatgen/ext/optimade.py b/src/pymatgen/ext/optimade.py index 2b25e42587d..2ee4d920767 100644 --- a/src/pymatgen/ext/optimade.py +++ b/src/pymatgen/ext/optimade.py @@ -473,7 +473,7 @@ def _get_comp(sp_dict): exceptions.add(str(exc)) if exceptions: - _logger.error(f'Failed to parse returned data for {url}: {", ".join(exceptions)}') + _logger.error(f"Failed to parse returned data for {url}: {', '.join(exceptions)}") return snls diff --git a/src/pymatgen/io/abinit/variable.py b/src/pymatgen/io/abinit/variable.py index 9a2052214eb..432ebc45660 100644 --- a/src/pymatgen/io/abinit/variable.py +++ b/src/pymatgen/io/abinit/variable.py @@ -175,7 +175,7 @@ def format_list2d(values, float_decimal=0): line = "\n" for lst in values: for val in lst: - line += f" {val:{{fmt_spec}}}" + line += f" {val:{ {fmt_spec} }}" line += "\n" return line.rstrip("\n") diff --git a/src/pymatgen/io/aims/inputs.py b/src/pymatgen/io/aims/inputs.py index 6f370aeae21..48735e9d156 100644 --- a/src/pymatgen/io/aims/inputs.py +++ b/src/pymatgen/io/aims/inputs.py @@ -198,11 +198,11 @@ def get_header(self, filename: str) -> str: """ return textwrap.dedent( f"""\ - #{'=' * 72} + #{"=" * 72} # FHI-aims geometry file: {filename} # File generated from pymatgen # {time.asctime()} - #{'=' * 72} + #{"=" * 72} """ ) diff --git a/src/pymatgen/io/aims/parsers.py b/src/pymatgen/io/aims/parsers.py index 929e01fc9f6..1880da6055a 100644 --- a/src/pymatgen/io/aims/parsers.py +++ b/src/pymatgen/io/aims/parsers.py @@ -1067,10 +1067,7 @@ def get_aims_out_chunks(content: str | TextIOWrapper, header_chunk: AimsOutHeade # don't end chunk on next Re-initialization patterns = [ ("Self-consistency cycle not yet converged - restarting mixer to attempt better convergence."), - ( - "Components of the stress tensor (for mathematical " - "background see comments in numerical_stress.f90)." - ), + ("Components of the stress tensor (for mathematical background see comments in numerical_stress.f90)."), "Calculation of numerical stress completed", ] if any(pattern in line for pattern in patterns): diff --git a/src/pymatgen/io/vasp/outputs.py b/src/pymatgen/io/vasp/outputs.py index 2bb73cd89ac..3834a27834a 100644 --- a/src/pymatgen/io/vasp/outputs.py +++ b/src/pymatgen/io/vasp/outputs.py @@ -693,9 +693,7 @@ def final_energy(self) -> float: except (IndexError, KeyError): warnings.warn( - "Calculation does not have a total energy. " - "Possibly a GW or similar kind of run. " - "Infinity is returned.", + "Calculation does not have a total energy. Possibly a GW or similar kind of run. Infinity is returned.", stacklevel=2, ) return float("inf") diff --git a/src/pymatgen/io/xr.py b/src/pymatgen/io/xr.py index 834b8d6d797..07e64b5477a 100644 --- a/src/pymatgen/io/xr.py +++ b/src/pymatgen/io/xr.py @@ -55,7 +55,7 @@ def __str__(self): # There are actually 10 more fields per site # in a typical xr file from GULP, for example. for idx, site in enumerate(self.structure, start=1): - output.append(f"{idx } {site.specie} {site.x:.4f} {site.y:.4f} {site.z:.4f}") + output.append(f"{idx} {site.specie} {site.x:.4f} {site.y:.4f} {site.z:.4f}") mat = self.structure.lattice.matrix for _ in range(2): for j in range(3): diff --git a/src/pymatgen/phonon/thermal_displacements.py b/src/pymatgen/phonon/thermal_displacements.py index 800a80429fd..7cb7e793d07 100644 --- a/src/pymatgen/phonon/thermal_displacements.py +++ b/src/pymatgen/phonon/thermal_displacements.py @@ -272,8 +272,7 @@ def compute_directionality_quality_criterion( for spec1, spec2 in zip(self.structure.species, other.structure.species, strict=True): if spec1 != spec2: raise ValueError( - "Species in both structures are not the same! " - "Please use structures that are similar to each other" + "Species in both structures are not the same! Please use structures that are similar to each other" ) # check if structures match structure_match = StructureMatcher() diff --git a/src/pymatgen/transformations/advanced_transformations.py b/src/pymatgen/transformations/advanced_transformations.py index 7ac06f99026..c02a4475e28 100644 --- a/src/pymatgen/transformations/advanced_transformations.py +++ b/src/pymatgen/transformations/advanced_transformations.py @@ -205,8 +205,7 @@ def apply_transformation(self, structure: Structure, return_ranked_list: bool | """ if not return_ranked_list: raise ValueError( - "MultipleSubstitutionTransformation has no single" - " best structure output. Must use return_ranked_list." + "MultipleSubstitutionTransformation has no single best structure output. Must use return_ranked_list." ) outputs = [] for charge, el_list in self.substitution_dict.items(): diff --git a/src/pymatgen/util/string.py b/src/pymatgen/util/string.py index c7e9efafdb3..b763d7ac247 100644 --- a/src/pymatgen/util/string.py +++ b/src/pymatgen/util/string.py @@ -170,7 +170,7 @@ def charge_string(charge: float, brackets: bool = True, explicit_one: bool = Tru explicit_one (bool): whether to include the number one for monovalent ions, e.g. "+1" rather than "+". Default is True. """ - chg_str = "(aq)" if charge == 0 else f"{formula_double_format(charge, ignore_ones= False):+}" + chg_str = "(aq)" if charge == 0 else f"{formula_double_format(charge, ignore_ones=False):+}" if chg_str in ["+1", "-1"] and not explicit_one: chg_str = chg_str.replace("1", "") diff --git a/src/pymatgen/vis/structure_vtk.py b/src/pymatgen/vis/structure_vtk.py index b50bd08222a..414f3a41e95 100644 --- a/src/pymatgen/vis/structure_vtk.py +++ b/src/pymatgen/vis/structure_vtk.py @@ -1216,8 +1216,7 @@ def keyPressEvent(self, obj, event): parent.current_structure = parent.structures[parent.istruct] parent.set_structure(parent.current_structure, reset_camera=False, to_unit_cell=False) parent.display_info( - f"Animated movie : structure {istruct + 1}/{len(parent.structures)} " - f"(loop {iloop + 1}/{nloops})" + f"Animated movie : structure {istruct + 1}/{len(parent.structures)} (loop {iloop + 1}/{nloops})" ) parent.ren_win.Render() time.sleep(tloops) diff --git a/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py b/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py index 01aedf2d245..c88798f89c5 100644 --- a/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py +++ b/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py @@ -214,9 +214,9 @@ def test_perfect_environments(self): max_cn=cg.coordination_number, only_symbols=[mp_symbol], ) - assert ( - abs(se.get_csm(0, mp_symbol)["symmetry_measure"] - 0.0) < 1e-8 - ), f"Failed to get perfect environment with {mp_symbol=}" + assert abs(se.get_csm(0, mp_symbol)["symmetry_measure"] - 0.0) < 1e-8, ( + f"Failed to get perfect environment with {mp_symbol=}" + ) def test_disable_hints(self): allcg = AllCoordinationGeometries() diff --git a/tests/analysis/test_interface_reactions.py b/tests/analysis/test_interface_reactions.py index a402fd34420..f768d58bee3 100644 --- a/tests/analysis/test_interface_reactions.py +++ b/tests/analysis/test_interface_reactions.py @@ -226,12 +226,12 @@ def test_get_energy(self): assert test4, "_get_energy: gets error. " def test_get_reaction(self): - assert ( - str(self.irs[0]._get_reaction(0.5)) == "0.5 Mn + 0.5 O2 -> 0.5 MnO2" - ), "_get_reaction: reaction not involving chempots species gets error!" - assert ( - str(self.irs[3]._get_reaction(0.666666)) == "0.5 Li2O + 0.5 Mn -> Li + 0.25 MnO2 + 0.25 Mn" - ), "_get_reaction: reaction involving chempots species gets error!" + assert str(self.irs[0]._get_reaction(0.5)) == "0.5 Mn + 0.5 O2 -> 0.5 MnO2", ( + "_get_reaction: reaction not involving chempots species gets error!" + ) + assert str(self.irs[3]._get_reaction(0.666666)) == "0.5 Li2O + 0.5 Mn -> Li + 0.25 MnO2 + 0.25 Mn", ( + "_get_reaction: reaction involving chempots species gets error!" + ) def test_get_get_elmt_amt_in_rxt(self): rxt1 = Reaction( @@ -477,45 +477,45 @@ def test_get_chempot_correction(self): # test pressure effect. actual = InterfacialReactivity.get_chempot_correction("O", 298.15, 100e5) expect = 0.05916 - assert np.isclose( - actual, expect, atol=1e-2 - ), f"get_chempot_correction gets error, {expect} expected but gets {actual}" + assert np.isclose(actual, expect, atol=1e-2), ( + f"get_chempot_correction gets error, {expect} expected but gets {actual}" + ) # test temperature effect. actual_2 = InterfacialReactivity.get_chempot_correction("O", 1000, 1e5) expect_2 = -0.82352 - assert np.isclose( - actual_2, expect_2, atol=1e-2 - ), f"get_chempot_correction gets error, {expect_2} expected but gets {actual_2}" + assert np.isclose(actual_2, expect_2, atol=1e-2), ( + f"get_chempot_correction gets error, {expect_2} expected but gets {actual_2}" + ) actual_3 = InterfacialReactivity.get_chempot_correction("O", 500, 1e5) expect_3 = -0.223 - assert np.isclose( - actual_3, expect_3, atol=1e-2 - ), f"get_chempot_correction gets error, {expect_3} expected but gets {actual_3}" + assert np.isclose(actual_3, expect_3, atol=1e-2), ( + f"get_chempot_correction gets error, {expect_3} expected but gets {actual_3}" + ) # test mixed effect. actual_4 = InterfacialReactivity.get_chempot_correction("O", 1000, 1e-25) expect_4 = -3.800 - assert np.isclose( - actual_4, expect_4, atol=1e-2 - ), f"get_chempot_correction gets error, {expect_4} expected but gets {actual_4}" + assert np.isclose(actual_4, expect_4, atol=1e-2), ( + f"get_chempot_correction gets error, {expect_4} expected but gets {actual_4}" + ) actual_5 = InterfacialReactivity.get_chempot_correction("O", 1250, 1e-25) expect_5 = -4.86 - assert np.isclose( - actual_5, expect_5, atol=1e-2 - ), f"get_chempot_correction gets error, {expect_5} expected but gets {actual_5}" + assert np.isclose(actual_5, expect_5, atol=1e-2), ( + f"get_chempot_correction gets error, {expect_5} expected but gets {actual_5}" + ) actual_6 = InterfacialReactivity.get_chempot_correction("O", 1500, 1e-25) expect_6 = -5.928 - assert np.isclose( - actual_6, expect_6, atol=1e-2 - ), f"get_chempot_correction gets error, {expect_6} expected but gets {actual_6}" + assert np.isclose(actual_6, expect_6, atol=1e-2), ( + f"get_chempot_correction gets error, {expect_6} expected but gets {actual_6}" + ) actual_7 = InterfacialReactivity.get_chempot_correction("O", 1000, 1e-15) expect_7 = -2.808 - assert np.isclose( - actual_7, expect_7, atol=1e-2 - ), f"get_chempot_correction gets error, {expect_7} expected but gets {actual_7}" + assert np.isclose(actual_7, expect_7, atol=1e-2), ( + f"get_chempot_correction gets error, {expect_7} expected but gets {actual_7}" + ) # test non-gas phase. actual_8 = InterfacialReactivity.get_chempot_correction("Li", 1000, 1e15) expect_8 = 0 - assert np.isclose( - actual_8, expect_8, atol=1e-5 - ), f"get_chempot_correction gets error, {expect_8} expected but gets {actual_8}" + assert np.isclose(actual_8, expect_8, atol=1e-5), ( + f"get_chempot_correction gets error, {expect_8} expected but gets {actual_8}" + ) diff --git a/tests/analysis/test_phase_diagram.py b/tests/analysis/test_phase_diagram.py index 934ba59fa9d..ef1bc12e840 100644 --- a/tests/analysis/test_phase_diagram.py +++ b/tests/analysis/test_phase_diagram.py @@ -360,18 +360,18 @@ def test_downstream_methods_can_also_ignore_errors(self): def test_get_equilibrium_reaction_energy(self): for entry in self.pd.stable_entries: - assert ( - self.pd.get_equilibrium_reaction_energy(entry) <= 0 - ), "Stable entries should have negative equilibrium reaction energy!" + assert self.pd.get_equilibrium_reaction_energy(entry) <= 0, ( + "Stable entries should have negative equilibrium reaction energy!" + ) def test_get_phase_separation_energy(self): for entry in self.pd.unstable_entries: if entry.composition.fractional_composition not in [ entry.composition.fractional_composition for entry in self.pd.stable_entries ]: - assert ( - self.pd.get_phase_separation_energy(entry) >= 0 - ), "Unstable entries should have positive decomposition energy!" + assert self.pd.get_phase_separation_energy(entry) >= 0, ( + "Unstable entries should have positive decomposition energy!" + ) elif entry.is_element: el_ref = self.pd.el_refs[entry.elements[0]] e_d = entry.energy_per_atom - el_ref.energy_per_atom @@ -381,13 +381,13 @@ def test_get_phase_separation_energy(self): for entry in self.pd.stable_entries: if entry.composition.is_element: - assert ( - self.pd.get_phase_separation_energy(entry) == 0 - ), "Stable elemental entries should have decomposition energy of zero!" + assert self.pd.get_phase_separation_energy(entry) == 0, ( + "Stable elemental entries should have decomposition energy of zero!" + ) else: - assert ( - self.pd.get_phase_separation_energy(entry) <= 0 - ), "Stable entries should have negative decomposition energy!" + assert self.pd.get_phase_separation_energy(entry) <= 0, ( + "Stable entries should have negative decomposition energy!" + ) assert self.pd.get_phase_separation_energy(entry, stable_only=True) == approx( self.pd.get_equilibrium_reaction_energy(entry) ), "Using `stable_only=True` should give decomposition energy equal to equilibrium reaction energy!" @@ -404,14 +404,14 @@ def test_get_phase_separation_energy(self): # Test that the method works for novel entries novel_stable_entry = PDEntry("Li5FeO4", -999) - assert ( - self.pd.get_phase_separation_energy(novel_stable_entry) < 0 - ), "Novel stable entries should have negative decomposition energy!" + assert self.pd.get_phase_separation_energy(novel_stable_entry) < 0, ( + "Novel stable entries should have negative decomposition energy!" + ) novel_unstable_entry = PDEntry("Li5FeO4", 999) - assert ( - self.pd.get_phase_separation_energy(novel_unstable_entry) > 0 - ), "Novel unstable entries should have positive decomposition energy!" + assert self.pd.get_phase_separation_energy(novel_unstable_entry) > 0, ( + "Novel unstable entries should have positive decomposition energy!" + ) duplicate_entry = PDEntry("Li2O", -14.31361175) scaled_dup_entry = PDEntry("Li4O2", -14.31361175 * 2) @@ -427,16 +427,16 @@ def test_get_phase_separation_energy(self): def test_get_decomposition(self): for entry in self.pd.stable_entries: - assert ( - len(self.pd.get_decomposition(entry.composition)) == 1 - ), "Stable composition should have only 1 decomposition!" + assert len(self.pd.get_decomposition(entry.composition)) == 1, ( + "Stable composition should have only 1 decomposition!" + ) dim = len(self.pd.elements) for entry in self.pd.all_entries: n_decomp = len(self.pd.get_decomposition(entry.composition)) assert n_decomp > 0 - assert ( - n_decomp <= dim - ), "The number of decomposition phases can at most be equal to the number of components." + assert n_decomp <= dim, ( + "The number of decomposition phases can at most be equal to the number of components." + ) # Just to test decomposition for a fictitious composition actual = {entry.formula: amt for entry, amt in self.pd.get_decomposition(Composition("Li3Fe7O11")).items()} @@ -692,9 +692,9 @@ def test_get_formation_energy(self): "Li2O2": 0.0, } for formula, energy in expected_formation_energies.items(): - assert energy == approx( - stable_formation_energies[formula] - ), f"Calculated formation for {formula} is not correct!" + assert energy == approx(stable_formation_energies[formula]), ( + f"Calculated formation for {formula} is not correct!" + ) def test_str(self): # using startswith since order of stable phases is random @@ -967,9 +967,9 @@ def test_pd_plot_data(self): lines, labels, unstable_entries = self.plotter_ternary_mpl.pd_plot_data assert len(lines) == 22 assert len(labels) == len(self.pd_ternary.stable_entries), "Incorrect number of lines generated!" - assert len(unstable_entries) == len(self.pd_ternary.all_entries) - len( - self.pd_ternary.stable_entries - ), "Incorrect number of lines generated!" + assert len(unstable_entries) == len(self.pd_ternary.all_entries) - len(self.pd_ternary.stable_entries), ( + "Incorrect number of lines generated!" + ) lines, labels, unstable_entries = self.plotter_quaternary_mpl.pd_plot_data assert len(lines) == 33 assert len(labels) == len(self.pd_quaternary.stable_entries) diff --git a/tests/analysis/test_pourbaix_diagram.py b/tests/analysis/test_pourbaix_diagram.py index 30150f32aa6..f5cf13681a3 100644 --- a/tests/analysis/test_pourbaix_diagram.py +++ b/tests/analysis/test_pourbaix_diagram.py @@ -210,9 +210,9 @@ def test_get_pourbaix_domains(self): def test_get_decomposition(self): # Test a stable entry to ensure that it's zero in the stable region entry = self.test_data["Zn"][12] # Should correspond to mp-2133 - assert self.pbx.get_decomposition_energy(entry, 10, 1) == approx( - 0.0, 5 - ), "Decomposition energy of ZnO is not 0." + assert self.pbx.get_decomposition_energy(entry, 10, 1) == approx(0.0, 5), ( + "Decomposition energy of ZnO is not 0." + ) # Test an unstable entry to ensure that it's never zero entry = self.test_data["Zn"][11] diff --git a/tests/analysis/test_quasirrho.py b/tests/analysis/test_quasirrho.py index 63cd0015ad4..1db102b0516 100644 --- a/tests/analysis/test_quasirrho.py +++ b/tests/analysis/test_quasirrho.py @@ -68,9 +68,9 @@ def test_rrho_linear(self): correct_g_ho = -187.642070 correct_g_qrrho = -187.642725 qrrho = QuasiRRHO.from_gaussian_output(self.linear_gout) - assert correct_g_ho == pytest.approx( - qrrho.free_energy_ho, rel=1e-5 - ), f"Incorrect harmonic oscillator free energy, {correct_g_ho} != {qrrho.free_energy_ho}" + assert correct_g_ho == pytest.approx(qrrho.free_energy_ho, rel=1e-5), ( + f"Incorrect harmonic oscillator free energy, {correct_g_ho} != {qrrho.free_energy_ho}" + ) assert correct_g_qrrho == pytest.approx(qrrho.free_energy_quasiRRHO), "Incorrect Quasi-RRHO free energy" def test_extreme_temperature_and_pressure(self): diff --git a/tests/analysis/test_structure_analyzer.py b/tests/analysis/test_structure_analyzer.py index a7da910eff0..5c99c0a263d 100644 --- a/tests/analysis/test_structure_analyzer.py +++ b/tests/analysis/test_structure_analyzer.py @@ -82,9 +82,9 @@ class TestMiscFunction(PymatgenTest): def test_average_coordination_number(self): xdatcar = Xdatcar(f"{VASP_OUT_DIR}/XDATCAR.MD") coordination_numbers = average_coordination_number(xdatcar.structures, freq=1) - assert coordination_numbers["Fe"] == approx( - 4.771903318390836, 5 - ), "Coordination number not calculated properly." + assert coordination_numbers["Fe"] == approx(4.771903318390836, 5), ( + "Coordination number not calculated properly." + ) def test_solid_angle(self): center = [2.294508207929496, 4.4078057081404, 2.299997773791287] diff --git a/tests/core/test_composition.py b/tests/core/test_composition.py index 9c00c7678fd..59ddd9836e1 100644 --- a/tests/core/test_composition.py +++ b/tests/core/test_composition.py @@ -492,9 +492,9 @@ def test_add(self): assert self.comps[0].__add__(Fe) == NotImplemented def test_sub(self): - assert ( - self.comps[0] - Composition("Li2O") - ).formula == "Li1 Fe2 P3 O11", "Incorrect composition after addition!" + assert (self.comps[0] - Composition("Li2O")).formula == "Li1 Fe2 P3 O11", ( + "Incorrect composition after addition!" + ) assert (self.comps[0] - {"Fe": 2, "O": 3}).formula == "Li3 P3 O9" with pytest.raises(ValueError, match="Amounts in Composition cannot be negative"): diff --git a/tests/core/test_ion.py b/tests/core/test_ion.py index a547bfe9005..061f00a6de0 100644 --- a/tests/core/test_ion.py +++ b/tests/core/test_ion.py @@ -87,9 +87,9 @@ def test_special_formulas(self): ("Zr(OH)4", "Zr(OH)4(aq)"), ] for tup in special_formulas: - assert ( - Ion.from_formula(tup[0]).reduced_formula == tup[1] - ), f"Expected {tup[1]} but got {Ion.from_formula(tup[0]).reduced_formula}" + assert Ion.from_formula(tup[0]).reduced_formula == tup[1], ( + f"Expected {tup[1]} but got {Ion.from_formula(tup[0]).reduced_formula}" + ) assert Ion.from_formula("Fe(OH)4+").get_reduced_formula_and_factor(hydrates=True) == ("FeO2.2H2O", 1) assert Ion.from_formula("Zr(OH)4").get_reduced_formula_and_factor(hydrates=True) == ("ZrO2.2H2O", 1) diff --git a/tests/core/test_sites.py b/tests/core/test_sites.py index 28fb7b07e4c..c941eb587f0 100644 --- a/tests/core/test_sites.py +++ b/tests/core/test_sites.py @@ -138,9 +138,9 @@ def test_distance_and_image(self): dist_old, jimage_old = get_distance_and_image_old(site1, site2) dist_new, jimage_new = site1.distance_and_image(site2) assert dist_old - dist_new > -1e-8, "New distance algo should give smaller answers!" - assert ( - not (abs(dist_old - dist_new) < 1e-8) ^ (jimage_old == jimage_new).all() - ), "If old dist == new dist, images must be the same!" + assert not (abs(dist_old - dist_new) < 1e-8) ^ (jimage_old == jimage_new).all(), ( + "If old dist == new dist, images must be the same!" + ) lattice = Lattice.from_parameters(3.0, 3.1, 10.0, 2.96, 2.0, 1.0) site = PeriodicSite("Fe", [0.1, 0.1, 0.1], lattice) site2 = PeriodicSite("Fe", [0.99, 0.99, 0.99], lattice) diff --git a/tests/core/test_trajectory.py b/tests/core/test_trajectory.py index cac745a8a75..3914747aa35 100644 --- a/tests/core/test_trajectory.py +++ b/tests/core/test_trajectory.py @@ -81,17 +81,17 @@ def test_slice(self): sliced_traj = self.traj[2:99:3] sliced_traj_from_structs = Trajectory.from_structures(self.structures[2:99:3]) - assert len(sliced_traj) == len( - sliced_traj_from_structs - ), f"{len(sliced_traj)=} != {len(sliced_traj_from_structs)=}" + assert len(sliced_traj) == len(sliced_traj_from_structs), ( + f"{len(sliced_traj)=} != {len(sliced_traj_from_structs)=}" + ) assert all(sliced_traj[i] == sliced_traj_from_structs[i] for i in range(len(sliced_traj))) sliced_traj = self.traj[:-4:2] sliced_traj_from_structs = Trajectory.from_structures(self.structures[:-4:2]) - assert len(sliced_traj) == len( - sliced_traj_from_structs - ), f"{len(sliced_traj)=} != {len(sliced_traj_from_structs)=}" + assert len(sliced_traj) == len(sliced_traj_from_structs), ( + f"{len(sliced_traj)=} != {len(sliced_traj_from_structs)=}" + ) assert all(sliced_traj[idx] == sliced_traj_from_structs[idx] for idx in range(len(sliced_traj))) sliced_traj = self.traj_mols[:2] @@ -110,9 +110,9 @@ def test_list_slice(self): sliced_traj = self.traj[[10, 30, 70]] sliced_traj_from_structs = Trajectory.from_structures([self.structures[i] for i in [10, 30, 70]]) - assert len(sliced_traj) == len( - sliced_traj_from_structs - ), f"{len(sliced_traj)=} != {len(sliced_traj_from_structs)=}" + assert len(sliced_traj) == len(sliced_traj_from_structs), ( + f"{len(sliced_traj)=} != {len(sliced_traj_from_structs)=}" + ) assert all(sliced_traj[i] == sliced_traj_from_structs[i] for i in range(len(sliced_traj))) sliced_traj = self.traj_mols[[1, 3]] diff --git a/tests/electronic_structure/test_bandstructure.py b/tests/electronic_structure/test_bandstructure.py index c5de50385ce..655bb723030 100644 --- a/tests/electronic_structure/test_bandstructure.py +++ b/tests/electronic_structure/test_bandstructure.py @@ -420,9 +420,9 @@ def test_get_vbm(self): assert len(vbm["band_index"][Spin.up]) == 1, "wrong VBM number of bands" assert vbm["band_index"][Spin.up][0] == 23, "wrong VBM band index" assert vbm["kpoint_index"][0] == 68, "wrong VBM kpoint index" - assert vbm["kpoint"].frac_coords == approx( - [0.34615384615385, 0.30769230769231, 0.0] - ), "wrong VBM kpoint frac coords" + assert vbm["kpoint"].frac_coords == approx([0.34615384615385, 0.30769230769231, 0.0]), ( + "wrong VBM kpoint frac coords" + ) assert vbm["kpoint"].label is None, "wrong VBM kpoint label" vbm_spin = self.bs_spin.get_vbm() assert vbm_spin["energy"] == approx(0.6297027399999999), "wrong VBM energy" @@ -430,9 +430,9 @@ def test_get_vbm(self): assert len(vbm_spin["band_index"][Spin.down]) == 1, "wrong VBM number of bands" assert vbm_spin["band_index"][Spin.up][0] == 23, "wrong VBM band index" assert vbm_spin["kpoint_index"][0] == 68, "wrong VBM kpoint index" - assert vbm_spin["kpoint"].frac_coords == approx( - [0.34615384615385, 0.30769230769231, 0.0] - ), "wrong VBM kpoint frac coords" + assert vbm_spin["kpoint"].frac_coords == approx([0.34615384615385, 0.30769230769231, 0.0]), ( + "wrong VBM kpoint frac coords" + ) assert vbm_spin["kpoint"].label is None, "wrong VBM kpoint label" def test_get_band_gap(self): diff --git a/tests/electronic_structure/test_plotter.py b/tests/electronic_structure/test_plotter.py index 59763e9ea59..6e29218761a 100644 --- a/tests/electronic_structure/test_plotter.py +++ b/tests/electronic_structure/test_plotter.py @@ -140,9 +140,9 @@ def test_interpolate_bands(self): def test_bs_plot_data(self): assert len(self.plotter.bs_plot_data()["distances"]) == 10, "wrong number of sequences of branches" - assert ( - len(self.plotter.bs_plot_data()["distances"][0]) == 16 - ), "wrong number of distances in the first sequence of branches" + assert len(self.plotter.bs_plot_data()["distances"][0]) == 16, ( + "wrong number of distances in the first sequence of branches" + ) assert sum(len(dist) for dist in self.plotter.bs_plot_data()["distances"]) == 160, "wrong number of distances" length = len(self.plotter.bs_plot_data(split_branches=False)["distances"][0]) diff --git a/tests/ext/test_optimade.py b/tests/ext/test_optimade.py index e2710ddeaff..a4182761168 100644 --- a/tests/ext/test_optimade.py +++ b/tests/ext/test_optimade.py @@ -51,9 +51,9 @@ def test_get_structures_mp(self): test_struct = next(iter(structs["mp"].values())) assert [str(el) for el in test_struct.types_of_species] == ["Ga", "N"] - assert len(structs["mp"]) == len( - raw_filter_structs["mp"] - ), f"Raw filter {_filter} did not return the same number of results as the query builder." + assert len(structs["mp"]) == len(raw_filter_structs["mp"]), ( + f"Raw filter {_filter} did not return the same number of results as the query builder." + ) @pytest.mark.skipif(mp_website_down, reason="MP OPTIMADE is down.") def test_get_snls_mp(self): diff --git a/tests/io/feff/test_inputs.py b/tests/io/feff/test_inputs.py index 0128bb60fed..57a41d39675 100644 --- a/tests/io/feff/test_inputs.py +++ b/tests/io/feff/test_inputs.py @@ -44,9 +44,9 @@ def test_from_str(self): def test_get_str(self): cif_file = f"{TEST_FILES_DIR}/cif/CoO19128.cif" header = Header.from_cif_file(cif_file) - assert ( - str(header).splitlines()[3].split()[-1] == header_string.splitlines()[3].split()[-1] - ), "Failed to generate HEADER from structure" + assert str(header).splitlines()[3].split()[-1] == header_string.splitlines()[3].split()[-1], ( + "Failed to generate HEADER from structure" + ) def test_as_dict_and_from_dict(self): file_name = f"{FEFF_TEST_DIR}/HEADER" diff --git a/tests/io/feff/test_outputs.py b/tests/io/feff/test_outputs.py index 9fcadc3c5bc..7bc93959cba 100644 --- a/tests/io/feff/test_outputs.py +++ b/tests/io/feff/test_outputs.py @@ -23,9 +23,9 @@ def test_init(self): def test_complete_dos(self): complete_dos = TestFeffLdos.ldos.complete_dos - assert ( - complete_dos.as_dict()["spd_dos"]["s"]["efermi"] == -11.430 - ), "Failed to construct complete_dos dict properly" + assert complete_dos.as_dict()["spd_dos"]["s"]["efermi"] == -11.430, ( + "Failed to construct complete_dos dict properly" + ) def test_as_dict_and_from_dict(self): l2 = TestFeffLdos.ldos.charge_transfer_to_str() @@ -39,9 +39,9 @@ def test_reci_init(self): def test_reci_complete_dos(self): complete_dos = TestFeffLdos.reci_dos.complete_dos - assert ( - complete_dos.as_dict()["spd_dos"]["s"]["efermi"] == -9.672 - ), "Failed to construct complete_dos dict properly" + assert complete_dos.as_dict()["spd_dos"]["s"]["efermi"] == -9.672, ( + "Failed to construct complete_dos dict properly" + ) def test_reci_charge(self): charge_trans = TestFeffLdos.reci_dos.charge_transfer diff --git a/tests/io/lammps/test_data.py b/tests/io/lammps/test_data.py index 3be78db967c..b6cceb6a10f 100644 --- a/tests/io/lammps/test_data.py +++ b/tests/io/lammps/test_data.py @@ -1119,9 +1119,9 @@ def test_json_dict(self): ff1_items = list(ff_1.items()) key, target_df = ff1_items[rng.choice(len(ff1_items))] lic3o3h4.mols[1].force_field[key].index = lic3o3h4.mols[1].force_field[key].index.map(int) - assert ( - pd.testing.assert_frame_equal(lic3o3h4.mols[1].force_field[key], target_df, check_dtype=False) is None - ), key + assert pd.testing.assert_frame_equal(lic3o3h4.mols[1].force_field[key], target_df, check_dtype=False) is None, ( + key + ) topo_1 = self.li_ec.mols[1].topology topo1_items = list(topo_1.items()) key, target_df = topo1_items[rng.choice(len(topo1_items))] diff --git a/tests/symmetry/test_analyzer.py b/tests/symmetry/test_analyzer.py index 7966c815ce9..ca87247c5ff 100644 --- a/tests/symmetry/test_analyzer.py +++ b/tests/symmetry/test_analyzer.py @@ -274,9 +274,9 @@ def test_find_primitive(self): site.properties["magmom"] = 1.0 if site.specie.name == "Na" else -1.0 sg = SpacegroupAnalyzer(structure, symprec=1e-2) primitive_structure = sg.find_primitive(keep_site_properties=True) - assert len(primitive_structure) != len( - structure - ), "this test is only interesting if the number of sites changes" + assert len(primitive_structure) != len(structure), ( + "this test is only interesting if the number of sites changes" + ) for site in primitive_structure: assert (1.0 if site.specie.name == "Na" else -1.0) == site.properties["magmom"] diff --git a/tests/util/test_provenance.py b/tests/util/test_provenance.py index 7a276f8eeb8..c44817d6982 100644 --- a/tests/util/test_provenance.py +++ b/tests/util/test_provenance.py @@ -249,9 +249,9 @@ def test_as_from_dict(self): [complicated_node, self.valid_node], ) round_trip_from_dict = StructureNL.from_dict(struct_nl.as_dict()) - assert ( - struct_nl == round_trip_from_dict - ), "to/from dict is broken when object embedding is used! Apparently MontyEncoding is broken..." + assert struct_nl == round_trip_from_dict, ( + "to/from dict is broken when object embedding is used! Apparently MontyEncoding is broken..." + ) # Test molecule mol_nl = StructureNL(self.mol, self.hulk, references=self.pmg) From 009a2349de8cb2cbbeb4c48c46e424fac38fd03e Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Fri, 10 Jan 2025 02:13:29 +0800 Subject: [PATCH 16/24] Reapply `zopen` explicit UTF-8 encoding, enable optional `EncodingWarning` PEP 597 in tests (#4222) * explicit mode for zopen * fix bad mode for cifwrite * remove tag * remove an unnecessary cast to int * TODO: test monty zopen change * fix implicit mode * Revert "TODO: test monty zopen change" This reverts commit c9bf970928e7e1d235a835e3cb4ad45a149ce010. * Revert "Revert "TODO: test monty zopen change"" This reverts commit be411a0f9d13bb3ebf77ecd5997ce5b21af81910. * Revert "Revert "Revert "TODO: test monty zopen change""" This reverts commit e75c196d47c614022e534741178eabd1316f9efe. * explicit text mode for stout * some explicit utf-8 for zopen * TO BE REVERTED: test monty pr * add the rest encoding * Revert "TO BE REVERTED: test monty pr" This reverts commit d899c87e60e58b5719f1123a60f992a9428d0e51. * enable PYTHONWARNDEFAULTENCODING * TO BE REVERTED: test leaving out encoding * fix zopen encoding warning as error * Revert "TO BE REVERTED: test leaving out encoding" This reverts commit 2ccf30c72e7e16c95f3c8c0cd2aa216ab097c1eb. * add custom warning * Reapply "TO BE REVERTED: test leaving out encoding" This reverts commit 24617c8fba266525584098ef52f48e44e9308480. * more descriptive comment * Revert "Reapply "TO BE REVERTED: test leaving out encoding"" This reverts commit 6438670420c7c4f7a43c8e277ba03bfcd4935d98. --- .github/workflows/test.yml | 3 +- dev_scripts/potcar_scrambler.py | 2 +- pyproject.toml | 9 ++-- src/pymatgen/apps/borg/hive.py | 2 +- src/pymatgen/apps/borg/queen.py | 4 +- src/pymatgen/core/structure.py | 18 ++++---- src/pymatgen/core/trajectory.py | 2 +- src/pymatgen/io/adf.py | 2 +- src/pymatgen/io/aims/inputs.py | 4 +- src/pymatgen/io/cif.py | 8 ++-- src/pymatgen/io/common.py | 6 +-- src/pymatgen/io/core.py | 6 +-- src/pymatgen/io/cp2k/inputs.py | 2 +- src/pymatgen/io/cp2k/outputs.py | 16 +++---- src/pymatgen/io/cp2k/utils.py | 2 +- src/pymatgen/io/cssr.py | 4 +- src/pymatgen/io/exciting/inputs.py | 2 +- src/pymatgen/io/feff/inputs.py | 20 ++++---- src/pymatgen/io/feff/outputs.py | 10 ++-- src/pymatgen/io/fiesta.py | 16 +++---- src/pymatgen/io/gaussian.py | 12 ++--- src/pymatgen/io/lammps/data.py | 4 +- src/pymatgen/io/lammps/generators.py | 2 +- src/pymatgen/io/lammps/inputs.py | 4 +- src/pymatgen/io/lammps/outputs.py | 4 +- src/pymatgen/io/lmto.py | 6 +-- src/pymatgen/io/lobster/inputs.py | 4 +- src/pymatgen/io/lobster/outputs.py | 30 ++++++------ src/pymatgen/io/nwchem.py | 6 +-- src/pymatgen/io/pwmat/inputs.py | 10 ++-- src/pymatgen/io/pwmat/outputs.py | 6 +-- src/pymatgen/io/pwscf.py | 2 +- src/pymatgen/io/qchem/inputs.py | 6 +-- src/pymatgen/io/qchem/outputs.py | 2 +- src/pymatgen/io/qchem/sets.py | 2 +- src/pymatgen/io/res.py | 4 +- src/pymatgen/io/template.py | 2 +- src/pymatgen/io/vasp/inputs.py | 28 +++++------ src/pymatgen/io/vasp/outputs.py | 46 +++++++++---------- src/pymatgen/io/xr.py | 4 +- src/pymatgen/io/xyz.py | 4 +- src/pymatgen/io/zeopp.py | 4 +- .../transformations/site_transformations.py | 4 +- src/pymatgen/util/io_utils.py | 2 +- tests/electronic_structure/test_dos.py | 2 +- tests/io/aims/conftest.py | 2 +- tests/io/pwmat/test_inputs.py | 6 +-- tests/io/vasp/test_inputs.py | 2 +- tests/io/vasp/test_outputs.py | 2 +- 49 files changed, 175 insertions(+), 175 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6736225f0e9..039dfee92e4 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -54,8 +54,9 @@ jobs: runs-on: ${{ matrix.config.os }} env: - PMG_MAPI_KEY: ${{ secrets.PMG_MAPI_KEY }} MPLBACKEND: Agg # non-interactive backend for matplotlib + PMG_MAPI_KEY: ${{ secrets.PMG_MAPI_KEY }} + PYTHONWARNDEFAULTENCODING: "true" # PEP 597: Enable optional EncodingWarning steps: - name: Check out repo diff --git a/dev_scripts/potcar_scrambler.py b/dev_scripts/potcar_scrambler.py index 23cd1403eb9..4a5bb292a82 100644 --- a/dev_scripts/potcar_scrambler.py +++ b/dev_scripts/potcar_scrambler.py @@ -124,7 +124,7 @@ def scramble_single_potcar(self, potcar: PotcarSingle) -> str: return scrambled_potcar_str def to_file(self, filename: str) -> None: - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(self.scrambled_potcars_str) @classmethod diff --git a/pyproject.toml b/pyproject.toml index e9e50787f93..7509fb9fe11 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -249,10 +249,11 @@ docstring-code-format = true [tool.pytest.ini_options] addopts = "--durations=30 --quiet -r xXs --color=yes --import-mode=importlib" filterwarnings = [ - # NOTE: the last matching option is used - "ignore::Warning", # Ignore all Warning - "default::FutureWarning", # Show FutureWarnings - "default::DeprecationWarning", # Show DeprecationWarnings + # NOTE: the LAST matching option would be used + "ignore::UserWarning", # Ignore UserWarning + "error:We strongly encourage explicit `encoding`:EncodingWarning", # Mark `zopen` EncodingWarning as error + # TODO: remove the following filter once `monty.io` dropped custom EncodingWarning + "error:We strongly encourage explicit `encoding`:monty.io.EncodingWarning", # TODO: pybtex (perhaps some others) emits the following warnings 'ignore:pkg_resources is deprecated as an API:DeprecationWarning', 'ignore:distutils Version classes are deprecated:DeprecationWarning', diff --git a/src/pymatgen/apps/borg/hive.py b/src/pymatgen/apps/borg/hive.py index 7045438fb81..fbd2a15645e 100644 --- a/src/pymatgen/apps/borg/hive.py +++ b/src/pymatgen/apps/borg/hive.py @@ -445,7 +445,7 @@ def _get_transformation_history(path: PathLike): """Check for a transformations.json* file and return the history.""" if trans_json := glob(f"{path!s}/transformations.json*"): try: - with zopen(trans_json[0]) as file: + with zopen(trans_json[0], mode="rt", encoding="utf-8") as file: return json.load(file)["history"] except Exception: return None diff --git a/src/pymatgen/apps/borg/queen.py b/src/pymatgen/apps/borg/queen.py index 2dd4d74e03a..bfa47b39432 100644 --- a/src/pymatgen/apps/borg/queen.py +++ b/src/pymatgen/apps/borg/queen.py @@ -103,12 +103,12 @@ def save_data(self, filename: PathLike) -> None: that if the filename ends with gz or bz2, the relevant gzip or bz2 compression will be applied. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: json.dump(list(self._data), file, cls=MontyEncoder) def load_data(self, filename: PathLike) -> None: """Load assimilated data from a file.""" - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: self._data = json.load(file, cls=MontyDecoder) diff --git a/src/pymatgen/core/structure.py b/src/pymatgen/core/structure.py index 63c1445fc05..6d0cd6545ae 100644 --- a/src/pymatgen/core/structure.py +++ b/src/pymatgen/core/structure.py @@ -2953,7 +2953,7 @@ def to(self, filename: PathLike = "", fmt: FileFormats = "", **kwargs) -> str: elif fmt == "json" or fnmatch(filename.lower(), "*.json*"): json_str = json.dumps(self.as_dict()) if filename: - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(json_str) return json_str elif fmt == "xsf" or fnmatch(filename.lower(), "*.xsf*"): @@ -2961,7 +2961,7 @@ def to(self, filename: PathLike = "", fmt: FileFormats = "", **kwargs) -> str: res_str = XSF(self).to_str() if filename: - with zopen(filename, mode="wt", encoding="utf8") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(res_str) return res_str elif ( @@ -2987,7 +2987,7 @@ def to(self, filename: PathLike = "", fmt: FileFormats = "", **kwargs) -> str: yaml.dump(self.as_dict(), str_io) yaml_str = str_io.getvalue() if filename: - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(yaml_str) return yaml_str elif fmt == "aims" or fnmatch(filename, "geometry.in"): @@ -2995,7 +2995,7 @@ def to(self, filename: PathLike = "", fmt: FileFormats = "", **kwargs) -> str: geom_in = AimsGeometryIn.from_structure(self) if filename: - with zopen(filename, mode="w") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(geom_in.get_header(filename)) file.write(geom_in.content) file.write("\n") @@ -3010,7 +3010,7 @@ def to(self, filename: PathLike = "", fmt: FileFormats = "", **kwargs) -> str: res_str = ResIO.structure_to_str(self) if filename: - with zopen(filename, mode="wt", encoding="utf8") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(res_str) return res_str elif fmt == "pwmat" or fnmatch(filename.lower(), "*.pwmat") or fnmatch(filename.lower(), "*.config"): @@ -3173,7 +3173,7 @@ def from_file( return struct fname = os.path.basename(filename) - with zopen(filename, mode="rt", errors="replace") as file: + with zopen(filename, mode="rt", errors="replace", encoding="utf-8") as file: contents = file.read() if fnmatch(fname.lower(), "*.cif*") or fnmatch(fname.lower(), "*.mcif*"): return cls.from_str( @@ -3919,7 +3919,7 @@ def to(self, filename: str = "", fmt: str = "") -> str | None: elif fmt == "json" or fnmatch(filename, "*.json*") or fnmatch(filename, "*.mson*"): json_str = json.dumps(self.as_dict()) if filename: - with zopen(filename, mode="wt", encoding="utf8") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(json_str) return json_str elif fmt in {"yaml", "yml"} or fnmatch(filename, "*.yaml*") or fnmatch(filename, "*.yml*"): @@ -3928,7 +3928,7 @@ def to(self, filename: str = "", fmt: str = "") -> str | None: yaml.dump(self.as_dict(), str_io) yaml_str = str_io.getvalue() if filename: - with zopen(filename, mode="wt", encoding="utf8") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(yaml_str) return yaml_str else: @@ -4010,7 +4010,7 @@ def from_file(cls, filename: PathLike) -> Self | None: """ filename = str(filename) - with zopen(filename) as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: contents = file.read() fname = filename.lower() if fnmatch(fname, "*.xyz*"): diff --git a/src/pymatgen/core/trajectory.py b/src/pymatgen/core/trajectory.py index c27bf682a8d..2839d9fa436 100644 --- a/src/pymatgen/core/trajectory.py +++ b/src/pymatgen/core/trajectory.py @@ -467,7 +467,7 @@ def write_Xdatcar( xdatcar_str = "\n".join(lines) + "\n" - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(xdatcar_str) def as_dict(self) -> dict: diff --git a/src/pymatgen/io/adf.py b/src/pymatgen/io/adf.py index f5fbf52d9a2..6725c89beb6 100644 --- a/src/pymatgen/io/adf.py +++ b/src/pymatgen/io/adf.py @@ -645,7 +645,7 @@ def _parse_logfile(self, logfile): # The last non-empty line of the logfile must match the end pattern. # Otherwise the job has some internal failure. The TAPE13 part of the # ADF manual has a detailed explanation. - with zopen(logfile, mode="rt") as file: + with zopen(logfile, mode="rt", encoding="utf-8") as file: for line in reverse_readline(file): if line == "": continue diff --git a/src/pymatgen/io/aims/inputs.py b/src/pymatgen/io/aims/inputs.py index 48735e9d156..bf421755f07 100644 --- a/src/pymatgen/io/aims/inputs.py +++ b/src/pymatgen/io/aims/inputs.py @@ -133,7 +133,7 @@ def from_file(cls, filepath: str | Path) -> Self: Returns: AimsGeometryIn: The input object represented in the file """ - with zopen(filepath, mode="rt") as in_file: + with zopen(filepath, mode="rt", encoding="utf-8") as in_file: content = in_file.read() return cls.from_str(content) @@ -759,7 +759,7 @@ def from_file(cls, filename: str, label: str | None = None) -> Self: Returns: AimsSpeciesFile """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls(data=file.read(), label=label) @classmethod diff --git a/src/pymatgen/io/cif.py b/src/pymatgen/io/cif.py index 253f7d86372..0bb6413402e 100644 --- a/src/pymatgen/io/cif.py +++ b/src/pymatgen/io/cif.py @@ -299,7 +299,7 @@ def from_file(cls, filename: PathLike) -> Self: Returns: CifFile """ - with zopen(filename, mode="rt", errors="replace") as file: + with zopen(filename, mode="rt", errors="replace", encoding="utf-8") as file: return cls.from_str(file.read()) @@ -1760,9 +1760,9 @@ def cif_file(self) -> CifFile: def write_file( self, - filename: str | Path, - mode: Literal["w", "a", "wt", "at"] = "w", + filename: PathLike, + mode: Literal["wt", "at"] = "wt", ) -> None: """Write the CIF file.""" - with zopen(filename, mode=mode) as file: + with zopen(filename, mode=mode, encoding="utf-8") as file: file.write(str(self)) diff --git a/src/pymatgen/io/common.py b/src/pymatgen/io/common.py index abaf3c9e4c5..6a99f044b1a 100644 --- a/src/pymatgen/io/common.py +++ b/src/pymatgen/io/common.py @@ -354,7 +354,7 @@ def to_cube(self, filename, comment: str = ""): filename (str): Name of the cube file to be written. comment (str): If provided, this will be added to the second comment line """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(f"# Cube file for {self.structure.formula} generated by Pymatgen\n") file.write(f"# {comment}\n") file.write(f"\t {len(self.structure)} 0.000000 0.000000 0.000000\n") @@ -386,7 +386,7 @@ def from_cube(cls, filename: str | Path) -> Self: Args: filename (str): of the cube to read """ - file = zopen(filename, mode="rt") + file = zopen(filename, mode="rt", encoding="utf-8") # skip header lines file.readline() @@ -529,7 +529,7 @@ def __getitem__(self, item): f"No parser defined for {item}. Contents are returned as a string.", stacklevel=2, ) - with zopen(fpath, "rt") as f: + with zopen(fpath, mode="rt", encoding="utf-8") as f: return f.read() def get_files_by_name(self, name: str) -> dict[str, Any]: diff --git a/src/pymatgen/io/core.py b/src/pymatgen/io/core.py index 5484954afe1..e81cd7a026e 100644 --- a/src/pymatgen/io/core.py +++ b/src/pymatgen/io/core.py @@ -74,7 +74,7 @@ def write_file(self, filename: PathLike) -> None: Args: filename: The filename to output to, including path. """ - with zopen(Path(filename), mode="wt") as file: + with zopen(Path(filename), mode="wt", encoding="utf-8") as file: file.write(self.get_str()) @classmethod @@ -102,7 +102,7 @@ def from_file(cls, path: PathLike) -> None: Returns: InputFile """ - with zopen(Path(path), mode="rt") as file: + with zopen(Path(path), mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) # from_str not implemented @@ -218,7 +218,7 @@ def write_input( if isinstance(contents, InputFile): contents.write_file(file_path) else: - with zopen(file_path, mode="wt") as file: + with zopen(file_path, mode="wt", encoding="utf-8") as file: file.write(str(contents)) if zip_inputs: diff --git a/src/pymatgen/io/cp2k/inputs.py b/src/pymatgen/io/cp2k/inputs.py index aa68870f100..488cd016771 100644 --- a/src/pymatgen/io/cp2k/inputs.py +++ b/src/pymatgen/io/cp2k/inputs.py @@ -692,7 +692,7 @@ def _from_dict(cls, dct: dict): @classmethod def from_file(cls, filename: str | Path) -> Self: """Initialize from a file.""" - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: txt = preprocessor(file.read(), os.path.dirname(file.name)) return cls.from_str(txt) diff --git a/src/pymatgen/io/cp2k/outputs.py b/src/pymatgen/io/cp2k/outputs.py index a230d139baf..873301fe1df 100644 --- a/src/pymatgen/io/cp2k/outputs.py +++ b/src/pymatgen/io/cp2k/outputs.py @@ -327,7 +327,7 @@ def parse_initial_structure(self): ) coord_table = [] - with zopen(self.filename, mode="rt") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: while True: line = file.readline() if re.search(r"Atom\s+Kind\s+Element\s+X\s+Y\s+Z\s+Z\(eff\)\s+Mass", line): @@ -789,7 +789,7 @@ def parse_atomic_kind_info(self): except (TypeError, IndexError, ValueError): atomic_kind_info[kind]["total_pseudopotential_energy"] = None - with zopen(self.filename, mode="rt") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: j = -1 lines = file.readlines() for k, line in enumerate(lines): @@ -1010,7 +1010,7 @@ def parse_mo_eigenvalues(self): eigenvalues = [] efermi = [] - with zopen(self.filename, mode="rt") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: lines = iter(file.readlines()) for line in lines: try: @@ -1349,7 +1349,7 @@ def parse_hyperfine(self, hyperfine_filename=None): else: return None - with zopen(hyperfine_filename, mode="rt") as file: + with zopen(hyperfine_filename, mode="rt", encoding="utf-8") as file: lines = [line for line in file.read().split("\n") if line] hyperfine = [[] for _ in self.ionic_steps] @@ -1370,7 +1370,7 @@ def parse_gtensor(self, gtensor_filename=None): else: return None - with zopen(gtensor_filename, mode="rt") as file: + with zopen(gtensor_filename, mode="rt", encoding="utf-8") as file: lines = [line for line in file.read().split("\n") if line] data = {} @@ -1407,7 +1407,7 @@ def parse_chi_tensor(self, chi_filename=None): else: return None - with zopen(chi_filename, mode="rt") as file: + with zopen(chi_filename, mode="rt", encoding="utf-8") as file: lines = [line for line in file.read().split("\n") if line] data = {k: [] for k in "chi_soft chi_local chi_total chi_total_ppm_cgs PV1 PV2 PV3 ISO ANISO".split()} @@ -1554,7 +1554,7 @@ def read_table_pattern( row_pattern, or a dict in case that named capturing groups are defined by row_pattern. """ - with zopen(self.filename, mode="rt") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: if strip: lines = file.readlines() text = "".join( @@ -1691,7 +1691,7 @@ def parse_pdos(dos_file=None, spin_channel=None, total=False): """ spin = Spin(spin_channel) if spin_channel else Spin.down if "BETA" in os.path.split(dos_file)[-1] else Spin.up - with zopen(dos_file, mode="rt") as file: + with zopen(dos_file, mode="rt", encoding="utf-8") as file: lines = file.readlines() kind = re.search(r"atomic kind\s(.*)\sat iter", lines[0]) or re.search(r"list\s(\d+)\s(.*)\sat iter", lines[0]) kind = kind.groups()[0] diff --git a/src/pymatgen/io/cp2k/utils.py b/src/pymatgen/io/cp2k/utils.py index 7eca9758a73..9566ce45fbe 100644 --- a/src/pymatgen/io/cp2k/utils.py +++ b/src/pymatgen/io/cp2k/utils.py @@ -80,7 +80,7 @@ def preprocessor(data: str, dir: str = ".") -> str: # noqa: A002 raise ValueError(f"length of inc should be 2, got {len(inc)}") inc = inc[1].strip("'") inc = inc.strip('"') - with zopen(os.path.join(dir, inc)) as file: + with zopen(os.path.join(dir, inc), mode="rt", encoding="utf-8") as file: data = re.sub(rf"{incl}", file.read(), data) variable_sets = re.findall(r"(@SET.+)", data, re.IGNORECASE) for match in variable_sets: diff --git a/src/pymatgen/io/cssr.py b/src/pymatgen/io/cssr.py index c5a4fa4ab82..1068396e14b 100644 --- a/src/pymatgen/io/cssr.py +++ b/src/pymatgen/io/cssr.py @@ -57,7 +57,7 @@ def write_file(self, filename): Args: filename (str): Filename to write to. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self) + "\n") @classmethod @@ -98,5 +98,5 @@ def from_file(cls, filename: str | Path) -> Self: Returns: Cssr object. """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) diff --git a/src/pymatgen/io/exciting/inputs.py b/src/pymatgen/io/exciting/inputs.py index 41bc7ef09a8..e4644fba085 100644 --- a/src/pymatgen/io/exciting/inputs.py +++ b/src/pymatgen/io/exciting/inputs.py @@ -181,7 +181,7 @@ def from_file(cls, filename: PathLike) -> Self: Returns: ExcitingInput """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: data = file.read().replace("\n", "") return cls.from_str(data) diff --git a/src/pymatgen/io/feff/inputs.py b/src/pymatgen/io/feff/inputs.py index f56a0577057..af791817b5f 100644 --- a/src/pymatgen/io/feff/inputs.py +++ b/src/pymatgen/io/feff/inputs.py @@ -246,7 +246,7 @@ def header_string_from_file(filename: str = "feff.inp"): Returns: Reads header string. """ - with zopen(filename, mode="r") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.readlines() feff_header_str = [] ln = 0 @@ -434,8 +434,8 @@ def atoms_string_from_file(filename): Returns: Atoms string. """ - with zopen(filename, mode="rt") as fobject: - f = fobject.readlines() + with zopen(filename, mode="rt", encoding="utf-8") as file: + f = file.readlines() coords = 0 atoms_str = [] @@ -527,7 +527,7 @@ def write_file(self, filename="ATOMS"): Args: filename: path for file to be written """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(f"{self}\n") @@ -654,7 +654,7 @@ def write_file(self, filename="PARAMETERS"): Args: filename: filename and path to write to. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(f"{self}\n") @classmethod @@ -668,7 +668,7 @@ def from_file(cls, filename: str = "feff.inp") -> Self: Returns: Tags """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = list(clean_lines(file.readlines())) params = {} eels_params = [] @@ -828,8 +828,8 @@ def pot_string_from_file(filename="feff.inp"): Returns: FEFFPOT string. """ - with zopen(filename, mode="rt") as f_object: - f = f_object.readlines() + with zopen(filename, mode="rt", encoding="utf-8") as file: + f = file.readlines() ln = -1 pot_str = ["POTENTIALS\n"] pot_tag = -1 @@ -934,7 +934,7 @@ def write_file(self, filename="POTENTIALS"): Args: filename: filename and path to write potential file to. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self) + "\n") @@ -976,7 +976,7 @@ def __str__(self): def write_file(self, filename="paths.dat"): """Write paths.dat.""" - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self) + "\n") diff --git a/src/pymatgen/io/feff/outputs.py b/src/pymatgen/io/feff/outputs.py index 16a0de3567d..8357fdfd357 100644 --- a/src/pymatgen/io/feff/outputs.py +++ b/src/pymatgen/io/feff/outputs.py @@ -70,7 +70,7 @@ def from_file(cls, feff_inp_file: str = "feff.inp", ldos_file: str = "ldos") -> dos_index = 1 begin = 0 - with zopen(pot_inp, mode="r") as potfile: + with zopen(pot_inp, mode="rt", encoding="utf-8") as potfile: for line in potfile: if len(pot_read_end.findall(line)) > 0: break @@ -95,7 +95,7 @@ def from_file(cls, feff_inp_file: str = "feff.inp", ldos_file: str = "ldos") -> dicts = Potential.pot_dict_from_str(pot_string) pot_dict = dicts[0] - with zopen(f"{ldos_file}00.dat", mode="r") as file: + with zopen(f"{ldos_file}00.dat", mode="rt", encoding="utf-8") as file: lines = file.readlines() e_fermi = float(lines[0].split()[4]) @@ -172,7 +172,7 @@ def charge_transfer_from_file(feff_inp_file, ldos_file): pot_inp = re.sub(r"feff.inp", r"pot.inp", feff_inp_file) pot_readstart = re.compile(".*iz.*lmaxsc.*xnatph.*xion.*folp.*") pot_readend = re.compile(".*ExternalPot.*switch.*") - with zopen(pot_inp, mode="r") as potfile: + with zopen(pot_inp, mode="rt", encoding="utf-8") as potfile: for line in potfile: if len(pot_readend.findall(line)) > 0: break @@ -203,7 +203,7 @@ def charge_transfer_from_file(feff_inp_file, ldos_file): for idx in range(len(dicts[0]) + 1): if len(str(idx)) == 1: - with zopen(f"{ldos_file}0{idx}.dat", mode="rt") as file: + with zopen(f"{ldos_file}0{idx}.dat", mode="rt", encoding="utf-8") as file: lines = file.readlines() s = float(lines[3].split()[2]) p = float(lines[4].split()[2]) @@ -212,7 +212,7 @@ def charge_transfer_from_file(feff_inp_file, ldos_file): tot = float(lines[1].split()[4]) cht[str(idx)] = {pot_dict[idx]: {"s": s, "p": p, "d": d, "f": f1, "tot": tot}} else: - with zopen(f"{ldos_file}{idx}.dat", mode="rt") as file: + with zopen(f"{ldos_file}{idx}.dat", mode="rt", encoding="utf-8") as file: lines = file.readlines() s = float(lines[3].split()[2]) p = float(lines[4].split()[2]) diff --git a/src/pymatgen/io/fiesta.py b/src/pymatgen/io/fiesta.py index df647a600fa..5ed94ac3e69 100644 --- a/src/pymatgen/io/fiesta.py +++ b/src/pymatgen/io/fiesta.py @@ -63,7 +63,7 @@ def run(self): init_folder = os.getcwd() os.chdir(self.folder) - with zopen(self.log_file, mode="w") as fout: + with zopen(self.log_file, mode="wt", encoding="utf-8") as fout: subprocess.call( [ self._NWCHEM2FIESTA_cmd, @@ -138,7 +138,7 @@ def _gw_run(self): if self.folder != init_folder: os.chdir(self.folder) - with zopen(self.log_file, mode="w") as fout: + with zopen(self.log_file, mode="wt", encoding="utf-8") as fout: subprocess.call( [ "mpirun", @@ -161,7 +161,7 @@ def bse_run(self): if self.folder != init_folder: os.chdir(self.folder) - with zopen(self.log_file, mode="w") as fout: + with zopen(self.log_file, mode="wt", encoding="utf-8") as fout: subprocess.call( [ "mpirun", @@ -214,7 +214,7 @@ def __init__(self, filename): """ self.filename = filename - with zopen(filename) as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: basis_set = file.read() self.data = self._parse_file(basis_set) @@ -533,7 +533,7 @@ def write_file(self, filename: str | Path) -> None: Args: filename: Filename. """ - with zopen(filename, mode="w") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self)) def as_dict(self): @@ -712,7 +712,7 @@ def from_file(cls, filename: str | Path) -> Self: Returns: FiestaInput object """ - with zopen(filename) as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) @@ -730,7 +730,7 @@ def __init__(self, filename): """ self.filename = filename - with zopen(filename) as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: data = file.read() chunks = re.split(r"GW Driver iteration", data) @@ -821,7 +821,7 @@ def __init__(self, filename): """ self.filename = filename - with zopen(filename) as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: log_bse = file.read() # self.job_info = self._parse_preamble(preamble) diff --git a/src/pymatgen/io/gaussian.py b/src/pymatgen/io/gaussian.py index bfbd1938c7b..fd3ab518f4f 100644 --- a/src/pymatgen/io/gaussian.py +++ b/src/pymatgen/io/gaussian.py @@ -368,7 +368,7 @@ def from_file(cls, filename: str | Path) -> Self: Returns: GaussianInput object """ - with zopen(filename, mode="r") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) def get_zmatrix(self): @@ -447,9 +447,9 @@ def para_dict_to_str(para, joiner=" "): def write_file(self, filename, cart_coords=False): """Write the input string into a file. - Option: see __str__ method + Option: see `__str__` method """ - with zopen(filename, mode="w") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(self.to_str(cart_coords)) def as_dict(self): @@ -661,7 +661,7 @@ def _parse(self, filename): opt_structures = [] route_lower = {} - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: for line in file: if parse_stage == 0: if start_patt.search(line): @@ -1109,7 +1109,7 @@ def read_scan(self): data = {"energies": [], "coords": {}} # read in file - with zopen(self.filename, mode="r") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: line = file.readline() while line != "": @@ -1195,7 +1195,7 @@ def read_excitation_energies(self): transitions = [] # read in file - with zopen(self.filename, mode="r") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: line = file.readline() td = False while line != "": diff --git a/src/pymatgen/io/lammps/data.py b/src/pymatgen/io/lammps/data.py index d0d565fb9f9..2e730c218ca 100644 --- a/src/pymatgen/io/lammps/data.py +++ b/src/pymatgen/io/lammps/data.py @@ -647,7 +647,7 @@ def from_file(cls, filename: str, atom_style: str = "full", sort_id: bool = Fals sort_id (bool): Whether sort each section by id. Default to True. """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.readlines() kw_pattern = r"|".join(itertools.chain(*SECTION_KEYWORDS.values())) section_marks = [idx for idx, line in enumerate(lines) if re.search(kw_pattern, line)] @@ -1439,7 +1439,7 @@ def parse_xyz(cls, filename: str | Path) -> pd.DataFrame: Returns: pandas.DataFrame """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.readlines() str_io = StringIO("".join(lines[2:])) # skip the 2nd line diff --git a/src/pymatgen/io/lammps/generators.py b/src/pymatgen/io/lammps/generators.py index 143860d8764..d541dd1adf4 100644 --- a/src/pymatgen/io/lammps/generators.py +++ b/src/pymatgen/io/lammps/generators.py @@ -67,7 +67,7 @@ def get_input_set(self, structure: Structure | LammpsData | CombinedData) -> Lam data: LammpsData = LammpsData.from_structure(structure) if isinstance(structure, Structure) else structure # Load the template - with zopen(self.template, mode="r") as file: + with zopen(self.template, mode="rt", encoding="utf-8") as file: template_str = file.read() # Replace all variables diff --git a/src/pymatgen/io/lammps/inputs.py b/src/pymatgen/io/lammps/inputs.py index 125261a903b..fa7987dfa3a 100644 --- a/src/pymatgen/io/lammps/inputs.py +++ b/src/pymatgen/io/lammps/inputs.py @@ -553,7 +553,7 @@ def write_file( If False, a single block is assumed. """ filename = filename if isinstance(filename, Path) else Path(filename) - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(self.get_str(ignore_comments=ignore_comments, keep_stages=keep_stages)) @classmethod @@ -653,7 +653,7 @@ def from_file(cls, path: str | Path, ignore_comments: bool = False, keep_stages: LammpsInputFile """ filename = path if isinstance(path, Path) else Path(path) - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read(), ignore_comments=ignore_comments, keep_stages=keep_stages) def __repr__(self) -> str: diff --git a/src/pymatgen/io/lammps/outputs.py b/src/pymatgen/io/lammps/outputs.py index 216cc458c66..4efc01fc934 100644 --- a/src/pymatgen/io/lammps/outputs.py +++ b/src/pymatgen/io/lammps/outputs.py @@ -115,7 +115,7 @@ def parse_lammps_dumps(file_pattern): files = sorted(files, key=lambda f: int(re.match(pattern, f)[1])) for filename in files: - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: dump_cache = [] for line in file: if line.startswith("ITEM: TIMESTEP"): @@ -144,7 +144,7 @@ def parse_lammps_log(filename: str = "log.lammps") -> list[pd.DataFrame]: Returns: [pd.DataFrame] containing thermo data for each completed run. """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.readlines() begin_flag = ( "Memory usage per processor =", diff --git a/src/pymatgen/io/lmto.py b/src/pymatgen/io/lmto.py index 1a5d669d4bc..a660ee12510 100644 --- a/src/pymatgen/io/lmto.py +++ b/src/pymatgen/io/lmto.py @@ -139,7 +139,7 @@ def write_file(self, filename="CTRL", **kwargs): """Write a CTRL file with structure, HEADER, and VERS that can be used as input for lmhart.run. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(self.get_str(**kwargs)) @classmethod @@ -153,7 +153,7 @@ def from_file(cls, filename: str | Path = "CTRL", **kwargs) -> Self: Returns: An LMTOCtrl object. """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: contents = file.read() return cls.from_str(contents, **kwargs) @@ -322,7 +322,7 @@ def __init__(self, filename="COPL", to_eV=False): eV, set to True. Defaults to False for energies in Ry. """ # COPL files have an extra trailing blank line - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: contents = file.read().split("\n")[:-1] # The parameters line is the second line in a COPL file. It # contains all parameters that are needed to map the file. diff --git a/src/pymatgen/io/lobster/inputs.py b/src/pymatgen/io/lobster/inputs.py index 18a6a53c654..c83b57cfe4d 100644 --- a/src/pymatgen/io/lobster/inputs.py +++ b/src/pymatgen/io/lobster/inputs.py @@ -588,7 +588,7 @@ def from_file(cls, lobsterin: PathLike) -> Self: Returns: Lobsterin object """ - with zopen(lobsterin, mode="rt") as file: + with zopen(lobsterin, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n") if not lines: raise RuntimeError("lobsterin file contains no data.") @@ -645,7 +645,7 @@ def _get_potcar_symbols(POTCAR_input: PathLike) -> list[str]: raise ValueError("Lobster only works with PAW! Use different POTCARs") # Warning about a bug in LOBSTER-4.1.0 - with zopen(POTCAR_input, mode="r") as file: + with zopen(POTCAR_input, mode="rt", encoding="utf-8") as file: data = file.read() if isinstance(data, bytes): diff --git a/src/pymatgen/io/lobster/outputs.py b/src/pymatgen/io/lobster/outputs.py index a0ca239bfe4..90291feec7d 100644 --- a/src/pymatgen/io/lobster/outputs.py +++ b/src/pymatgen/io/lobster/outputs.py @@ -121,7 +121,7 @@ def __init__( else: self._filename = "COHPCAR.lobster" - with zopen(self._filename, mode="rt") as file: + with zopen(self._filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n") # The parameters line is the second line in a COHPCAR file. @@ -405,7 +405,7 @@ def __init__( # LOBSTER list files have an extra trailing blank line # and we don't need the header. if self._icohpcollection is None: - with zopen(self._filename, mode="rt") as file: + with zopen(self._filename, mode="rt", encoding="utf-8") as file: all_lines = file.read().split("\n") lines = all_lines[1:-1] if "spin" not in all_lines[1] else all_lines[2:-1] if len(lines) == 0: @@ -622,7 +622,7 @@ def __init__(self, filename: PathLike | None = "NcICOBILIST.lobster") -> None: # LOBSTER list files have an extra trailing blank line # and we don't need the header - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n")[1:-1] if len(lines) == 0: raise RuntimeError("NcICOBILIST file contains no data.") @@ -754,7 +754,7 @@ def _parse_doscar(self): tdensities = {} itdensities = {} - with zopen(doscar, mode="rt") as file: + with zopen(doscar, mode="rt", encoding="utf-8") as file: file.readline() # Skip the first line efermi = float([file.readline() for nn in range(4)][3].split()[17]) dos = [] @@ -913,7 +913,7 @@ def __init__( self.loewdin = [] if loewdin is None else loewdin if self.num_atoms is None: - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n")[3:-3] if len(lines) == 0: raise RuntimeError("CHARGES file contains no data.") @@ -1047,7 +1047,7 @@ def __init__(self, filename: PathLike | None, **kwargs) -> None: else: raise ValueError(f"{attr}={val} is not a valid attribute for Lobsterout") elif filename: - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n") if len(lines) == 0: raise RuntimeError("lobsterout does not contain any data") @@ -1445,7 +1445,7 @@ def __init__( raise ValueError("No FATBAND files in folder or given") for fname in filenames: - with zopen(fname, mode="rt") as file: + with zopen(fname, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n") atom_names.append(os.path.split(fname)[1].split("_")[1].capitalize()) @@ -1479,7 +1479,7 @@ def __init__( eigenvals: dict = {} p_eigenvals: dict = {} for ifilename, filename in enumerate(filenames): - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n") if ifilename == 0: @@ -1627,7 +1627,7 @@ def __init__( self.max_deviation = [] if max_deviation is None else max_deviation if not self.band_overlaps_dict: - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n") spin_numbers = [0, 1] if lines[0].split()[-1] == "0" else [1, 2] @@ -1767,7 +1767,7 @@ def __init__( self.is_lcfo = is_lcfo self.list_dict_grosspop = [] if list_dict_grosspop is None else list_dict_grosspop if not self.list_dict_grosspop: - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n") # Read file to list of dict @@ -1897,7 +1897,7 @@ def _parse_file( imaginary (list[float]): Imaginary parts of wave function. distance (list[float]): Distances to the first point in wave function file. """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n") points = [] @@ -2067,7 +2067,7 @@ def __init__( self.madelungenergies_mulliken = None if madelungenergies_mulliken is None else madelungenergies_mulliken if self.ewald_splitting is None: - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n")[5] if len(lines) == 0: raise RuntimeError("MadelungEnergies file contains no data.") @@ -2138,7 +2138,7 @@ def __init__( self.madelungenergies_mulliken: list | float = madelungenergies_mulliken or [] if self.num_atoms is None: - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n") if len(lines) == 0: raise RuntimeError("SitePotentials file contains no data.") @@ -2291,7 +2291,7 @@ def __init__( """ self._filename = str(filename) - with zopen(self._filename, mode="rt") as file: + with zopen(self._filename, mode="rt", encoding="utf-8") as file: lines = file.readlines() if len(lines) == 0: raise RuntimeError("Please check provided input file, it seems to be empty") @@ -2479,7 +2479,7 @@ def __init__( self.bin_width = 0.0 if bin_width is None else bin_width if not self.bwdf: - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = file.read().split("\n") if len(lines) == 0: raise RuntimeError("BWDF file contains no data.") diff --git a/src/pymatgen/io/nwchem.py b/src/pymatgen/io/nwchem.py index d9e4f47a463..523aa9a53a9 100644 --- a/src/pymatgen/io/nwchem.py +++ b/src/pymatgen/io/nwchem.py @@ -394,7 +394,7 @@ def write_file(self, filename): Args: filename (str): Filename. """ - with zopen(filename, mode="w") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self)) def as_dict(self): @@ -534,7 +534,7 @@ def from_file(cls, filename: str | Path) -> Self: Returns: NwInput object """ - with zopen(filename) as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) @@ -557,7 +557,7 @@ def __init__(self, filename): """ self.filename = filename - with zopen(filename) as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: data = file.read() chunks = re.split(r"NWChem Input Module", data) diff --git a/src/pymatgen/io/pwmat/inputs.py b/src/pymatgen/io/pwmat/inputs.py index aa60c1737cd..92bd77e0374 100644 --- a/src/pymatgen/io/pwmat/inputs.py +++ b/src/pymatgen/io/pwmat/inputs.py @@ -36,7 +36,7 @@ def locate_all_lines(file_path: PathLike, content: str, exclusion: str = "") -> """ row_idxs: list[int] = [] # starts from 1 to be compatible with linecache package row_no: int = 0 - with zopen(file_path, mode="rt") as file: + with zopen(file_path, mode="rt", encoding="utf-8") as file: for row_content in file: row_no += 1 if content.upper() in row_content.upper() and ( @@ -418,7 +418,7 @@ def from_file(cls, filename: PathLike, mag: bool = False) -> Self: Returns: AtomConfig object. """ - with zopen(filename, "rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(data=file.read(), mag=mag) @classmethod @@ -466,7 +466,7 @@ def get_str(self) -> str: def write_file(self, filename: PathLike, **kwargs): """Write AtomConfig to a file.""" - with zopen(filename, "wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(self.get_str(**kwargs)) def as_dict(self): @@ -588,7 +588,7 @@ def write_file(self, filename: PathLike): Args: filename (PathLike): The absolute path of file to be written. """ - with zopen(filename, "wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(self.get_str()) @@ -694,5 +694,5 @@ def get_hsp_row_str(label: str, index: int, coordinate: float) -> str: def write_file(self, filename: PathLike): """Write HighSymmetryPoint to a file.""" - with zopen(filename, "wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(self.get_str()) diff --git a/src/pymatgen/io/pwmat/outputs.py b/src/pymatgen/io/pwmat/outputs.py index 9389e82befb..0183be0bab7 100644 --- a/src/pymatgen/io/pwmat/outputs.py +++ b/src/pymatgen/io/pwmat/outputs.py @@ -135,7 +135,7 @@ def _parse_sefv(self) -> list[dict]: 'atom_forces' and 'virial'. """ ionic_steps: list[dict] = [] - with zopen(self.filename, "rt") as mvt: + with zopen(self.filename, mode="rt", encoding="utf-8") as mvt: tmp_step: dict = {} for ii in range(self.n_ionic_steps): tmp_chunk: str = "" @@ -168,7 +168,7 @@ def __init__(self, filename: PathLike): filename (PathLike): The absolute path of OUT.FERMI file. """ self.filename: PathLike = filename - with zopen(self.filename, "rt") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: self._e_fermi: float = np.round(float(file.readline().split()[-2].strip()), 3) @property @@ -346,7 +346,7 @@ def _parse(self): labels: list[str] = [] labels = linecache.getline(str(self.filename), 1).split()[1:] dos_str: str = "" - with zopen(self.filename, mode="rt") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: file.readline() dos_str = file.read() dos: np.ndarray = np.loadtxt(StringIO(dos_str)) diff --git a/src/pymatgen/io/pwscf.py b/src/pymatgen/io/pwscf.py index 2f32c0c346a..03f7e7d456e 100644 --- a/src/pymatgen/io/pwscf.py +++ b/src/pymatgen/io/pwscf.py @@ -275,7 +275,7 @@ def from_file(cls, filename: str | Path) -> Self: Returns: PWInput object """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) @classmethod diff --git a/src/pymatgen/io/qchem/inputs.py b/src/pymatgen/io/qchem/inputs.py index d350a84ba55..7ff5be8487e 100644 --- a/src/pymatgen/io/qchem/inputs.py +++ b/src/pymatgen/io/qchem/inputs.py @@ -373,7 +373,7 @@ def write_multi_job_file(job_list: list[QCInput], filename: str): job_list (list[QCInput]): List of QChem jobs. filename (str): Name of the file to write. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(QCInput.multi_job_string(job_list)) @classmethod @@ -387,7 +387,7 @@ def from_file(cls, filename: str | Path) -> Self: Returns: QcInput """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) @classmethod @@ -401,7 +401,7 @@ def from_multi_jobs_file(cls, filename: str) -> list[Self]: Returns: List of QCInput objects """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: # the delimiter between QChem jobs is @@@ multi_job_strings = file.read().split("@@@") # list of individual QChem jobs diff --git a/src/pymatgen/io/qchem/outputs.py b/src/pymatgen/io/qchem/outputs.py index a3e9ad038a8..d483e7ecba3 100644 --- a/src/pymatgen/io/qchem/outputs.py +++ b/src/pymatgen/io/qchem/outputs.py @@ -661,7 +661,7 @@ def multiple_outputs_from_file(filename, keep_sub_files=True): 2.) Creates separate QCCalcs for each one from the sub-files. """ to_return = [] - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: text = re.split(r"\s*(?:Running\s+)*Job\s+\d+\s+of\s+\d+\s+", file.read()) if text[0] == "": text = text[1:] diff --git a/src/pymatgen/io/qchem/sets.py b/src/pymatgen/io/qchem/sets.py index dddd478a966..d68a1714218 100644 --- a/src/pymatgen/io/qchem/sets.py +++ b/src/pymatgen/io/qchem/sets.py @@ -643,7 +643,7 @@ def write(self, input_file: PathLike) -> None: """ self.write_file(input_file) if self.smd_solvent in {"custom", "other"} and self.qchem_version == 5: - with zopen(os.path.join(os.path.dirname(input_file), "solvent_data"), mode="wt") as file: + with zopen(os.path.join(os.path.dirname(input_file), "solvent_data"), mode="wt", encoding="utf-8") as file: file.write(self.custom_smd) diff --git a/src/pymatgen/io/res.py b/src/pymatgen/io/res.py index 9a45a3b9dc2..cfc81f3d649 100644 --- a/src/pymatgen/io/res.py +++ b/src/pymatgen/io/res.py @@ -249,7 +249,7 @@ def _parse_str(cls, source: str) -> Res: def _parse_file(cls, filename: str | Path) -> Res: """Parse the res file as a file.""" self = cls() - with zopen(filename, mode="r") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: self.source = file.read() return self._parse_txt() @@ -335,7 +335,7 @@ def string(self) -> str: def write(self, filename: str) -> None: """Write the res data to a file.""" - with zopen(filename, mode="w") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self)) diff --git a/src/pymatgen/io/template.py b/src/pymatgen/io/template.py index 2ee08031ede..bacfd661e97 100644 --- a/src/pymatgen/io/template.py +++ b/src/pymatgen/io/template.py @@ -52,7 +52,7 @@ def get_input_set( self.filename = str(filename) # Load the template - with zopen(self.template, mode="r") as file: + with zopen(self.template, mode="rt", encoding="utf-8") as file: template_str = file.read() # Replace all variables diff --git a/src/pymatgen/io/vasp/inputs.py b/src/pymatgen/io/vasp/inputs.py index f5357b96dd7..11167289055 100644 --- a/src/pymatgen/io/vasp/inputs.py +++ b/src/pymatgen/io/vasp/inputs.py @@ -285,7 +285,7 @@ def from_file( except Exception: names = None - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read(), names, read_velocities=read_velocities) @classmethod @@ -671,7 +671,7 @@ def write_file(self, filename: PathLike, **kwargs) -> None: """Write POSCAR to a file. The supported kwargs are the same as those for the Poscar.get_str method and are passed through directly. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(self.get_str(**kwargs)) def as_dict(self) -> dict: @@ -906,7 +906,7 @@ def write_file(self, filename: PathLike) -> None: Args: filename (str): filename to write to. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self)) @classmethod @@ -919,7 +919,7 @@ def from_file(cls, filename: PathLike) -> Self: Returns: Incar object """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) @classmethod @@ -1659,7 +1659,7 @@ def from_file(cls, filename: PathLike) -> Self: Returns: Kpoints object """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) @classmethod @@ -1800,7 +1800,7 @@ def write_file(self, filename: PathLike) -> None: Args: filename (PathLike): Filename to write to. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self)) def as_dict(self) -> dict[str, Any]: @@ -2411,9 +2411,9 @@ def write_file(self, filename: str) -> None: """Write PotcarSingle to a file. Args: - filename (str): Filename to write to. + filename (str): File to write to. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self)) def copy(self) -> Self: @@ -2438,7 +2438,7 @@ def from_file(cls, filename: PathLike) -> Self: symbol = match[0] if match else "" try: - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls(file.read(), symbol=symbol or None) except UnicodeDecodeError: @@ -2850,7 +2850,7 @@ def from_file(cls, filename: PathLike) -> Self: Returns: Potcar """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: fdata = file.read() potcar = cls() @@ -2873,7 +2873,7 @@ def write_file(self, filename: PathLike) -> None: Args: filename (PathLike): filename to write to. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self)) def set_symbols( @@ -3009,7 +3009,7 @@ def write_input( for key, value in self.items(): if value is not None: - with zopen(os.path.join(output_dir, key), mode="wt") as file: + with zopen(os.path.join(output_dir, key), mode="wt", encoding="utf-8") as file: file.write(str(value)) if cif_name: @@ -3032,8 +3032,8 @@ def write_input( files_to_transfer = files_to_transfer or {} for key, val in files_to_transfer.items(): with ( - zopen(val, "rb") as fin, - zopen(str(Path(output_dir) / key), "wb") as fout, + zopen(val, mode="rb") as fin, + zopen(str(Path(output_dir) / key), mode="wb") as fout, ): copyfileobj(fin, fout) diff --git a/src/pymatgen/io/vasp/outputs.py b/src/pymatgen/io/vasp/outputs.py index 3834a27834a..1a15bfb8f2c 100644 --- a/src/pymatgen/io/vasp/outputs.py +++ b/src/pymatgen/io/vasp/outputs.py @@ -312,7 +312,7 @@ def __init__( self.separate_spins = separate_spins self.exception_on_bad_xml = exception_on_bad_xml - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: if ionic_step_skip or ionic_step_offset: # Remove parts of the xml file and parse the string content: str = file.read() @@ -1775,7 +1775,7 @@ def __init__( self.occu_tol = occu_tol self.separate_spins = separate_spins - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: self.efermi = None parsed_header = False in_kpoints_opt = False @@ -2127,7 +2127,7 @@ def __init__(self, filename: PathLike) -> None: # Data from beginning of OUTCAR run_stats["cores"] = None - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: for line in file: if "serial" in line: # Activate serial parallelization @@ -2385,7 +2385,7 @@ def read_table_pattern( if last_one_only and first_one_only: raise ValueError("last_one_only and first_one_only options are incompatible") - with zopen(self.filename, mode="rt") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: text = file.read() table_pattern_text = header_pattern + r"\s*^(?P(?:\s+" + row_pattern + r")+)\s+" + footer_pattern table_pattern = re.compile(table_pattern_text, re.MULTILINE | re.DOTALL) @@ -2471,7 +2471,7 @@ def read_freq_dielectric(self) -> None: data: dict[str, Any] = {"REAL": [], "IMAGINARY": []} count = 0 component = "IMAGINARY" - with zopen(self.filename, mode="rt") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: for line in file: line = line.strip() if re.match(plasma_pattern, line): @@ -2597,7 +2597,7 @@ def read_cs_raw_symmetrized_tensors(self) -> None: row_pattern = r"\s+".join([r"([-]?\d+\.\d+)"] * 3) unsym_footer_pattern = r"^\s+SYMMETRIZED TENSORS\s+$" - with zopen(self.filename, mode="rt") as file: + with zopen(self.filename, mode="rt", encoding="utf-8") as file: text = file.read() unsym_table_pattern_text = header_pattern + first_part_pattern + r"(?P.+)" + unsym_footer_pattern table_pattern = re.compile(unsym_table_pattern_text, re.MULTILINE | re.DOTALL) @@ -3380,7 +3380,7 @@ def read_core_state_eigen(self) -> list[dict]: The core state eigenenergie of the 2s AO of the 6th atom of the structure at the last ionic step is [5]["2s"][-1]. """ - with zopen(self.filename, mode="rt") as foutcar: + with zopen(self.filename, mode="rt", encoding="utf-8") as foutcar: line = foutcar.readline() cl: list[dict] = [] @@ -3422,7 +3422,7 @@ def read_avg_core_poten(self) -> list[list]: The average core potential of the 2nd atom of the structure at the last ionic step is: [-1][1] """ - with zopen(self.filename, mode="rt") as foutcar: + with zopen(self.filename, mode="rt", encoding="utf-8") as foutcar: line = foutcar.readline() aps: list[list[float]] = [] while line != "": @@ -3618,7 +3618,7 @@ def parse_file(filename: PathLike) -> tuple[Poscar, dict, dict]: ngrid_pts = 0 data_count = 0 poscar = None - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: for line in file: original_line = line line = line.strip() @@ -3752,7 +3752,7 @@ def write_spin(data_type: str) -> None: if isinstance(data, Iterable): file.write("".join(data)) - with zopen(file_name, mode="wt") as file: + with zopen(file_name, mode="wt", encoding="utf-8") as file: poscar = Poscar(self.structure) # Use original name if it's been set (e.g. from Chgcar) @@ -4085,7 +4085,7 @@ def _read(self, filename: PathLike, parsed_kpoints: set[tuple[Kpoint]] | None = if parsed_kpoints is None: parsed_kpoints = set() - with zopen(filename, mode="rt") as file_handle: + with zopen(filename, mode="rt", encoding="utf-8") as file: preamble_expr = re.compile(r"# of k-points:\s*(\d+)\s+# of bands:\s*(\d+)\s+# of ions:\s*(\d+)") kpoint_expr = re.compile(r"^k-point\s+(\d+).*weight = ([0-9\.]+)") band_expr = re.compile(r"^band\s+(\d+)") @@ -4116,7 +4116,7 @@ def _read(self, filename: PathLike, parsed_kpoints: set[tuple[Kpoint]] | None = # total and x,y,z) for each band, while non-SOC have only 1 list of projections: tot_count = 0 band_count = 0 - for line in file_handle: + for line in file: if total_expr.match(line): tot_count += 1 elif band_expr.match(line): @@ -4124,7 +4124,7 @@ def _read(self, filename: PathLike, parsed_kpoints: set[tuple[Kpoint]] | None = if band_count == 2: break - file_handle.seek(0) # reset file handle to beginning + file.seek(0) # reset file handle to beginning if tot_count == 1: is_soc = False elif tot_count == 4: @@ -4141,7 +4141,7 @@ def _read(self, filename: PathLike, parsed_kpoints: set[tuple[Kpoint]] | None = skipping_kpoint = False # true when skipping projections for a previously-parsed kpoint ion_line_count = 0 # printed twice when phase factors present proj_data_parsed_for_band = 0 # 0 for non-SOC, 1-4 for SOC/phase factors - for line in file_handle: + for line in file: line = line.strip() if ion_expr.match(line): ion_line_count += 1 @@ -4376,8 +4376,8 @@ def smart_convert(header: str, num: float | str) -> float | str: electronic_pattern = re.compile(r"\s*\w+\s*:(.*)") header: list = [] - with zopen(filename, mode="rt") as fid: - for line in fid: + with zopen(filename, mode="rt", encoding="utf-8") as file: + for line in file: if match := electronic_pattern.match(line.strip()): tokens = match[1].split() data = {header[idx]: smart_convert(header[idx], tokens[idx]) for idx in range(len(tokens))} @@ -4519,10 +4519,10 @@ def __init__( if ionicstep_end is not None and ionicstep_end < 1: raise ValueError("End ionic step cannot be less than 1") - file_len = sum(1 for _ in zopen(filename, mode="rt")) + file_len = sum(1 for _ in zopen(filename, mode="rt", encoding="utf-8")) ionicstep_cnt = 1 ionicstep_start = ionicstep_start or 0 - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: title = None for iline, line in enumerate(file): line = line.strip() @@ -4618,7 +4618,7 @@ def concatenate( raise ValueError("End ionic step cannot be less than 1") ionicstep_cnt = 1 - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: for line in file: line = line.strip() if preamble is None: @@ -4706,7 +4706,7 @@ def write_file(self, filename: PathLike, **kwargs) -> None: **kwargs: The same as those for the Xdatcar.get_str method and are passed through directly. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(self.get_str(**kwargs)) @@ -4728,7 +4728,7 @@ def __init__(self, filename: PathLike) -> None: Args: filename: Name of file containing DYNMAT. """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: lines = list(clean_lines(file.readlines())) self._nspecs, self._natoms, self._ndisps = map(int, lines[0].split()) self._masses = map(float, lines[1].split()) @@ -5423,7 +5423,7 @@ def __init__( self.occu_tol = occu_tol self.separate_spins = separate_spins - with zopen(filename, mode="r") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: self.ispin = int(file.readline().split()[-1]) # Remove useless header information @@ -5574,7 +5574,7 @@ def from_formatted(cls, filename: PathLike) -> Self: Returns: A Waveder object. """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: nspin, nkpts, nbands = file.readline().split() # 1 and 4 are the eigenvalues of the bands (this data is missing in the WAVEDER file) # 6:12 are the complex matrix elements in each cartesian direction. diff --git a/src/pymatgen/io/xr.py b/src/pymatgen/io/xr.py index 07e64b5477a..62d74f8f0e7 100644 --- a/src/pymatgen/io/xr.py +++ b/src/pymatgen/io/xr.py @@ -68,7 +68,7 @@ def write_file(self, filename: str | Path) -> None: Args: filename (str): name of the file to write to. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self) + "\n") @classmethod @@ -155,5 +155,5 @@ def from_file(cls, filename: str | Path, use_cores: bool = True, thresh: float = xr (Xr): Xr object corresponding to the input file. """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read(), use_cores=use_cores, thresh=thresh) diff --git a/src/pymatgen/io/xyz.py b/src/pymatgen/io/xyz.py index 98078baa63c..4f44f66e552 100644 --- a/src/pymatgen/io/xyz.py +++ b/src/pymatgen/io/xyz.py @@ -111,7 +111,7 @@ def from_file(cls, filename: str | Path) -> Self: Returns: XYZ object """ - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) def as_dataframe(self): @@ -151,5 +151,5 @@ def write_file(self, filename: str) -> None: Args: filename (str): File name of output file. """ - with zopen(filename, mode="wt") as file: + with zopen(filename, mode="wt", encoding="utf-8") as file: file.write(str(self)) diff --git a/src/pymatgen/io/zeopp.py b/src/pymatgen/io/zeopp.py index 55a1506dc44..64f1557f4d1 100644 --- a/src/pymatgen/io/zeopp.py +++ b/src/pymatgen/io/zeopp.py @@ -146,7 +146,7 @@ def from_file(cls, filename: str | Path) -> Self: Returns: ZeoCssr object. """ - with zopen(filename, mode="r") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) @@ -200,7 +200,7 @@ def from_file(cls, filename: str | Path) -> Self: Returns: XYZ object """ - with zopen(filename) as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: return cls.from_str(file.read()) def __str__(self) -> str: diff --git a/src/pymatgen/transformations/site_transformations.py b/src/pymatgen/transformations/site_transformations.py index 4672bad1183..6b1bede1f2a 100644 --- a/src/pymatgen/transformations/site_transformations.py +++ b/src/pymatgen/transformations/site_transformations.py @@ -431,9 +431,7 @@ def apply_transformation(self, structure: Structure, return_ranked_list: bool | n_to_remove = round(n_to_remove) num_remove_dict[tuple(idx)] = n_to_remove n = len(idx) - total_combos += int( - round(math.factorial(n) / math.factorial(n_to_remove) / math.factorial(n - n_to_remove)) - ) + total_combos += round(math.factorial(n) / math.factorial(n_to_remove) / math.factorial(n - n_to_remove)) self.logger.debug(f"Total combinations = {total_combos}") diff --git a/src/pymatgen/util/io_utils.py b/src/pymatgen/util/io_utils.py index f8c7d268f43..7bf4efdc2f4 100644 --- a/src/pymatgen/util/io_utils.py +++ b/src/pymatgen/util/io_utils.py @@ -81,7 +81,7 @@ def micro_pyawk(filename, search, results=None, debug=None, postdebug=None): for entry in search: entry[0] = re.compile(entry[0]) - with zopen(filename, mode="rt") as file: + with zopen(filename, mode="rt", encoding="utf-8") as file: for line in file: for entry in search: match = re.search(entry[0], line) diff --git a/tests/electronic_structure/test_dos.py b/tests/electronic_structure/test_dos.py index a7c8dec41b1..edf2c6957ae 100644 --- a/tests/electronic_structure/test_dos.py +++ b/tests/electronic_structure/test_dos.py @@ -108,7 +108,7 @@ class TestCompleteDos(TestCase): def setUp(self): with open(f"{TEST_DIR}/complete_dos.json") as file: self.dos = CompleteDos.from_dict(json.load(file)) - with zopen(f"{TEST_DIR}/pdag3_complete_dos.json.gz") as file: + with zopen(f"{TEST_DIR}/pdag3_complete_dos.json.gz", mode="rt", encoding="utf-8") as file: self.dos_pdag3 = CompleteDos.from_dict(json.load(file)) def test_get_gap(self): diff --git a/tests/io/aims/conftest.py b/tests/io/aims/conftest.py index 3cabe2b3ca8..b2ac971c904 100644 --- a/tests/io/aims/conftest.py +++ b/tests/io/aims/conftest.py @@ -150,7 +150,7 @@ def compare_single_files(ref_file: PathLike, test_file: PathLike) -> None: with open(test_file) as tf: test_lines = tf.readlines()[5:] - with zopen(f"{ref_file}.gz", mode="rt") as rf: + with zopen(f"{ref_file}.gz", mode="rt", encoding="utf-8") as rf: ref_lines = rf.readlines()[5:] for test_line, ref_line in zip(test_lines, ref_lines, strict=True): diff --git a/tests/io/pwmat/test_inputs.py b/tests/io/pwmat/test_inputs.py index 7618e7ecdf6..e1438482623 100644 --- a/tests/io/pwmat/test_inputs.py +++ b/tests/io/pwmat/test_inputs.py @@ -47,7 +47,7 @@ class TestACstrExtractor(PymatgenTest): def test_extract(self): filepath = f"{TEST_DIR}/atom.config" ac_extractor = ACExtractor(file_path=filepath) - with zopen(filepath, mode="rt") as file: + with zopen(filepath, mode="rt", encoding="utf-8") as file: ac_str_extractor = ACstrExtractor(atom_config_str="".join(file.readlines())) assert ac_extractor.n_atoms == ac_str_extractor.get_n_atoms() for idx in range(9): @@ -102,7 +102,7 @@ def test_write_file(self): tmp_file = f"{self.tmp_path}/gen.kpt.testing.lzma" gen_kpt.write_file(tmp_file) tmp_gen_kpt_str = "" - with zopen(tmp_file, mode="rt") as file: + with zopen(tmp_file, mode="rt", encoding="utf-8") as file: tmp_gen_kpt_str = file.read() assert gen_kpt.get_str() == tmp_gen_kpt_str @@ -128,7 +128,7 @@ def test_write_file(self): tmp_filepath = f"{self.tmp_path}/HIGH_SYMMETRY_POINTS.testing.lzma" high_symmetry_points.write_file(tmp_filepath) tmp_high_symmetry_points_str = "" - with zopen(tmp_filepath, "rt") as file: + with zopen(tmp_filepath, "rt", encoding="utf-8") as file: tmp_high_symmetry_points_str = file.read() assert tmp_high_symmetry_points_str == high_symmetry_points.get_str() diff --git a/tests/io/vasp/test_inputs.py b/tests/io/vasp/test_inputs.py index 1616ff4e5e7..5b572d44acd 100644 --- a/tests/io/vasp/test_inputs.py +++ b/tests/io/vasp/test_inputs.py @@ -1560,7 +1560,7 @@ def test_from_file(self): } def test_potcar_map(self): - fe_potcar = zopen(f"{FAKE_POTCAR_DIR}/POT_GGA_PAW_PBE/POTCAR.Fe_pv.gz").read().decode("utf-8") + fe_potcar = zopen(f"{FAKE_POTCAR_DIR}/POT_GGA_PAW_PBE/POTCAR.Fe_pv.gz", mode="rt", encoding="utf-8").read() # specify V instead of Fe - this makes sure the test won't pass if the # code just grabs the POTCAR from the config file (the config file would # grab the V POTCAR) diff --git a/tests/io/vasp/test_outputs.py b/tests/io/vasp/test_outputs.py index 17916375dae..cd48d28e4de 100644 --- a/tests/io/vasp/test_outputs.py +++ b/tests/io/vasp/test_outputs.py @@ -2175,7 +2175,7 @@ def test_consistency(self): wder_ref = np.loadtxt(f"{VASP_OUT_DIR}/WAVEDERF.Si.gz", skiprows=1) def _check(wder): - with zopen(f"{VASP_OUT_DIR}/WAVEDERF.Si.gz") as file: + with zopen(f"{VASP_OUT_DIR}/WAVEDERF.Si.gz", mode="rt", encoding="utf-8") as file: first_line = [int(a) for a in file.readline().split()] assert wder.nkpoints == first_line[1] assert wder.nbands == first_line[2] From 2f8d6aeec277c5a7c3224ac186191513f57ae0ce Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Fri, 10 Jan 2025 02:14:21 +0800 Subject: [PATCH 17/24] Change `get` default from empty list (`[]`) to `False` when used as `bool` or condition check for `Outcar` parsing methods (#4196) * change boolean default * tiny enhancement of type --- src/pymatgen/io/vasp/outputs.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/pymatgen/io/vasp/outputs.py b/src/pymatgen/io/vasp/outputs.py index 1a15bfb8f2c..633bf4b3379 100644 --- a/src/pymatgen/io/vasp/outputs.py +++ b/src/pymatgen/io/vasp/outputs.py @@ -2150,7 +2150,7 @@ def __init__(self, filename: PathLike) -> None: self.final_energy = e0 self.final_energy_wo_entrp = e_wo_entrp self.final_fr_energy = e_fr_energy - self.data: dict = {} + self.data: dict[str, Any] = {} # Read "number of bands" (NBANDS) self.read_pattern( @@ -2200,11 +2200,11 @@ def __init__(self, filename: PathLike) -> None: # Check if calculation is spin polarized self.read_pattern({"spin": r"ISPIN\s*=\s*2"}) - self.spin = bool(self.data.get("spin", [])) + self.spin = bool(self.data.get("spin", False)) # Check if calculation is non-collinear self.read_pattern({"noncollinear": r"LNONCOLLINEAR\s*=\s*T"}) - self.noncollinear = bool(self.data.get("noncollinear", [])) + self.noncollinear = bool(self.data.get("noncollinear", False)) # Check if the calculation type is DFPT self.read_pattern( @@ -2220,7 +2220,7 @@ def __init__(self, filename: PathLike) -> None: # Check if LEPSILON is True and read piezo data if so self.read_pattern({"epsilon": r"LEPSILON\s*=\s*T"}) - if self.data.get("epsilon", []): + if self.data.get("epsilon", False): self.lepsilon = True self.read_lepsilon() # Only read ionic contribution if DFPT is turned on @@ -2231,7 +2231,7 @@ def __init__(self, filename: PathLike) -> None: # Check if LCALCPOL is True and read polarization data if so self.read_pattern({"calcpol": r"LCALCPOL\s*=\s*T"}) - if self.data.get("calcpol", []): + if self.data.get("calcpol", False): self.lcalcpol = True self.read_lcalcpol() self.read_pseudo_zval() @@ -2243,7 +2243,7 @@ def __init__(self, filename: PathLike) -> None: self.ngf = None self.sampling_radii: list[float] | None = None self.read_pattern({"electrostatic": r"average \(electrostatic\) potential at core"}) - if self.data.get("electrostatic", []): + if self.data.get("electrostatic", False): self.read_electrostatic_potential() self.read_pattern({"nmr_cs": r"LCHIMAG\s*=\s*(T)"}) From e6aabc022b5aea9850868201d17ba1ce423d0ff6 Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Fri, 10 Jan 2025 04:34:32 +0800 Subject: [PATCH 18/24] Remove unnecesary isotope conversion in `core.periodic_table.get_el_sp` (#4193) * add warning for isotope conversion * revert to equality check * revert changes --------- Co-authored-by: Shyue Ping Ong Co-authored-by: Matthew Horton --- src/pymatgen/core/periodic_table.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/pymatgen/core/periodic_table.py b/src/pymatgen/core/periodic_table.py index 7bddfbe6dfd..c08f9bcc30e 100644 --- a/src/pymatgen/core/periodic_table.py +++ b/src/pymatgen/core/periodic_table.py @@ -1631,8 +1631,6 @@ def get_el_sp(obj: int | SpeciesLike) -> Element | Species | DummySpecies: """ # If obj is already an Element or Species, return as is if isinstance(obj, Element | Species | DummySpecies): - if getattr(obj, "_is_named_isotope", False): - return Element(obj.name) if isinstance(obj, Element) else Species(str(obj)) return obj # If obj is an integer, return the Element with atomic number obj From 9918e892bed1612140abb6d6f5afbba4c99b38bc Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Fri, 10 Jan 2025 04:34:55 +0800 Subject: [PATCH 19/24] Clean up `util.num.make_symmetric_matrix_from_upper_tri` and `util.io_util.micro_pyawk`, fix new `ruff` errors (#4192) * migrate io util num changes * fix new ruff errors * more ruff fix in tests * revert SymmOp import * bump pre-commit ruff to recognize TC004 --- src/pymatgen/symmetry/groups.py | 4 +- src/pymatgen/util/io_utils.py | 83 +++++++++++++++++++-------------- src/pymatgen/util/num.py | 51 ++++++++++++++------ tests/util/test_num.py | 75 ++++++++++++++++++++--------- 4 files changed, 138 insertions(+), 75 deletions(-) diff --git a/src/pymatgen/symmetry/groups.py b/src/pymatgen/symmetry/groups.py index 9c0f39b111e..384f7c6163e 100644 --- a/src/pymatgen/symmetry/groups.py +++ b/src/pymatgen/symmetry/groups.py @@ -22,7 +22,7 @@ from pymatgen.util.string import Stringify if TYPE_CHECKING: - from typing import ClassVar, Literal + from typing import ClassVar, Literal, TypeAlias from numpy.typing import ArrayLike from typing_extensions import Self @@ -32,7 +32,7 @@ # Don't import at runtime to avoid circular import from pymatgen.core.operations import SymmOp # noqa: TC004 - CrystalSystem = Literal[ + CrystalSystem: TypeAlias = Literal[ "cubic", "hexagonal", "monoclinic", diff --git a/src/pymatgen/util/io_utils.py b/src/pymatgen/util/io_utils.py index 7bf4efdc2f4..97a0b56b152 100644 --- a/src/pymatgen/util/io_utils.py +++ b/src/pymatgen/util/io_utils.py @@ -2,14 +2,17 @@ from __future__ import annotations -import os import re +import warnings from typing import TYPE_CHECKING from monty.io import zopen if TYPE_CHECKING: - from collections.abc import Iterator + from collections.abc import Callable, Iterator + from typing import Any + + from pymatgen.util.typing import PathLike __author__ = "Shyue Ping Ong, Rickard Armiento, Anubhav Jain, G Matteo, Ioannis Petousis" __copyright__ = "Copyright 2011, The Materials Project" @@ -25,7 +28,7 @@ def clean_lines( remove_empty_lines: bool = True, rstrip_only: bool = False, ) -> Iterator[str]: - """Strips whitespace, carriage returns and empty lines from a list of strings. + """Remove leading and trailing whitespaces from a list of strings. Args: string_list (list[str]): List of strings. @@ -35,10 +38,10 @@ def clean_lines( to retain leading whitespaces). Defaults to False. Yields: - str: clean strings with no whitespaces. + str: clean string with no leading and trailing whitespaces. """ for string in string_list: - clean_string = string + clean_string: str = string if "#" in string: clean_string = string[: string.index("#")] @@ -48,52 +51,62 @@ def clean_lines( yield clean_string -def micro_pyawk(filename, search, results=None, debug=None, postdebug=None): +def micro_pyawk( + filename: PathLike, + search: list[tuple[re.Pattern | str, Callable, Callable]], + results: Any | None = None, + debug: Callable | None = None, + postdebug: Callable | None = None, +) -> Any: """Small awk-mimicking search routine. - 'file' is file to search through. - 'search' is the "search program", a list of lists/tuples with 3 elements; - i.e. [[regex, test, run], [regex, test, run], ...] - 'results' is a an object that your search program will have access to for - storing results. - - Here regex is either as a Regex object, or a string that we compile into a - Regex. test and run are callable objects. + This function goes through each line in the file, and if `regex` matches that + line AND test(results, line) is True (OR test is None) we execute + run(results, match), where match is the Match object from running + Pattern.match. - This function goes through each line in filename, and if regex matches that - line *and* test(results,line)==True (or test is None) we execute - run(results,match), where match is the match object from running - Regex.match. + Args: + filename (PathLike): The file to search through. + search (list[tuple[Pattern | str, Callable, Callable]]): The "search program" of + 3 elements, i.e. [(regex, test, run), ...]. + Here `regex` is either a Pattern object, or a string that we compile + into a Pattern. + results: An object to store results. Default as an empty dictionary. + Passing a results object let you interact with it via `run` and `test`. + Hence, in many occasions it is clever to use the instance itself as results. + debug (Callable): Debug `run`. + postdebug (Callable): Post debug `run` after debug `run`. - The default results is an empty dictionary. Passing a results object let - you interact with it in run() and test(). Hence, in many occasions it is - thus clever to use results=self. + Returns: + Any: The updated `results` object. Author: Rickard Armiento, Ioannis Petousis - - Returns: - dict[str, Any]: The results dictionary. """ + # TODO: remove `debug` and `postdebug` after 2025-11-09 if no one is opposing + if debug is not None: + warnings.warn("arg debug is scheduled for removal, see PR4160", DeprecationWarning, stacklevel=2) + if postdebug is not None: + warnings.warn("arg postdebug is scheduled for removal, see PR4160", DeprecationWarning, stacklevel=2) + if results is None: results = {} - # Compile regex strings - for entry in search: - entry[0] = re.compile(entry[0]) + # Compile regex strings to Patterns + searches: list[tuple[re.Pattern, Callable, Callable]] = [ + (re.compile(regex), test, run) for regex, test, run in search + ] with zopen(filename, mode="rt", encoding="utf-8") as file: for line in file: - for entry in search: - match = re.search(entry[0], line) - if match and (entry[1] is None or entry[1](results, line)): + for regex, test, run in searches: + match = re.search(regex, line) + + if match is not None and (test is None or test(results, line)): if debug is not None: debug(results, match) - entry[2](results, match) + + run(results, match) if postdebug is not None: postdebug(results, match) return results - - -umask = os.umask(0) -os.umask(umask) diff --git a/src/pymatgen/util/num.py b/src/pymatgen/util/num.py index 0db5985ff30..c894063c11f 100644 --- a/src/pymatgen/util/num.py +++ b/src/pymatgen/util/num.py @@ -2,12 +2,20 @@ from __future__ import annotations +from typing import TYPE_CHECKING + import numpy as np +if TYPE_CHECKING: + from numpy.typing import ArrayLike, NDArray + -def round_to_sigfigs(num, sig_figs): - """Rounds a number rounded to a specific number of significant +def round_to_sigfigs(num: float, sig_figs: int) -> float: + """Rounds a number to a specific number of significant figures instead of to a specific precision. + + Returns: + float: rounded number. """ if not isinstance(sig_figs, int): raise TypeError("Number of significant figures must be integer") @@ -22,17 +30,30 @@ def round_to_sigfigs(num, sig_figs): return round(num, prec) -def make_symmetric_matrix_from_upper_tri(val): - """Given a symmetric matrix in upper triangular matrix form as flat array indexes as: - [A_xx,A_yy,A_zz,A_xy,A_xz,A_yz] - This will generate the full matrix: - [[A_xx,A_xy,A_xz],[A_xy,A_yy,A_yz],[A_xz,A_yz,A_zz]. +def make_symmetric_matrix_from_upper_tri(val: ArrayLike) -> NDArray: + """Construct a 3x3 symmetric matrix from its upper triangular + elements in flat array form: + [A_xx, A_yy, A_zz, A_xy, A_xz, A_yz]. + + To the full symmetric matrix: + [[A_xx, A_xy, A_xz], + [A_xy, A_yy, A_yz], + [A_xz, A_yz, A_zz]] + + Args: + val (ArrayLike): Flattened upper triangular elements. + + Returns: + NDArray: The symmetric matrix. """ - idx = [0, 3, 4, 1, 5, 2] - val = np.array(val)[idx] - mask = ~np.tri(3, k=-1, dtype=bool) - out = np.zeros((3, 3), dtype=val.dtype) - out[mask] = val - - out.T[mask] = val - return out + # Check shape of input array, this function is designed for 3x3 array only + if (array := np.asarray(val)).shape != (6,): + raise ValueError(f"Expect val of length 6, got {array.shape}") + + return np.array( + [ + [array[0], array[3], array[4]], + [array[3], array[1], array[5]], + [array[4], array[5], array[2]], + ] + ) diff --git a/tests/util/test_num.py b/tests/util/test_num.py index e391ba92412..61a9ddc1aac 100644 --- a/tests/util/test_num.py +++ b/tests/util/test_num.py @@ -1,27 +1,56 @@ from __future__ import annotations +import math +import re + +import numpy as np import pytest +from numpy.testing import assert_array_equal + +from pymatgen.util.num import make_symmetric_matrix_from_upper_tri, round_to_sigfigs + + +class TestRoundToSigfigs: + def test_round_to_sigfigs(self): + vals = [424.2425, 2.3425356, 0.000042535636653, 0.23, 2.468e6, 0, -1.392156] + rounded_vals = [ + [400.0, 420.0, 424.0, 424.2, 424.24], + [2.0, 2.3, 2.34, 2.343, 2.3425], + [4e-5, 4.3e-5, 4.25e-5, 4.254e-5, 4.2536e-5], + [0.2, 0.23, 0.23, 0.23, 0.23], + [2e6, 2.5e6, 2.47e6, 2.468e6, 2.468e6], + [0, 0, 0, 0, 0], + [-1, -1.4, -1.39, -1.392, -1.3922], + ] + + for idx_val, val in enumerate(vals): + for idx_sig, sig in enumerate(range(1, 6)): + assert math.isclose(round_to_sigfigs(val, sig), rounded_vals[idx_val][idx_sig]) + + def test_exceptions(self): + with pytest.raises(ValueError, match="Number of significant figures must be positive"): + round_to_sigfigs(3.5, -2) + + with pytest.raises(TypeError, match="Number of significant figures must be integer"): + round_to_sigfigs(3.5, 3.5) + + +class TestMakeSymmetricMatrixFromUpperTri: + def test_convert(self): + # Test regular array + val = [1, 2, 3, 4, 5, 6] # A_xx, A_yy, A_zz, A_xy, A_xz, A_yz + expected = np.array( + [ + [1, 4, 5], # A_xx, A_xy, A_xz + [4, 2, 6], # A_xy, A_yy, A_yz + [5, 6, 3], # A_xz, A_yz, A_zz + ] + ) + result = make_symmetric_matrix_from_upper_tri(val) + assert isinstance(result, np.ndarray) + assert_array_equal(result, expected) -from pymatgen.util.num import round_to_sigfigs - - -def test_round(): - vals = [424.2425, 2.3425356, 0.000042535636653, 0.23, 2.468e6, 0, -1.392156] - sig_figs = range(1, 6) - rounded_vals = [ - [400.0, 420.0, 424.0, 424.2, 424.24], - [2.0, 2.3, 2.34, 2.343, 2.3425], - [4e-5, 4.3e-5, 4.25e-5, 4.254e-5, 4.2536e-5], - [0.2, 0.23, 0.23, 0.23, 0.23], - [2e6, 2.5e6, 2.47e6, 2.468e6, 2.468e6], - [0, 0, 0, 0, 0], - [-1, -1.4, -1.39, -1.392, -1.3922], - ] - - for v, val in enumerate(vals): - for s, sig in enumerate(sig_figs): - assert round_to_sigfigs(val, sig) == rounded_vals[v][s] - with pytest.raises(ValueError, match="Number of significant figures must be positive"): - round_to_sigfigs(3.5, -2) - with pytest.raises(TypeError, match="Number of significant figures must be integer"): - round_to_sigfigs(3.5, 3.5) + def test_invalid_val_length(self): + for length in [x for x in range(10) if x != 6]: + with pytest.raises(ValueError, match=re.escape(f"Expect val of length 6, got ({length},)")): + make_symmetric_matrix_from_upper_tri(range(length)) From 361106f53e0b27bd45808c5f59dffa044e2a9181 Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Fri, 10 Jan 2025 04:35:15 +0800 Subject: [PATCH 20/24] Fix array comparison in `core.Structure.merge_sites`, also allow `int` property to be merged instead of `float` alone, `mode` only allow full name (#4198) * oops wrong branch * test __eq__ * fix typo * add test for illegal mode * minor code clean up * add test * add test for non-numerical warning * enhance dostring * more descriptive var name * use pytest skipif mark * mark classvar * remove skip mark altogether, no reason to check test file * add type alias type * NEED CONFIRM: make properties instance var * ruff fix --- src/pymatgen/core/sites.py | 24 +++++----- src/pymatgen/core/structure.py | 80 ++++++++++++++++++++------------ tests/core/test_structure.py | 83 +++++++++++++++++++++++++--------- tests/io/vasp/test_sets.py | 3 -- tests/util/test_misc.py | 24 +++++++--- 5 files changed, 143 insertions(+), 71 deletions(-) diff --git a/src/pymatgen/core/sites.py b/src/pymatgen/core/sites.py index 520a84e6c15..925ea8e7515 100644 --- a/src/pymatgen/core/sites.py +++ b/src/pymatgen/core/sites.py @@ -53,11 +53,11 @@ def __init__( iii.Dict of elements/species and occupancies, e.g. {"Fe" : 0.5, "Mn":0.5}. This allows the setup of disordered structures. - coords: Cartesian coordinates of site. - properties: Properties associated with the site as a dict, e.g. + coords (ArrayLike): Cartesian coordinates of site. + properties (dict): Properties associated with the site, e.g. {"magmom": 5}. Defaults to None. - label: Label for the site. Defaults to None. - skip_checks: Whether to ignore all the usual checks and just + label (str): Label for the site. Defaults to None. + skip_checks (bool): Whether to ignore all the usual checks and just create the site. Use this if the Site is created in a controlled manner and speed is desired. """ @@ -310,20 +310,20 @@ def __init__( symbols, e.g. "Li", "Fe2+", "P" or atomic numbers, e.g. 3, 56, or actual Element or Species objects. iii.Dict of elements/species and occupancies, e.g. - {"Fe" : 0.5, "Mn":0.5}. This allows the setup of + {"Fe": 0.5, "Mn": 0.5}. This allows the setup of disordered structures. - coords: Coordinates of site, fractional coordinates + coords (ArrayLike): Coordinates of site, fractional coordinates by default. See ``coords_are_cartesian`` for more details. - lattice: Lattice associated with the site. - to_unit_cell: Translates fractional coordinate to the + lattice (Lattice): Lattice associated with the site. + to_unit_cell (bool): Translates fractional coordinate to the basic unit cell, i.e. all fractional coordinates satisfy 0 <= a < 1. Defaults to False. - coords_are_cartesian: Set to True if you are providing + coords_are_cartesian (bool): Set to True if you are providing Cartesian coordinates. Defaults to False. - properties: Properties associated with the site as a dict, e.g. + properties (dict): Properties associated with the site, e.g. {"magmom": 5}. Defaults to None. - label: Label for the site. Defaults to None. - skip_checks: Whether to ignore all the usual checks and just + label (str): Label for the site. Defaults to None. + skip_checks (bool): Whether to ignore all the usual checks and just create the site. Use this if the PeriodicSite is created in a controlled manner and speed is desired. """ diff --git a/src/pymatgen/core/structure.py b/src/pymatgen/core/structure.py index 6d0cd6545ae..9cde191afa7 100644 --- a/src/pymatgen/core/structure.py +++ b/src/pymatgen/core/structure.py @@ -46,7 +46,7 @@ if TYPE_CHECKING: from collections.abc import Callable, Iterable, Iterator, Sequence - from typing import Any, SupportsIndex + from typing import Any, ClassVar, SupportsIndex, TypeAlias import pandas as pd from ase import Atoms @@ -59,7 +59,7 @@ from pymatgen.util.typing import CompositionLike, MillerIndex, PathLike, PbcLike, SpeciesLike -FileFormats = Literal[ +FileFormats: TypeAlias = Literal[ "cif", "poscar", "cssr", @@ -73,7 +73,7 @@ "aims", "", ] -StructureSources = Literal["Materials Project", "COD"] +StructureSources: TypeAlias = Literal["Materials Project", "COD"] class Neighbor(Site): @@ -214,8 +214,11 @@ class SiteCollection(collections.abc.Sequence, ABC): """ # Tolerance in Angstrom for determining if sites are too close - DISTANCE_TOLERANCE = 0.5 - _properties: dict + DISTANCE_TOLERANCE: ClassVar[float] = 0.5 + + def __init__(self) -> None: + """Init a SiteCollection.""" + self._properties: dict def __contains__(self, site: object) -> bool: return site in self.sites @@ -4717,44 +4720,63 @@ def scale_lattice(self, volume: float) -> Self: return self - def merge_sites(self, tol: float = 0.01, mode: Literal["sum", "delete", "average"] = "sum") -> Self: - """Merges sites (adding occupancies) within tol of each other. - Removes site properties. + def merge_sites( + self, + tol: float = 0.01, + mode: Literal["sum", "delete", "average"] = "sum", + ) -> Self: + """Merges sites (by adding occupancies) within tolerance and removes + site properties in "sum/delete" modes. Args: tol (float): Tolerance for distance to merge sites. - mode ("sum" | "delete" | "average"): "delete" means duplicate sites are - deleted. "sum" means the occupancies are summed for the sites. - "average" means that the site is deleted but the properties are averaged - Only first letter is considered. + mode ("sum" | "delete" | "average"): Only first letter is considered at this moment. + - "delete": delete duplicate sites. + - "sum": sum the occupancies for the sites. + - "average": delete the site but average the properties if it's numerical. Returns: - Structure: self with merged sites. + Structure: Structure with merged sites. """ - dist_mat = self.distance_matrix + # TODO: change the code the allow full name after 2025-12-01 + # TODO2: add a test for mode value, currently it only checks if first letter is "s/a" + if mode.lower() not in {"sum", "delete", "average"} and mode.lower()[0] in {"s", "d", "a"}: + warnings.warn( + "mode would only allow full name sum/delete/average after 2025-12-01", DeprecationWarning, stacklevel=2 + ) + + if mode.lower()[0] not in {"s", "d", "a"}: + raise ValueError(f"Illegal {mode=}, should start with a/d/s.") + + dist_mat: NDArray = self.distance_matrix np.fill_diagonal(dist_mat, 0) clusters = fcluster(linkage(squareform((dist_mat + dist_mat.T) / 2)), tol, "distance") - sites = [] + + sites: list[PeriodicSite] = [] for cluster in np.unique(clusters): - inds = np.where(clusters == cluster)[0] - species = self[inds[0]].species - coords = self[inds[0]].frac_coords - props = self[inds[0]].properties - for n, i in enumerate(inds[1:]): - sp = self[i].species + indexes = np.where(clusters == cluster)[0] + species: Composition = self[indexes[0]].species + coords: NDArray = self[indexes[0]].frac_coords + props: dict = self[indexes[0]].properties + + for site_idx, clust_idx in enumerate(indexes[1:]): + # Sum occupancies in "sum" mode if mode.lower()[0] == "s": - species += sp - offset = self[i].frac_coords - coords - coords += ((offset - np.round(offset)) / (n + 2)).astype(coords.dtype) - for key in props: - if props[key] is not None and self[i].properties[key] != props[key]: - if mode.lower()[0] == "a" and isinstance(props[key], float): + species += self[clust_idx].species + + offset = self[clust_idx].frac_coords - coords + coords += ((offset - np.round(offset)) / (site_idx + 2)).astype(coords.dtype) + for key, val in props.items(): + if val is not None and not np.array_equal(self[clust_idx].properties[key], val): + if mode.lower()[0] == "a" and isinstance(val, float | int): # update a running total - props[key] = props[key] * (n + 1) / (n + 2) + self[i].properties[key] / (n + 2) + props[key] = val * (site_idx + 1) / (site_idx + 2) + self[clust_idx].properties[key] / ( + site_idx + 2 + ) else: props[key] = None warnings.warn( - f"Sites with different site property {key} are merged. So property is set to none", + f"Sites with different site property {key} are merged. But property is set to None", stacklevel=2, ) sites.append(PeriodicSite(species, coords, self.lattice, properties=props)) diff --git a/tests/core/test_structure.py b/tests/core/test_structure.py index 510d25846a5..91904667085 100644 --- a/tests/core/test_structure.py +++ b/tests/core/test_structure.py @@ -1,11 +1,11 @@ from __future__ import annotations import json +import math import os from fractions import Fraction from pathlib import Path from shutil import which -from unittest import skipIf import numpy as np import pytest @@ -29,6 +29,7 @@ from pymatgen.electronic_structure.core import Magmom from pymatgen.io.ase import AseAtomsAdaptor from pymatgen.io.cif import CifParser +from pymatgen.io.vasp.inputs import Poscar from pymatgen.symmetry.analyzer import SpacegroupAnalyzer from pymatgen.util.testing import TEST_FILES_DIR, VASP_IN_DIR, PymatgenTest @@ -40,11 +41,11 @@ ase = Atoms = Calculator = EMT = None -enum_cmd = which("enum.x") or which("multienum.x") -mcsqs_cmd = which("mcsqs") +ENUM_CMD = which("enum.x") or which("multienum.x") +MCSQS_CMD = which("mcsqs") -class TestNeighbor(PymatgenTest): +class TestNeighbor: def test_msonable(self): struct = PymatgenTest.get_structure("Li2O") nn = struct.get_neighbors(struct[0], r=3) @@ -102,7 +103,7 @@ def setUp(self): ) self.V2O3 = IStructure.from_file(f"{TEST_FILES_DIR}/cif/V2O3.cif") - @skipIf(not (mcsqs_cmd and enum_cmd), reason="enumlib or mcsqs executable not present") + @pytest.mark.skipif(not (MCSQS_CMD and ENUM_CMD), reason="enumlib or mcsqs executable not present") def test_get_orderings(self): ordered = Structure.from_spacegroup("Im-3m", Lattice.cubic(3), ["Fe"], [[0, 0, 0]]) assert ordered.get_orderings()[0] == ordered @@ -1633,12 +1634,16 @@ def test_merge_sites(self): [0.5, 0.5, 1.501], ] struct = Structure(Lattice.cubic(1), species, coords) - struct.merge_sites(mode="s") + struct.merge_sites(mode="sum") assert struct[0].specie.symbol == "Ag" assert struct[1].species == Composition({"Cl": 0.35, "F": 0.25}) assert_allclose(struct[1].frac_coords, [0.5, 0.5, 0.5005]) - # Test for TaS2 with spacegroup 166 in 160 setting. + # Test illegal mode + with pytest.raises(ValueError, match="Illegal mode='illegal', should start with a/d/s"): + struct.merge_sites(mode="illegal") + + # Test for TaS2 with spacegroup 166 in 160 setting lattice = Lattice.hexagonal(3.374351, 20.308941) species = ["Ta", "S", "S"] coords = [ @@ -1646,10 +1651,10 @@ def test_merge_sites(self): [0.333333, 0.666667, 0.353424], [0.666667, 0.333333, 0.535243], ] - tas2 = Structure.from_spacegroup(160, lattice, species, coords) - assert len(tas2) == 13 - tas2.merge_sites(mode="d") - assert len(tas2) == 9 + struct_tas2 = Structure.from_spacegroup(160, lattice, species, coords) + assert len(struct_tas2) == 13 + struct_tas2.merge_sites(mode="delete") + assert len(struct_tas2) == 9 lattice = Lattice.hexagonal(3.587776, 19.622793) species = ["Na", "V", "S", "S"] @@ -1659,12 +1664,12 @@ def test_merge_sites(self): [0.333333, 0.666667, 0.399394], [0.666667, 0.333333, 0.597273], ] - navs2 = Structure.from_spacegroup(160, lattice, species, coords) - assert len(navs2) == 18 - navs2.merge_sites(mode="d") - assert len(navs2) == 12 + struct_navs2 = Structure.from_spacegroup(160, lattice, species, coords) + assert len(struct_navs2) == 18 + struct_navs2.merge_sites(mode="delete") + assert len(struct_navs2) == 12 - # Test that we can average the site properties that are floats + # Test that we can average the site properties that are numerical (float/int) lattice = Lattice.hexagonal(3.587776, 19.622793) species = ["Na", "V", "S", "S"] coords = [ @@ -1674,11 +1679,47 @@ def test_merge_sites(self): [0.666667, 0.333333, 0.597273], ] site_props = {"prop1": [3.0, 5.0, 7.0, 11.0]} - navs2 = Structure.from_spacegroup(160, lattice, species, coords, site_properties=site_props) - navs2.insert(0, "Na", coords[0], properties={"prop1": 100.0}) - navs2.merge_sites(mode="a") - assert len(navs2) == 12 - assert 51.5 in [itr.properties["prop1"] for itr in navs2] + struct_navs2 = Structure.from_spacegroup(160, lattice, species, coords, site_properties=site_props) + struct_navs2.insert(0, "Na", coords[0], properties={"prop1": 100}) # int property + struct_navs2.merge_sites(mode="average") + assert len(struct_navs2) == 12 + assert any(math.isclose(site.properties["prop1"], 51.5) for site in struct_navs2) + + # Test non-numerical property warning + struct_navs2.insert(0, "Na", coords[0], properties={"prop1": "hi"}) + with pytest.warns(UserWarning, match="But property is set to None"): + struct_navs2.merge_sites(mode="average") + + # Test property handling for np.array (selective dynamics) + poscar_str_0 = """Test POSCAR +1.0 +3.840198 0.000000 0.000000 +1.920099 3.325710 0.000000 +0.000000 -2.217138 3.135509 +1 1 +Selective dynamics +direct +0.000000 0.000000 0.000000 T T T Si +0.750000 0.500000 0.750000 F F F O +""" + poscar_str_1 = """offset a bit +1.0 +3.840198 0.000000 0.000000 +1.920099 3.325710 0.000000 +0.000000 -2.217138 3.135509 +1 1 +Selective dynamics +direct +0.100000 0.000000 0.000000 T T T Si +0.750000 0.500000 0.750000 F F F O +""" + + struct_0 = Poscar.from_str(poscar_str_0).structure + struct_1 = Poscar.from_str(poscar_str_1).structure + + for site in struct_0: + struct_1.append(site.species, site.frac_coords, properties=site.properties) + struct_1.merge_sites(mode="average") def test_properties(self): assert self.struct.num_sites == len(self.struct) diff --git a/tests/io/vasp/test_sets.py b/tests/io/vasp/test_sets.py index cef111d7d7e..243f365171c 100644 --- a/tests/io/vasp/test_sets.py +++ b/tests/io/vasp/test_sets.py @@ -2,7 +2,6 @@ import hashlib import os -import unittest from glob import glob from zipfile import ZipFile @@ -1610,7 +1609,6 @@ def test_user_incar_settings(self): assert not vis.incar["LASPH"], "LASPH user setting not applied" assert vis.incar["VDW_SR"] == 1.5, "VDW_SR user setting not applied" - @unittest.skipIf(not os.path.exists(TEST_DIR), "Test files are not present.") def test_from_prev_calc(self): prev_run = os.path.join(TEST_DIR, "fixtures", "relaxation") @@ -1627,7 +1625,6 @@ def test_from_prev_calc(self): assert "VDW_A2" in vis_bj.incar assert "VDW_S8" in vis_bj.incar - @unittest.skipIf(not os.path.exists(TEST_DIR), "Test files are not present.") def test_override_from_prev_calc(self): prev_run = os.path.join(TEST_DIR, "fixtures", "relaxation") diff --git a/tests/util/test_misc.py b/tests/util/test_misc.py index 4bcf881dcad..64fe7107bb0 100644 --- a/tests/util/test_misc.py +++ b/tests/util/test_misc.py @@ -46,12 +46,6 @@ def test_nested_arrays(self): def test_diff_dtype(self): """Make sure it also works for other data types as value.""" - - @dataclass - class CustomClass: - name: str - value: int - # Test with bool values dict1 = {"a": True} dict2 = {"a": True} @@ -69,6 +63,11 @@ class CustomClass: assert not is_np_dict_equal(dict4, dict6) # Test with a custom data class + @dataclass + class CustomClass: + name: str + value: int + dict7 = {"a": CustomClass(name="test", value=1)} dict8 = {"a": CustomClass(name="test", value=1)} assert is_np_dict_equal(dict7, dict8) @@ -76,6 +75,19 @@ class CustomClass: dict9 = {"a": CustomClass(name="test", value=2)} assert not is_np_dict_equal(dict7, dict9) + # Test __eq__ method being used + @dataclass + class NewCustomClass: + name: str + value: int + + def __eq__(self, other): + return True + + dict7_1 = {"a": NewCustomClass(name="test", value=1)} + dict8_1 = {"a": NewCustomClass(name="hello", value=2)} + assert is_np_dict_equal(dict7_1, dict8_1) + # Test with None dict10 = {"a": None} dict11 = {"a": None} From 777a6b26550bcc818957fd908a8c99c7bd186330 Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Fri, 10 Jan 2025 04:37:58 +0800 Subject: [PATCH 21/24] Explicit UTF-8 encoding for VASP input files with `zopen`, and `open` for other text files (#4218) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * explicit utf-8 encoding for kpoints from file * explicit utf-8 elsewhere * fix root level and dev_scripts * simplify PMG PKG path * fix analysis, cli, command_line * fix electronic_structure, entries and ext * fix io, phonon and symmetry * fix alchemy and anlysis tests * fix apps, command_line, core, elec_struct, entries, ext and vis tests * finish io and phonon tests * remove unnecessary seek * revert encoding for json dump * type custom paths * revert another json dump * ignore userwarning by default * relocate test-only env var * remove unneeded default tag for non-userwarning * also explicit utf-8 for json dump though forced ASCII * utf8 is alias to utf-8 in codecs, but maybe prefer the standard name * fix missing encoding in comment * add test for Γ decoding * better error message --------- Signed-off-by: Matthew Horton Co-authored-by: Shyue Ping Ong Co-authored-by: Matthew Horton --- .github/workflows/test.yml | 4 +-- dev_scripts/chemenv/explicit_permutations.py | 2 +- .../explicit_permutations_plane_algorithm.py | 2 +- .../get_plane_permutations_optimized.py | 2 +- dev_scripts/regen_libxcfunc.py | 14 ++++---- dev_scripts/update_pt_data.py | 36 +++++++++---------- docs/usage.md | 4 +-- .../coordination_geometries.py | 6 ++-- .../analysis/chemenv/utils/chemenv_config.py | 4 +-- src/pymatgen/analysis/chempot_diagram.py | 4 +-- src/pymatgen/analysis/cost.py | 2 +- src/pymatgen/analysis/graphs.py | 4 +-- src/pymatgen/analysis/hhi.py | 2 +- src/pymatgen/analysis/interface_reactions.py | 4 +-- .../substitution_probability.py | 2 +- src/pymatgen/cli/pmg_potcar.py | 2 +- src/pymatgen/command_line/chargemol_caller.py | 8 ++--- src/pymatgen/command_line/enumlib_caller.py | 4 +-- src/pymatgen/command_line/gulp_caller.py | 4 +-- src/pymatgen/command_line/mcsqs_caller.py | 14 ++++---- src/pymatgen/command_line/vampire_caller.py | 6 ++-- src/pymatgen/core/__init__.py | 10 +++--- .../electronic_structure/boltztrap.py | 34 +++++++++--------- src/pymatgen/entries/computed_entries.py | 4 +-- src/pymatgen/entries/correction_calculator.py | 2 +- src/pymatgen/entries/entry_tools.py | 2 +- src/pymatgen/ext/matproj_legacy.py | 4 +-- src/pymatgen/io/abinit/abitimer.py | 4 +-- src/pymatgen/io/abinit/inputs.py | 2 +- src/pymatgen/io/adf.py | 4 +-- src/pymatgen/io/aims/inputs.py | 4 +-- src/pymatgen/io/aims/parsers.py | 4 +-- src/pymatgen/io/aims/sets/base.py | 2 +- src/pymatgen/io/feff/sets.py | 4 +-- src/pymatgen/io/lammps/inputs.py | 2 +- src/pymatgen/io/lammps/utils.py | 2 +- src/pymatgen/io/multiwfn.py | 2 +- src/pymatgen/io/pwmat/inputs.py | 6 ++-- src/pymatgen/io/qchem/outputs.py | 2 +- src/pymatgen/io/xtb/inputs.py | 2 +- src/pymatgen/phonon/bandstructure.py | 2 +- src/pymatgen/phonon/ir_spectra.py | 2 +- src/pymatgen/phonon/thermal_displacements.py | 2 +- src/pymatgen/symmetry/maggroups.py | 2 +- tasks.py | 8 ++--- tests/alchemy/test_filters.py | 4 +-- tests/alchemy/test_materials.py | 2 +- .../connectivity/test_connected_components.py | 2 +- .../test_structure_connectivity.py | 2 +- .../test_coordination_geometry_finder.py | 2 +- .../test_read_write.py | 18 +++++----- .../test_structure_environments.py | 4 +-- .../coordination_environments/test_weights.py | 8 ++--- tests/analysis/elasticity/test_elastic.py | 10 +++--- .../test_substitution_probability.py | 2 +- .../structure_prediction/test_substitutor.py | 2 +- tests/analysis/test_graphs.py | 2 +- tests/analysis/test_molecule_matcher.py | 4 +-- tests/analysis/test_structure_matcher.py | 2 +- tests/analysis/test_surface_analysis.py | 16 ++++----- tests/analysis/test_transition_state.py | 2 +- tests/analysis/test_wulff.py | 2 +- tests/analysis/xas/test_spectrum.py | 12 +++---- tests/apps/battery/test_conversion_battery.py | 2 +- tests/apps/battery/test_insertion_battery.py | 8 ++--- tests/apps/battery/test_plotter.py | 4 +-- tests/command_line/test_critic2_caller.py | 4 +-- tests/command_line/test_gulp_caller.py | 2 +- tests/core/test_structure.py | 10 +++--- tests/core/test_surface.py | 2 +- .../test_bandstructure.py | 4 ++- tests/electronic_structure/test_boltztrap.py | 4 ++- tests/electronic_structure/test_cohp.py | 28 +++++++-------- tests/electronic_structure/test_dos.py | 20 +++++------ tests/electronic_structure/test_plotter.py | 22 ++++++------ tests/entries/test_compatibility.py | 2 +- tests/entries/test_computed_entries.py | 4 ++- tests/entries/test_exp_entries.py | 2 +- tests/entries/test_mixing_scheme.py | 2 +- tests/ext/test_matproj.py | 2 +- tests/files/io/vasp/inputs/KPOINTS_band | 6 ++-- tests/io/aims/conftest.py | 8 ++--- tests/io/lammps/test_data.py | 2 +- tests/io/lammps/test_inputs.py | 10 +++--- tests/io/lammps/test_outputs.py | 4 +-- tests/io/lobster/test_inputs.py | 2 +- tests/io/lobster/test_outputs.py | 2 +- tests/io/qchem/test_inputs.py | 10 +++--- tests/io/qchem/test_sets.py | 2 +- tests/io/test_adf.py | 2 +- tests/io/test_cif.py | 28 +++++++-------- tests/io/test_core.py | 4 +-- tests/io/test_gaussian.py | 2 +- tests/io/test_multiwfn.py | 12 +++---- tests/io/test_packmol.py | 4 +-- tests/io/test_res.py | 4 +-- tests/io/test_shengbte.py | 8 ++--- tests/io/test_template_input.py | 4 +-- tests/io/vasp/test_inputs.py | 9 +++-- tests/io/vasp/test_outputs.py | 2 +- tests/io/vasp/test_sets.py | 2 +- tests/io/xtb/test_inputs.py | 2 +- tests/phonon/test_bandstructure.py | 4 +-- tests/phonon/test_dos.py | 6 ++-- tests/phonon/test_plotter.py | 12 ++++--- tests/phonon/test_thermal_displacements.py | 6 ++-- .../test_advanced_transformations.py | 2 +- .../test_standard_transformations.py | 2 +- tests/vis/test_plotters.py | 2 +- 109 files changed, 319 insertions(+), 304 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 039dfee92e4..62559c8fc65 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -52,12 +52,10 @@ jobs: split: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] runs-on: ${{ matrix.config.os }} - env: MPLBACKEND: Agg # non-interactive backend for matplotlib PMG_MAPI_KEY: ${{ secrets.PMG_MAPI_KEY }} PYTHONWARNDEFAULTENCODING: "true" # PEP 597: Enable optional EncodingWarning - steps: - name: Check out repo uses: actions/checkout@v4 @@ -107,6 +105,8 @@ jobs: - name: pytest split ${{ matrix.split }} env: + MPLBACKEND: Agg # non-interactive backend for matplotlib + PMG_MAPI_KEY: ${{ secrets.PMG_MAPI_KEY }} PMG_TEST_FILES_DIR: "${{ github.workspace }}/tests/files" run: | micromamba activate pmg diff --git a/dev_scripts/chemenv/explicit_permutations.py b/dev_scripts/chemenv/explicit_permutations.py index f3225fa5293..96dd93ff829 100644 --- a/dev_scripts/chemenv/explicit_permutations.py +++ b/dev_scripts/chemenv/explicit_permutations.py @@ -93,5 +93,5 @@ class Algo: cg._algorithms = [ExplicitPermutationsAlgorithm(permutations=explicit_permutations)] new_geom_dir = "new_geometry_files" os.makedirs(new_geom_dir, exist_ok=True) - with open(f"{new_geom_dir}/{cg_symbol}.json", mode="w") as file: + with open(f"{new_geom_dir}/{cg_symbol}.json", mode="w", encoding="utf-8") as file: json.dump(cg.as_dict(), file) diff --git a/dev_scripts/chemenv/explicit_permutations_plane_algorithm.py b/dev_scripts/chemenv/explicit_permutations_plane_algorithm.py index 87f7ec9088d..951788cb242 100644 --- a/dev_scripts/chemenv/explicit_permutations_plane_algorithm.py +++ b/dev_scripts/chemenv/explicit_permutations_plane_algorithm.py @@ -159,5 +159,5 @@ if test == "y": cg._algorithms = new_algos cg_dict = cg.as_dict() - with open(f"../coordination_geometries_files_new/{cg_symbol}.json", mode="w") as file: + with open(f"../coordination_geometries_files_new/{cg_symbol}.json", mode="w", encoding="utf-8") as file: json.dump(cg_dict, file) diff --git a/dev_scripts/chemenv/get_plane_permutations_optimized.py b/dev_scripts/chemenv/get_plane_permutations_optimized.py index f1b399193aa..f2e2e8ff9b2 100644 --- a/dev_scripts/chemenv/get_plane_permutations_optimized.py +++ b/dev_scripts/chemenv/get_plane_permutations_optimized.py @@ -444,5 +444,5 @@ def random_permutations_iterator(initial_permutation, n_permutations): if test == "y": new_geom_dir = "new_geometry_files" os.makedirs(new_geom_dir, exist_ok=True) - with open(f"{new_geom_dir}/{cg_symbol}.json", mode="w") as file: + with open(f"{new_geom_dir}/{cg_symbol}.json", mode="w", encoding="utf-8") as file: json.dump(cg.as_dict(), file) diff --git a/dev_scripts/regen_libxcfunc.py b/dev_scripts/regen_libxcfunc.py index 7524f460030..64e5f982068 100755 --- a/dev_scripts/regen_libxcfunc.py +++ b/dev_scripts/regen_libxcfunc.py @@ -10,10 +10,11 @@ from __future__ import annotations import json -import os import sys from copy import deepcopy +from pymatgen.core import PKG_DIR + def parse_libxc_docs(path): """Parse libxc_docs.txt file, return dictionary {libxc_id: info_dict}.""" @@ -27,7 +28,7 @@ def parse_section(section): return int(dct["Number"]), dct dct = {} - with open(path) as file: + with open(path, encoding="utf-8") as file: section = [] for line in file: if not line.startswith("-"): @@ -62,7 +63,7 @@ def write_libxc_docs_json(xc_funcs, json_path): if desc is not None: xc_funcs[num][opt] = desc - with open(json_path, "w") as fh: + with open(json_path, "w", encoding="utf-8") as fh: json.dump(xc_funcs, fh) return xc_funcs @@ -85,8 +86,7 @@ def main(): xc_funcs = parse_libxc_docs(path) # Generate new JSON file in pycore - pmg_core = os.path.abspath("../pymatgen/core/") - json_path = f"{pmg_core}/libxc_docs.json" + json_path = f"{PKG_DIR}/core/libxc_docs.json" write_libxc_docs_json(xc_funcs, json_path) # Build new enum list. @@ -99,8 +99,8 @@ def main(): # Re-generate enumerations. # [0] read py module. - xc_funcpy_path = f"{pmg_core}/libxcfunc.py" - with open(xc_funcpy_path) as file: + xc_funcpy_path = f"{PKG_DIR}/core/libxcfunc.py" + with open(xc_funcpy_path, encoding="utf-8") as file: lines = file.readlines() # [1] insert new enum values in list diff --git a/dev_scripts/update_pt_data.py b/dev_scripts/update_pt_data.py index af007d819b4..252ffd3b999 100644 --- a/dev_scripts/update_pt_data.py +++ b/dev_scripts/update_pt_data.py @@ -13,7 +13,7 @@ from monty.serialization import dumpfn, loadfn from ruamel import yaml -from pymatgen.core import Element, get_el_sp +from pymatgen.core import PKG_DIR, Element, get_el_sp try: from bs4 import BeautifulSoup @@ -25,7 +25,7 @@ def parse_oxi_state(): data = loadfn(PTABLE_YAML_PATH) - with open("oxidation_states.txt") as file: + with open("oxidation_states.txt", encoding="utf-8") as file: oxi_data = file.read() oxi_data = re.sub("[\n\r]", "", oxi_data) patt = re.compile("(.*?)", re.MULTILINE) @@ -57,13 +57,13 @@ def parse_oxi_state(): data[el]["Common oxidation states"] = common_oxi else: print(el) - with open("periodic_table2.yaml", mode="w") as file: + with open("periodic_table2.yaml", mode="w", encoding="utf-8") as file: yaml.dump(data, file) def parse_ionic_radii(): data = loadfn(PTABLE_YAML_PATH) - with open("ionic_radii.csv") as file: + with open("ionic_radii.csv", encoding="utf-8") as file: radii_data = file.read() radii_data = radii_data.split("\r") header = radii_data[0].split(",") @@ -87,13 +87,13 @@ def parse_ionic_radii(): data[el]["Ionic_radii"] = ionic_radii else: print(el) - with open("periodic_table2.yaml", mode="w") as file: + with open("periodic_table2.yaml", mode="w", encoding="utf-8") as file: yaml.dump(data, file) def parse_radii(): data = loadfn(PTABLE_YAML_PATH) - with open("radii.csv") as file: + with open("radii.csv", encoding="utf-8") as file: radii_data = file.read() radii_data = radii_data.split("\r") @@ -121,9 +121,9 @@ def parse_radii(): data[el]["Van der waals radius"] = vdw_radii else: print(el) - with open("periodic_table2.yaml", mode="w") as file: + with open("periodic_table2.yaml", mode="w", encoding="utf-8") as file: yaml.dump(data, file) - with open("../pymatgen/core/periodic_table.json", mode="w") as file: + with open(f"{PKG_DIR}/core/periodic_table.json", mode="w", encoding="utf-8") as file: json.dump(data, file) @@ -140,9 +140,9 @@ def update_ionic_radii(): if "Ionic_radii_ls" in dct: dct["Ionic radii ls"] = {k: v / 100 for k, v in dct["Ionic_radii_ls"].items()} del dct["Ionic_radii_ls"] - with open("periodic_table2.yaml", mode="w") as file: + with open("periodic_table2.yaml", mode="w", encoding="utf-8") as file: yaml.dump(data, file) - with open("../pymatgen/core/periodic_table.json", mode="w") as file: + with open(f"{PKG_DIR}/core/periodic_table.json", mode="w", encoding="utf-8") as file: json.dump(data, file) @@ -180,19 +180,19 @@ def parse_shannon_radii(): data[el]["Shannon radii"] = dict(radii[el]) dumpfn(data, PTABLE_YAML_PATH) - with open("../pymatgen/core/periodic_table.json", mode="w") as file: + with open(f"{PKG_DIR}/core/periodic_table.json", mode="w", encoding="utf-8") as file: json.dump(data, file) def gen_periodic_table(): data = loadfn(PTABLE_YAML_PATH) - with open("../pymatgen/core/periodic_table.json", mode="w") as file: + with open(f"{PKG_DIR}/core/periodic_table.json", mode="w", encoding="utf-8") as file: json.dump(data, file) def gen_iupac_ordering(): - periodic_table = loadfn("../pymatgen/core/periodic_table.json") + periodic_table = loadfn(f"{PKG_DIR}/core/periodic_table.json") order = [ ([18], range(6, 0, -1)), # noble gasses ([1], range(7, 1, -1)), # alkali metals @@ -274,16 +274,16 @@ def add_electron_affinities(): missing_electron_affinities = set(range(1, 93)) - Z_set raise ValueError(f"{missing_electron_affinities=}") print(element_electron_affinities) - pt = loadfn("../pymatgen/core/periodic_table.json") + pt = loadfn(f"{PKG_DIR}/core/periodic_table.json") for key, val in pt.items(): val["Electron affinity"] = element_electron_affinities.get(Element(key).long_name) - dumpfn(pt, "../pymatgen/core/periodic_table.json") + dumpfn(pt, f"{PKG_DIR}/core/periodic_table.json") def add_ionization_energies(): """Update the periodic table data file with ground level and ionization energies from NIST.""" - with open("NIST Atomic Ionization Energies Output.html") as file: + with open("NIST Atomic Ionization Energies Output.html", encoding="utf-8") as file: soup = BeautifulSoup(file.read(), "html.parser") table = None for table in soup.find_all("table"): @@ -302,11 +302,11 @@ def add_ionization_energies(): if not set(data).issuperset(range(1, 93)): raise RuntimeError("Failed to get data up to Uranium") - pt = loadfn("../pymatgen/core/periodic_table.json") + pt = loadfn(f"{PKG_DIR}/core/periodic_table.json") for key, val in pt.items(): del val["Ionization energy"] val["Ionization energies"] = data.get(Element(key).long_name, []) - dumpfn(pt, "../pymatgen/core/periodic_table.json") + dumpfn(pt, f"{PKG_DIR}/core/periodic_table.json") if __name__ == "__main__": diff --git a/docs/usage.md b/docs/usage.md index f7840ed0875..603d2c13b63 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -65,14 +65,14 @@ which is a general python supplementary library arising from pymatgen. The output from an as_dict method is always json/yaml serializable. So if you want to save a structure, you may do the following:: - with open('structure.json', 'w') as file: + with open("structure.json", "w", encoding="utf-8") as file: json.dump(structure.as_dict(), file) Similarly, to get the structure back from a json, you can do the following to restore the structure (or any object with an as_dict method) from the json as follows:: - with open('structure.json') as file: + with open("structure.json", encoding="utf-8") as file: dct = json.load(file) structure = Structure.from_dict(dct) diff --git a/src/pymatgen/analysis/chemenv/coordination_environments/coordination_geometries.py b/src/pymatgen/analysis/chemenv/coordination_environments/coordination_geometries.py index b0661bbb4a8..8a8249265a2 100644 --- a/src/pymatgen/analysis/chemenv/coordination_environments/coordination_geometries.py +++ b/src/pymatgen/analysis/chemenv/coordination_environments/coordination_geometries.py @@ -861,18 +861,18 @@ def __init__(self, permutations_safe_override=False, only_symbols=None): dict.__init__(self) self.cg_list: list[CoordinationGeometry] = [] if only_symbols is None: - with open(f"{MODULE_DIR}/coordination_geometries_files/allcg.txt") as file: + with open(f"{MODULE_DIR}/coordination_geometries_files/allcg.txt", encoding="utf-8") as file: data = file.readlines() for line in data: cg_file = f"{MODULE_DIR}/{line.strip()}" - with open(cg_file) as file: + with open(cg_file, encoding="utf-8") as file: dd = json.load(file) self.cg_list.append(CoordinationGeometry.from_dict(dd)) else: for symbol in only_symbols: fsymbol = symbol.replace(":", "#") cg_file = f"{MODULE_DIR}/coordination_geometries_files/{fsymbol}.json" - with open(cg_file) as file: + with open(cg_file, encoding="utf-8") as file: dd = json.load(file) self.cg_list.append(CoordinationGeometry.from_dict(dd)) diff --git a/src/pymatgen/analysis/chemenv/utils/chemenv_config.py b/src/pymatgen/analysis/chemenv/utils/chemenv_config.py index 90615c9b66f..49cd8450c37 100644 --- a/src/pymatgen/analysis/chemenv/utils/chemenv_config.py +++ b/src/pymatgen/analysis/chemenv/utils/chemenv_config.py @@ -153,7 +153,7 @@ def save(self, root_dir=None): if test != "Y": print("Configuration not saved") return config_file - with open(config_file, mode="w") as file: + with open(config_file, mode="w", encoding="utf-8") as file: json.dump(config_dict, file) print("Configuration saved") return config_file @@ -171,7 +171,7 @@ def auto_load(cls, root_dir=None): root_dir = f"{home}/.chemenv" config_file = f"{root_dir}/config.json" try: - with open(config_file) as file: + with open(config_file, encoding="utf-8") as file: config_dict = json.load(file) return ChemEnvConfig(package_options=config_dict["package_options"]) diff --git a/src/pymatgen/analysis/chempot_diagram.py b/src/pymatgen/analysis/chempot_diagram.py index 802c519e580..ec917133e5d 100644 --- a/src/pymatgen/analysis/chempot_diagram.py +++ b/src/pymatgen/analysis/chempot_diagram.py @@ -23,7 +23,6 @@ from __future__ import annotations import json -import os import warnings from functools import lru_cache from itertools import groupby @@ -36,6 +35,7 @@ from scipy.spatial import ConvexHull, HalfspaceIntersection from pymatgen.analysis.phase_diagram import PDEntry, PhaseDiagram +from pymatgen.core import PKG_DIR from pymatgen.core.composition import Composition, Element from pymatgen.util.coord import Simplex from pymatgen.util.due import Doi, due @@ -44,7 +44,7 @@ if TYPE_CHECKING: from pymatgen.entries.computed_entries import ComputedEntry -with open(f"{os.path.dirname(__file__)}/../util/plotly_chempot_layouts.json") as file: +with open(f"{PKG_DIR}/util/plotly_chempot_layouts.json", encoding="utf-8") as file: plotly_layouts = json.load(file) diff --git a/src/pymatgen/analysis/cost.py b/src/pymatgen/analysis/cost.py index 564dfbf8db2..ba92576d52a 100644 --- a/src/pymatgen/analysis/cost.py +++ b/src/pymatgen/analysis/cost.py @@ -85,7 +85,7 @@ def __init__(self, filename): # read in data from file self._chemsys_entries = defaultdict(list) filename = os.path.join(os.path.dirname(__file__), filename) - with open(filename) as file: + with open(filename, encoding="utf-8") as file: reader = csv.reader(file, quotechar="|") for row in reader: comp = Composition(row[0]) diff --git a/src/pymatgen/analysis/graphs.py b/src/pymatgen/analysis/graphs.py index aeff8ae9927..52ee441718f 100644 --- a/src/pymatgen/analysis/graphs.py +++ b/src/pymatgen/analysis/graphs.py @@ -975,7 +975,7 @@ def draw_graph_to_file( write_dot(g, f"{basename}.dot") - with open(filename, mode="w") as file: + with open(filename, mode="w", encoding="utf-8") as file: args = [algo, "-T", extension, f"{basename}.dot"] with subprocess.Popen(args, stdout=file, stdin=subprocess.PIPE, close_fds=True) as rs: rs.communicate() @@ -2644,7 +2644,7 @@ def draw_graph_to_file( write_dot(g, f"{basename}.dot") - with open(filename, mode="w") as file: + with open(filename, mode="w", encoding="utf-8") as file: args = [algo, "-T", extension, f"{basename}.dot"] with subprocess.Popen(args, stdout=file, stdin=subprocess.PIPE, close_fds=True) as rs: rs.communicate() diff --git a/src/pymatgen/analysis/hhi.py b/src/pymatgen/analysis/hhi.py index 074e412b3d1..694fd26d778 100644 --- a/src/pymatgen/analysis/hhi.py +++ b/src/pymatgen/analysis/hhi.py @@ -37,7 +37,7 @@ def __init__(self): """Init for HHIModel.""" self.symbol_hhip_hhir = {} # symbol->(HHI_production, HHI reserve) - with open(HHI_CSV_PATH) as file: + with open(HHI_CSV_PATH, encoding="utf-8") as file: for line in file: if line[0] != "#": symbol, hhi_production, hhi_reserve = line.split(",") diff --git a/src/pymatgen/analysis/interface_reactions.py b/src/pymatgen/analysis/interface_reactions.py index bd612580fb8..8c0d64d4092 100644 --- a/src/pymatgen/analysis/interface_reactions.py +++ b/src/pymatgen/analysis/interface_reactions.py @@ -6,7 +6,6 @@ from __future__ import annotations import json -import os import warnings from typing import TYPE_CHECKING @@ -18,6 +17,7 @@ from pymatgen.analysis.phase_diagram import GrandPotentialPhaseDiagram, PhaseDiagram from pymatgen.analysis.reaction_calculator import Reaction +from pymatgen.core import PKG_DIR from pymatgen.core.composition import Composition from pymatgen.util.due import Doi, due from pymatgen.util.plotting import pretty_plot @@ -31,7 +31,7 @@ __email__ = "mcdermott@lbl.gov" __date__ = "Sep 1, 2021" -with open(os.path.join(os.path.dirname(__file__), "..", "util", "plotly_interface_rxn_layouts.json")) as file: +with open(f"{PKG_DIR}/util/plotly_interface_rxn_layouts.json", encoding="utf-8") as file: plotly_layouts = json.load(file) diff --git a/src/pymatgen/analysis/structure_prediction/substitution_probability.py b/src/pymatgen/analysis/structure_prediction/substitution_probability.py index 285fe86158b..55e97ec3c68 100644 --- a/src/pymatgen/analysis/structure_prediction/substitution_probability.py +++ b/src/pymatgen/analysis/structure_prediction/substitution_probability.py @@ -59,7 +59,7 @@ def __init__(self, lambda_table=None, alpha=-5): else: module_dir = os.path.dirname(__file__) json_file = f"{module_dir}/data/lambda.json" - with open(json_file) as file: + with open(json_file, encoding="utf-8") as file: self._lambda_table = json.load(file) # build map of specie pairs to lambdas diff --git a/src/pymatgen/cli/pmg_potcar.py b/src/pymatgen/cli/pmg_potcar.py index aaf064ff374..42003733e0d 100755 --- a/src/pymatgen/cli/pmg_potcar.py +++ b/src/pymatgen/cli/pmg_potcar.py @@ -32,7 +32,7 @@ def gen_potcar(dirname, filename): """ if filename == "POTCAR.spec": fullpath = os.path.join(dirname, filename) - with open(fullpath) as file: + with open(fullpath, encoding="utf-8") as file: elements = file.readlines() symbols = [el.strip() for el in elements if el.strip() != ""] potcar = Potcar(symbols) diff --git a/src/pymatgen/command_line/chargemol_caller.py b/src/pymatgen/command_line/chargemol_caller.py index 58896093774..6af40570748 100644 --- a/src/pymatgen/command_line/chargemol_caller.py +++ b/src/pymatgen/command_line/chargemol_caller.py @@ -409,7 +409,7 @@ def _write_jobscript_for_chargemol( bo = ".true." if compute_bond_orders else ".false." lines += f"\n\n{bo}\n\n" - with open("job_control.txt", mode="w") as file: + with open("job_control.txt", mode="w", encoding="utf-8") as file: file.write(lines) @staticmethod @@ -422,7 +422,7 @@ def _get_dipole_info(filepath): idx = 0 start = False dipoles = [] - with open(filepath) as file: + with open(filepath, encoding="utf-8") as file: for line in file: if "The following XYZ" in line: start = True @@ -549,7 +549,7 @@ def _get_data_from_xyz(xyz_path) -> list[float]: """ props = [] if os.path.isfile(xyz_path): - with open(xyz_path) as file: + with open(xyz_path, encoding="utf-8") as file: for idx, line in enumerate(file): if idx <= 1: continue @@ -574,7 +574,7 @@ def _get_cm5_data_from_output(ddec_analysis_path) -> list[float]: props = [] if os.path.isfile(ddec_analysis_path): start = False - with open(ddec_analysis_path) as file: + with open(ddec_analysis_path, encoding="utf-8") as file: for line in file: if "computed CM5" in line: start = True diff --git a/src/pymatgen/command_line/enumlib_caller.py b/src/pymatgen/command_line/enumlib_caller.py index a92ebed3041..02ccc619537 100644 --- a/src/pymatgen/command_line/enumlib_caller.py +++ b/src/pymatgen/command_line/enumlib_caller.py @@ -275,7 +275,7 @@ def get_sg_info(ss): output.append(f"{min_conc - 1} {min_conc + 1} {base}") output.append("") logger.debug("Generated input file:\n" + "\n".join(output)) - with open("struct_enum.in", mode="w") as file: + with open("struct_enum.in", mode="w", encoding="utf-8") as file: file.write("\n".join(output)) def _run_multienum(self): @@ -357,7 +357,7 @@ def _get_structures(self, num_structs): ordered_structure = inv_org_latt = None for file in glob("vasp.*"): - with open(file) as file: + with open(file, encoding="utf-8") as file: data = file.read() data = re.sub(r"scale factor", "1", data) data = re.sub(r"(\d+)-(\d+)", r"\1 -\2", data) diff --git a/src/pymatgen/command_line/gulp_caller.py b/src/pymatgen/command_line/gulp_caller.py index eeeed9b0bc2..701d6ff12cc 100644 --- a/src/pymatgen/command_line/gulp_caller.py +++ b/src/pymatgen/command_line/gulp_caller.py @@ -661,7 +661,7 @@ def __init__(self, bush_lewis_flag, pot_file): if bush_lewis_flag not in {"bush", "lewis"}: raise ValueError(f"bush_lewis_flag should be bush or lewis, got {bush_lewis_flag}") - with open(pot_file) as file: + with open(pot_file, encoding="utf-8") as file: # In lewis.lib there is no shell for cation species_dict, pot_dict, spring_dict = {}, {}, {} sp_flg, pot_flg, spring_flg = False, False, False @@ -728,7 +728,7 @@ class TersoffPotential: def __init__(self, pot_file): """Init TersoffPotential.""" - with open(pot_file) as file: + with open(pot_file, encoding="utf-8") as file: data = {} for row in file: metaloxi = row.split()[0] diff --git a/src/pymatgen/command_line/mcsqs_caller.py b/src/pymatgen/command_line/mcsqs_caller.py index 78647df8591..760e074e94e 100644 --- a/src/pymatgen/command_line/mcsqs_caller.py +++ b/src/pymatgen/command_line/mcsqs_caller.py @@ -94,7 +94,7 @@ def run_mcsqs( else: # Set supercell to identity (will make supercell with pymatgen) - with open("sqscell.out", mode="w") as file: + with open("sqscell.out", mode="w", encoding="utf-8") as file: file.write("1\n1 0 0\n0 1 0\n0 0 1\n") structure *= scaling mcsqs_find_sqs_cmd = ["mcsqs", "-rc", f"-n {n_atoms}"] @@ -185,8 +185,8 @@ def _parse_sqs_path(path) -> Sqs: # Convert best SQS structure to CIF file and pymatgen Structure with ( - open(os.path.join(path, "bestsqs.out")) as input_file, - open(os.path.join(path, "bestsqs.cif"), "w") as output_file, + open(path / "bestsqs.out", encoding="utf-8") as input_file, + open(path / "bestsqs.cif", "w", encoding="utf-8") as output_file, ): process = Popen(["str2cif"], stdin=input_file, stdout=output_file, cwd=path) process.communicate() @@ -196,7 +196,7 @@ def _parse_sqs_path(path) -> Sqs: best_sqs = Structure.from_file(path / "bestsqs.out") # Get best SQS objective function - with open(path / "bestcorr.out") as file: + with open(path / "bestcorr.out", encoding="utf-8") as file: lines = file.readlines() objective_function_str = lines[-1].split("=")[-1].strip() @@ -210,13 +210,13 @@ def _parse_sqs_path(path) -> Sqs: sqs_out = os.path.join(path, f"bestsqs{idx + 1}.out") sqs_cif = os.path.join(path, f"bestsqs{idx + 1}.cif") - with open(sqs_out) as input_file, open(sqs_cif, "w") as output_file: + with open(sqs_out, encoding="utf-8") as input_file, open(sqs_cif, "w", encoding="utf-8") as output_file: process = Popen(["str2cif"], stdin=input_file, stdout=output_file, cwd=path) process.communicate() sqs = Structure.from_file(path / sqs_out) corr_out = f"bestcorr{idx + 1}.out" - with open(path / corr_out) as file: + with open(path / corr_out, encoding="utf-8") as file: lines = file.readlines() objective_function_str = lines[-1].split("=")[-1].strip() @@ -250,7 +250,7 @@ def _parse_clusters(filename): num_possible_species: int cluster_function: float """ - with open(filename) as file: + with open(filename, encoding="utf-8") as file: lines = file.readlines() clusters = [] diff --git a/src/pymatgen/command_line/vampire_caller.py b/src/pymatgen/command_line/vampire_caller.py index bd3000e1d75..09e877a7e57 100644 --- a/src/pymatgen/command_line/vampire_caller.py +++ b/src/pymatgen/command_line/vampire_caller.py @@ -225,7 +225,7 @@ def _create_mat(self): self.mat_id_dict = mat_id_dict - with open(mat_file_name, mode="w") as file: + with open(mat_file_name, mode="w", encoding="utf-8") as file: file.write(mat_file) def _create_input(self): @@ -296,7 +296,7 @@ def _create_input(self): input_script = "\n".join(input_script) - with open("input", mode="w") as file: + with open("input", mode="w", encoding="utf-8") as file: file.write(input_script) def _create_ucf(self): @@ -363,7 +363,7 @@ def _create_ucf(self): ucf = "\n".join(ucf) ucf_file_name = f"{mat_name}.ucf" - with open(ucf_file_name, mode="w") as file: + with open(ucf_file_name, mode="w", encoding="utf-8") as file: file.write(ucf) @staticmethod diff --git a/src/pymatgen/core/__init__.py b/src/pymatgen/core/__init__.py index 6d074002060..ca4c04fad5a 100644 --- a/src/pymatgen/core/__init__.py +++ b/src/pymatgen/core/__init__.py @@ -32,11 +32,11 @@ pass -SETTINGS_FILE = os.path.join(os.path.expanduser("~"), ".config", ".pmgrc.yaml") -OLD_SETTINGS_FILE = os.path.join(os.path.expanduser("~"), ".pmgrc.yaml") -MODULE_DIR = os.path.dirname(os.path.abspath(__file__)) -PKG_DIR = os.path.dirname(MODULE_DIR) -ROOT = os.path.dirname(PKG_DIR) +SETTINGS_FILE: str = os.path.join(os.path.expanduser("~"), ".config", ".pmgrc.yaml") +OLD_SETTINGS_FILE: str = os.path.join(os.path.expanduser("~"), ".pmgrc.yaml") +MODULE_DIR: str = os.path.dirname(os.path.abspath(__file__)) +PKG_DIR: str = os.path.dirname(MODULE_DIR) +ROOT: str = os.path.dirname(PKG_DIR) def _load_pmg_settings() -> dict[str, Any]: diff --git a/src/pymatgen/electronic_structure/boltztrap.py b/src/pymatgen/electronic_structure/boltztrap.py index 7f1c484c5d4..9fd3c8c0ce7 100644 --- a/src/pymatgen/electronic_structure/boltztrap.py +++ b/src/pymatgen/electronic_structure/boltztrap.py @@ -255,7 +255,7 @@ def write_energy(self, output_file) -> None: Args: output_file: Filename """ - with open(output_file, mode="w") as file: + with open(output_file, mode="w", encoding="utf-8") as file: file.write("test\n") file.write(f"{len(self._bs.kpoints)}\n") @@ -341,7 +341,7 @@ def write_def(self, output_file) -> None: """ # This function is useless in std version of BoltzTraP code # because x_trans script overwrite BoltzTraP.def - with open(output_file, mode="w") as file: + with open(output_file, mode="w", encoding="utf-8") as file: so = "" if self._bs.is_spin_polarized or self.soc: so = "so" @@ -374,7 +374,7 @@ def write_proj(self, output_file_proj: str, output_file_def: str) -> None: for orb_idx, orb in enumerate(Orbital): for site_nb in range(len(self._bs.structure)): if orb_idx < len(self._bs.projections[Spin.up][0][0]): - with open(f"{output_file_proj}_{site_nb}_{orb}", mode="w") as file: + with open(f"{output_file_proj}_{site_nb}_{orb}", mode="w", encoding="utf-8") as file: file.write(f"{self._bs.structure.formula}\n") file.write(f"{len(self._bs.kpoints)}\n") for kpt_idx, kpt in enumerate(self._bs.kpoints): @@ -392,7 +392,7 @@ def write_proj(self, output_file_proj: str, output_file_def: str) -> None: file.write(f"{a:12.8f} {b:12.8f} {c:12.8f} {len(tmp_proj)}\n") for t in tmp_proj: file.write(f"{float(t):18.8f}\n") - with open(output_file_def, mode="w") as file: + with open(output_file_def, mode="w", encoding="utf-8") as file: so = "" if self._bs.is_spin_polarized: so = "so" @@ -428,7 +428,7 @@ def write_intrans(self, output_file) -> None: set_gap = 1 if self.scissor > 1e-4 else 0 if self.run_type in ("BOLTZ", "DOS"): - with open(output_file, mode="w") as fout: + with open(output_file, mode="w", encoding="utf-8") as fout: fout.write("GENE # use generic interface\n") fout.write( f"1 0 {set_gap} {Energy(self.scissor, 'eV').to('Ry')} " @@ -455,7 +455,7 @@ def write_intrans(self, output_file) -> None: fout.write(str(-d) + "\n") elif self.run_type == "FERMI": - with open(output_file, mode="w") as fout: + with open(output_file, mode="w", encoding="utf-8") as fout: fout.write("GENE # use generic interface\n") fout.write("1 0 0 0.0 # iskip (not presently used) idebug setgap shiftgap \n") fout.write( @@ -477,7 +477,7 @@ def write_intrans(self, output_file) -> None: elif isinstance(self.kpt_line[0], Kpoint): self.kpt_line = [kp.frac_coords for kp in self.kpt_line] - with open(output_file, mode="w") as fout: + with open(output_file, mode="w", encoding="utf-8") as fout: fout.write("GENE # use generic interface\n") fout.write( f"1 0 {set_gap} {Energy(self.scissor, 'eV').to('Ry')} # iskip (not presently used) " @@ -621,7 +621,7 @@ def run( warning = "" - with open(os.path.join(path_dir, f"{dir_bz_name}.outputtrans")) as file: + with open(os.path.join(path_dir, f"{dir_bz_name}.outputtrans"), encoding="utf-8") as file: for line in file: if "Option unknown" in line: raise BoltztrapError("DOS mode needs a custom version of BoltzTraP code is needed") @@ -1685,7 +1685,7 @@ def parse_outputtrans(path_dir): run_type = warning = efermi = gap = None doping_levels = [] - with open(f"{path_dir}/boltztrap.outputtrans") as file: + with open(f"{path_dir}/boltztrap.outputtrans", encoding="utf-8") as file: for line in file: if "WARNING" in line: warning = line @@ -1716,7 +1716,7 @@ def parse_transdos(path_dir, efermi, dos_spin=1, trim_dos=False): data_dos = {"total": [], "partial": {}} # parse the total DOS data # format is energy, DOS, integrated DOS - with open(f"{path_dir}/boltztrap.transdos") as file: + with open(f"{path_dir}/boltztrap.transdos", encoding="utf-8") as file: count_series = 0 # TODO: why is count_series needed? for line in file: if line.lstrip().startswith("#"): @@ -1754,7 +1754,7 @@ def parse_transdos(path_dir, efermi, dos_spin=1, trim_dos=False): tokens = file_name.split(".")[1].split("_") site = tokens[1] orb = "_".join(tokens[2:]) - with open(os.path.join(path_dir, file_name)) as file: + with open(os.path.join(path_dir, file_name), encoding="utf-8") as file: for line in file: if not line.lstrip().startswith(" #"): if site not in data_dos["partial"]: @@ -1787,7 +1787,7 @@ def parse_intrans(path_dir): dict: various inputs that had been used in the BoltzTraP run. """ intrans = {} - with open(f"{path_dir}/boltztrap.intrans") as file: + with open(f"{path_dir}/boltztrap.intrans", encoding="utf-8") as file: for line in file: if "iskip" in line: intrans["scissor"] = Energy(float(line.split(" ")[3]), "Ry").to("eV") @@ -1805,7 +1805,7 @@ def parse_struct(path_dir): Returns: float: volume of the structure in Angstrom^3 """ - with open(f"{path_dir}/boltztrap.struct") as file: + with open(f"{path_dir}/boltztrap.struct", encoding="utf-8") as file: tokens = file.readlines() return Lattice( [[Length(float(tokens[i].split()[j]), "bohr").to("ang") for j in range(3)] for i in range(1, 4)] @@ -1835,7 +1835,7 @@ def parse_cond_and_hall(path_dir, doping_levels=None): # parse the full conductivity/Seebeck/kappa0/etc data # also initialize t_steps and mu_steps - with open(f"{path_dir}/boltztrap.condtens") as file: + with open(f"{path_dir}/boltztrap.condtens", encoding="utf-8") as file: for line in file: if not line.startswith("#"): mu_steps.add(float(line.split()[0])) @@ -1843,20 +1843,20 @@ def parse_cond_and_hall(path_dir, doping_levels=None): data_full.append([float(c) for c in line.split()]) # parse the full Hall tensor - with open(f"{path_dir}/boltztrap.halltens") as file: + with open(f"{path_dir}/boltztrap.halltens", encoding="utf-8") as file: for line in file: if not line.startswith("#"): data_hall.append([float(c) for c in line.split()]) if len(doping_levels) != 0: # parse doping levels version of full cond. tensor, etc. - with open(f"{path_dir}/boltztrap.condtens_fixdoping") as file: + with open(f"{path_dir}/boltztrap.condtens_fixdoping", encoding="utf-8") as file: for line in file: if not line.startswith("#") and len(line) > 2: data_doping_full.append([float(c) for c in line.split()]) # parse doping levels version of full hall tensor - with open(f"{path_dir}/boltztrap.halltens_fixdoping") as file: + with open(f"{path_dir}/boltztrap.halltens_fixdoping", encoding="utf-8") as file: for line in file: if not line.startswith("#") and len(line) > 2: data_doping_hall.append([float(c) for c in line.split()]) diff --git a/src/pymatgen/entries/computed_entries.py b/src/pymatgen/entries/computed_entries.py index ae76bc15c4b..8ca55fb0940 100644 --- a/src/pymatgen/entries/computed_entries.py +++ b/src/pymatgen/entries/computed_entries.py @@ -36,9 +36,9 @@ __version__ = "1.1" __date__ = "April 2020" -with open(os.path.join(os.path.dirname(__file__), "data/g_els.json")) as file: +with open(os.path.join(os.path.dirname(__file__), "data/g_els.json"), encoding="utf-8") as file: G_ELEMS = json.load(file) -with open(os.path.join(os.path.dirname(__file__), "data/nist_gas_gf.json")) as file: +with open(os.path.join(os.path.dirname(__file__), "data/nist_gas_gf.json"), encoding="utf-8") as file: G_GASES = json.load(file) diff --git a/src/pymatgen/entries/correction_calculator.py b/src/pymatgen/entries/correction_calculator.py index e11bd1fb9c2..b58a26128ed 100644 --- a/src/pymatgen/entries/correction_calculator.py +++ b/src/pymatgen/entries/correction_calculator.py @@ -451,5 +451,5 @@ def make_yaml(self, name: str = "MP2020", dir: str | None = None) -> None: # no contents["Uncertainties"].yaml_set_start_comment( "Uncertainties corresponding to each energy correction (eV/atom)", indent=2 ) - with open(path, mode="w") as file: + with open(path, mode="w", encoding="utf-8") as file: yml.dump(contents, file) diff --git a/src/pymatgen/entries/entry_tools.py b/src/pymatgen/entries/entry_tools.py index dec5535d588..7278307c6ef 100644 --- a/src/pymatgen/entries/entry_tools.py +++ b/src/pymatgen/entries/entry_tools.py @@ -313,7 +313,7 @@ def to_csv(self, filename: str, latexify_names: bool = False) -> None: for entry in self.entries: els.update(entry.elements) elements = sorted(els, key=lambda a: a.X) - with open(filename, mode="w") as file: + with open(filename, mode="w", encoding="utf-8") as file: writer = csv.writer( file, delimiter=",", diff --git a/src/pymatgen/ext/matproj_legacy.py b/src/pymatgen/ext/matproj_legacy.py index 47521e972ce..9cab70c94ee 100644 --- a/src/pymatgen/ext/matproj_legacy.py +++ b/src/pymatgen/ext/matproj_legacy.py @@ -200,7 +200,7 @@ def __init__( logger.debug(f"Connection established to Materials Project database, version {db_version}.") try: - with open(MP_LOG_FILE) as file: + with open(MP_LOG_FILE, encoding="utf-8") as file: dct = dict(yaml.load(file)) or {} except (OSError, TypeError): # TypeError: 'NoneType' object is not iterable occurs if MP_LOG_FILE exists but is empty @@ -236,7 +236,7 @@ def __init__( # base Exception is not ideal (perhaps a PermissionError, etc.) but this is not critical # and should be allowed to fail regardless of reason try: - with open(MP_LOG_FILE, mode="w") as file: + with open(MP_LOG_FILE, mode="w", encoding="utf-8") as file: yaml.dump(dct, file) except Exception: pass diff --git a/src/pymatgen/io/abinit/abitimer.py b/src/pymatgen/io/abinit/abitimer.py index 285c908aefd..d8b3ecd99b8 100644 --- a/src/pymatgen/io/abinit/abitimer.py +++ b/src/pymatgen/io/abinit/abitimer.py @@ -114,7 +114,7 @@ def parse(self, filenames): read_ok = [] for filename in filenames: try: - file = open(filename) # noqa: SIM115 + file = open(filename, encoding="utf-8") # noqa: SIM115 except OSError: logger.warning(f"Cannot open file {filename}") continue @@ -684,7 +684,7 @@ def to_csv(self, fileobj=sys.stdout): is_str = isinstance(fileobj, str) if is_str: - fileobj = open(fileobj, mode="w") # noqa: SIM115 + fileobj = open(fileobj, mode="w", encoding="utf-8") # noqa: SIM115 for idx, section in enumerate(self.sections): fileobj.write(section.to_csvline(with_header=(idx == 0))) diff --git a/src/pymatgen/io/abinit/inputs.py b/src/pymatgen/io/abinit/inputs.py index a01b9517cf5..8e1c9df440e 100644 --- a/src/pymatgen/io/abinit/inputs.py +++ b/src/pymatgen/io/abinit/inputs.py @@ -617,7 +617,7 @@ def write(self, filepath="run.abi"): os.makedirs(dirname, exist_ok=True) # Write the input file. - with open(filepath, mode="w") as file: + with open(filepath, mode="w", encoding="utf-8") as file: file.write(str(self)) def deepcopy(self): diff --git a/src/pymatgen/io/adf.py b/src/pymatgen/io/adf.py index 6725c89beb6..dcb9eda0e68 100644 --- a/src/pymatgen/io/adf.py +++ b/src/pymatgen/io/adf.py @@ -551,7 +551,7 @@ def write_file(self, molecule, inp_file): unres_block = AdfKey("Unrestricted") mol_blocks.append(unres_block) - with open(inp_file, "w+") as file: + with open(inp_file, "w+", encoding="utf-8") as file: for block in mol_blocks: file.write(str(block) + "\n") file.write(str(self.task) + "\n") @@ -656,7 +656,7 @@ def _parse_logfile(self, logfile): return break - with open(logfile) as file: + with open(logfile, encoding="utf-8") as file: for line in file: if match := error_patt.search(line): self.is_failed = True diff --git a/src/pymatgen/io/aims/inputs.py b/src/pymatgen/io/aims/inputs.py index bf421755f07..5f79a25bbf4 100644 --- a/src/pymatgen/io/aims/inputs.py +++ b/src/pymatgen/io/aims/inputs.py @@ -219,7 +219,7 @@ def write_file(self, directory: str | Path | None = None, overwrite: bool = Fals if not overwrite and file_name.exists(): raise ValueError(f"geometry.in file exists in {directory}") - with open(f"{directory}/geometry.in", mode="w") as file: + with open(f"{directory}/geometry.in", mode="w", encoding="utf-8") as file: file.write(self.get_header(file_name.as_posix())) file.write(self.content) file.write("\n") @@ -672,7 +672,7 @@ def write_file( content = self.get_content(structure, verbose_header) - with open(f"{directory}/control.in", mode="w") as file: + with open(f"{directory}/control.in", mode="w", encoding="utf-8") as file: file.write(f"#{'=' * 72}\n") file.write(f"# FHI-aims geometry file: {directory}/geometry.in\n") file.write("# File generated from pymatgen\n") diff --git a/src/pymatgen/io/aims/parsers.py b/src/pymatgen/io/aims/parsers.py index 1880da6055a..f3beaa2d058 100644 --- a/src/pymatgen/io/aims/parsers.py +++ b/src/pymatgen/io/aims/parsers.py @@ -1133,7 +1133,7 @@ def read_aims_header_info( with gzip.open(filename, mode="rt") as file: content = file.read() else: - with open(filename) as file: + with open(filename, encoding="utf-8") as file: content = file.read() if content is None: @@ -1192,7 +1192,7 @@ def read_aims_output( with gzip.open(path, mode="rt") as file: content = file.read() else: - with open(path) as file: + with open(path, encoding="utf-8") as file: content = file.read() if content is None: diff --git a/src/pymatgen/io/aims/sets/base.py b/src/pymatgen/io/aims/sets/base.py index f91c686d8de..7f0a91f8bb0 100644 --- a/src/pymatgen/io/aims/sets/base.py +++ b/src/pymatgen/io/aims/sets/base.py @@ -250,7 +250,7 @@ def _read_previous( # Should be checked with Fireworks, will not for sure work with # jobflow_remote) split_prev_dir = str(prev_dir).split(":")[-1] - with open(f"{split_prev_dir}/parameters.json") as param_file: + with open(f"{split_prev_dir}/parameters.json", encoding="utf-8") as param_file: prev_params = json.load(param_file, cls=MontyDecoder) try: diff --git a/src/pymatgen/io/feff/sets.py b/src/pymatgen/io/feff/sets.py index 5d200968ac9..cebc3768623 100644 --- a/src/pymatgen/io/feff/sets.py +++ b/src/pymatgen/io/feff/sets.py @@ -104,10 +104,10 @@ def write_input(self, output_dir=".", make_dir_if_not_present=True): ) for k, v in feff.items(): - with open(os.path.join(output_dir, k), mode="w") as file: + with open(os.path.join(output_dir, k), mode="w", encoding="utf-8") as file: file.write(str(v)) - with open(f"{output_dir}/feff.inp", mode="w") as file: + with open(f"{output_dir}/feff.inp", mode="w", encoding="utf-8") as file: file.write(feff_input) # write the structure to CIF file diff --git a/src/pymatgen/io/lammps/inputs.py b/src/pymatgen/io/lammps/inputs.py index fa7987dfa3a..13f9a5f041d 100644 --- a/src/pymatgen/io/lammps/inputs.py +++ b/src/pymatgen/io/lammps/inputs.py @@ -1069,7 +1069,7 @@ def write_lammps_inputs( ... ... run $nsteps''' >>> write_lammps_inputs(".", eam_template, settings={"temperature": 1600.0, "nsteps": 100}) - >>> with open("in.lammps") as file: + >>> with open("in.lammps", encoding="utf-8") as file: ... script = file.read() >>> print(script) units metal diff --git a/src/pymatgen/io/lammps/utils.py b/src/pymatgen/io/lammps/utils.py index 28a6c08e182..88bd8c94f15 100644 --- a/src/pymatgen/io/lammps/utils.py +++ b/src/pymatgen/io/lammps/utils.py @@ -305,7 +305,7 @@ def run(self, site_property: str | None = None) -> Molecule: with tempfile.TemporaryDirectory() as scratch_dir: self._write_input(input_dir=scratch_dir) with ( - open(os.path.join(scratch_dir, self.input_file)) as packmol_input, + open(os.path.join(scratch_dir, self.input_file), encoding="utf-8") as packmol_input, Popen(self.packmol_bin, stdin=packmol_input, stdout=PIPE, stderr=PIPE) as proc, ): stdout, stderr = proc.communicate() diff --git a/src/pymatgen/io/multiwfn.py b/src/pymatgen/io/multiwfn.py index 558da06417f..803b6ea8707 100644 --- a/src/pymatgen/io/multiwfn.py +++ b/src/pymatgen/io/multiwfn.py @@ -180,7 +180,7 @@ def get_qtaim_descs(file: PathLike) -> dict[str, dict[str, Any]]: cp_sections = list() descriptors = dict() - with open(file) as f: + with open(file, encoding="utf-8") as f: lines = f.readlines() lines = [line[:-1] for line in lines] diff --git a/src/pymatgen/io/pwmat/inputs.py b/src/pymatgen/io/pwmat/inputs.py index 92bd77e0374..70dbee83eb8 100644 --- a/src/pymatgen/io/pwmat/inputs.py +++ b/src/pymatgen/io/pwmat/inputs.py @@ -136,7 +136,7 @@ def get_types(self) -> np.ndarray: """ content = "POSITION" idx_row = LineLocator.locate_all_lines(file_path=self.atom_config_path, content=content)[0] - with open(self.atom_config_path) as file: + with open(self.atom_config_path, encoding="utf-8") as file: atom_config_content = file.readlines() atomic_numbers_content = atom_config_content[idx_row : idx_row + self.n_atoms] atomic_numbers_lst = [int(row.split()[0]) for row in atomic_numbers_content] # convert str to int @@ -151,7 +151,7 @@ def get_coords(self) -> np.ndarray: coords_lst: list[np.ndarray] = [] content: str = "POSITION" idx_row: int = LineLocator.locate_all_lines(file_path=self.atom_config_path, content=content)[0] - with open(self.atom_config_path) as file: + with open(self.atom_config_path, encoding="utf-8") as file: atom_config_content = file.readlines() """ row_content: @@ -174,7 +174,7 @@ def get_magmoms(self) -> np.ndarray: try: # Error: not containing magmoms info. idx_row = LineLocator.locate_all_lines(file_path=self.atom_config_path, content=content)[-1] - with open(self.atom_config_path) as file: + with open(self.atom_config_path, encoding="utf-8") as file: atom_config_content = file.readlines() magnetic_moments_content = atom_config_content[idx_row : idx_row + self.n_atoms] diff --git a/src/pymatgen/io/qchem/outputs.py b/src/pymatgen/io/qchem/outputs.py index d483e7ecba3..7e873ea1ca3 100644 --- a/src/pymatgen/io/qchem/outputs.py +++ b/src/pymatgen/io/qchem/outputs.py @@ -666,7 +666,7 @@ def multiple_outputs_from_file(filename, keep_sub_files=True): if text[0] == "": text = text[1:] for i, sub_text in enumerate(text): - with open(f"{filename}.{i}", mode="w") as temp: + with open(f"{filename}.{i}", mode="w", encoding="utf-8") as temp: temp.write(sub_text) tempOutput = QCOutput(f"{filename}.{i}") to_return.append(tempOutput) diff --git a/src/pymatgen/io/xtb/inputs.py b/src/pymatgen/io/xtb/inputs.py index cadd644c1f2..ca30922ad38 100644 --- a/src/pymatgen/io/xtb/inputs.py +++ b/src/pymatgen/io/xtb/inputs.py @@ -56,7 +56,7 @@ def write_input_files(self): reference_fnm=self.coords_filename, constraints=self.constraints, ) - with open(".constrains", mode="w") as file: + with open(".constrains", mode="w", encoding="utf-8") as file: file.write(constrains_string) @staticmethod diff --git a/src/pymatgen/phonon/bandstructure.py b/src/pymatgen/phonon/bandstructure.py index 7b2e60ed263..a5db0a6a82d 100644 --- a/src/pymatgen/phonon/bandstructure.py +++ b/src/pymatgen/phonon/bandstructure.py @@ -527,7 +527,7 @@ def write_phononwebsite(self, filename: str | PathLike) -> None: """Write a JSON file for the phononwebsite: https://henriquemiranda.github.io/phononwebsite. """ - with open(filename, mode="w") as file: + with open(filename, mode="w", encoding="utf-8") as file: json.dump(self.as_phononwebsite(), file) def as_phononwebsite(self) -> dict: diff --git a/src/pymatgen/phonon/ir_spectra.py b/src/pymatgen/phonon/ir_spectra.py index 1c1f7712895..9716c5e3bfe 100644 --- a/src/pymatgen/phonon/ir_spectra.py +++ b/src/pymatgen/phonon/ir_spectra.py @@ -91,7 +91,7 @@ def as_dict(self) -> dict: def write_json(self, filename: str | PathLike) -> None: """Save a JSON file with this data.""" - with open(filename, mode="w") as file: + with open(filename, mode="w", encoding="utf-8") as file: json.dump(self.as_dict(), file) def get_ir_spectra( diff --git a/src/pymatgen/phonon/thermal_displacements.py b/src/pymatgen/phonon/thermal_displacements.py index 7cb7e793d07..786b0c7350e 100644 --- a/src/pymatgen/phonon/thermal_displacements.py +++ b/src/pymatgen/phonon/thermal_displacements.py @@ -220,7 +220,7 @@ def write_cif(self, filename: str) -> None: writer.write_file(filename) # This will simply append the thermal displacement part to the CIF from the CifWriter # In the long run, CifWriter could be extended to handle thermal displacement matrices - with open(filename, mode="a") as file: + with open(filename, mode="a", encoding="utf-8") as file: file.write("loop_ \n") file.write("_atom_site_aniso_label\n") file.write("_atom_site_aniso_U_11\n") diff --git a/src/pymatgen/symmetry/maggroups.py b/src/pymatgen/symmetry/maggroups.py index fb1407118bc..7cf224aa66a 100644 --- a/src/pymatgen/symmetry/maggroups.py +++ b/src/pymatgen/symmetry/maggroups.py @@ -560,5 +560,5 @@ def _write_all_magnetic_space_groups_to_file(filename): all_msgs = list(map(MagneticSpaceGroup, range(1, 1652))) for msg in all_msgs: out += f"\n{msg.data_str()}\n\n--------\n" - with open(filename, mode="w") as file: + with open(filename, mode="w", encoding="utf-8") as file: file.write(out) diff --git a/tasks.py b/tasks.py index 775e93d0676..207f551c671 100644 --- a/tasks.py +++ b/tasks.py @@ -51,7 +51,7 @@ def make_doc(ctx: Context) -> None: # ctx.run("rm pymatgen*tests*.md", warn=True) # ctx.run("rm pymatgen*.html", warn=True) # for filename in glob("pymatgen*.md"): - # with open(filename) as file: + # with open(filename, encoding="utf-8") as file: # lines = [line.rstrip() for line in file if "Submodules" not in line] # if filename == "pymatgen.md": # preamble = ["---", "layout: default", "title: API Documentation", "nav_order: 6", "---", ""] @@ -67,7 +67,7 @@ def make_doc(ctx: Context) -> None: # "{:toc}", # "", # ] - # with open(filename, mode="w") as file: + # with open(filename, mode="w", encoding="utf-8") as file: # file.write("\n".join(preamble + lines)) ctx.run("rm -r markdown", warn=True) ctx.run("rm -r html", warn=True) @@ -97,10 +97,10 @@ def set_ver(ctx: Context, version: str): ctx (Context): The context. version (str): An input version. """ - with open("pyproject.toml") as file: + with open("pyproject.toml", encoding="utf-8") as file: lines = [re.sub(r"^version = \"([^,]+)\"", f'version = "{version}"', line.rstrip()) for line in file] - with open("pyproject.toml", "w") as file: + with open("pyproject.toml", "w", encoding="utf-8") as file: file.write("\n".join(lines) + "\n") ctx.run("ruff check --fix src") diff --git a/tests/alchemy/test_filters.py b/tests/alchemy/test_filters.py index 16737ae67fa..9d023291ba4 100644 --- a/tests/alchemy/test_filters.py +++ b/tests/alchemy/test_filters.py @@ -72,7 +72,7 @@ def test_as_from_dict(self): class TestRemoveDuplicatesFilter(TestCase): def setUp(self): - with open(f"{TEST_FILES_DIR}/entries/TiO2_entries.json") as file: + with open(f"{TEST_FILES_DIR}/entries/TiO2_entries.json", encoding="utf-8") as file: entries = json.load(file, cls=MontyDecoder) self._struct_list = [entry.structure for entry in entries] self._sm = StructureMatcher() @@ -91,7 +91,7 @@ def test_as_from_dict(self): class TestRemoveExistingFilter(TestCase): def setUp(self): - with open(f"{TEST_FILES_DIR}/entries/TiO2_entries.json") as file: + with open(f"{TEST_FILES_DIR}/entries/TiO2_entries.json", encoding="utf-8") as file: entries = json.load(file, cls=MontyDecoder) self._struct_list = [entry.structure for entry in entries] self._sm = StructureMatcher() diff --git a/tests/alchemy/test_materials.py b/tests/alchemy/test_materials.py index 25b8cc74ad2..e1b198f008a 100644 --- a/tests/alchemy/test_materials.py +++ b/tests/alchemy/test_materials.py @@ -64,7 +64,7 @@ def test_final_structure(self): assert isinstance(deepcopy(self.trans), TransformedStructure) def test_from_dict(self): - with open(f"{TEST_DIR}/transformations.json") as file: + with open(f"{TEST_DIR}/transformations.json", encoding="utf-8") as file: dct = json.load(file) dct["other_parameters"] = {"tags": ["test"]} t_struct = TransformedStructure.from_dict(dct) diff --git a/tests/analysis/chemenv/connectivity/test_connected_components.py b/tests/analysis/chemenv/connectivity/test_connected_components.py index fc9e561c57e..1abe37bbeac 100644 --- a/tests/analysis/chemenv/connectivity/test_connected_components.py +++ b/tests/analysis/chemenv/connectivity/test_connected_components.py @@ -838,7 +838,7 @@ def test_real_systems(self): def test_coordination_sequences(self): BaTiO3_se_fpath = f"{TEST_FILES_DIR}/analysis/chemenv/structure_environments/se_mp-5020.json" - with open(BaTiO3_se_fpath) as file: + with open(BaTiO3_se_fpath, encoding="utf-8") as file: dct = json.load(file) struct_envs = StructureEnvironments.from_dict(dct) lse = LightStructureEnvironments.from_structure_environments( diff --git a/tests/analysis/chemenv/connectivity/test_structure_connectivity.py b/tests/analysis/chemenv/connectivity/test_structure_connectivity.py index 37f8da4b98a..bb1ddffdc39 100644 --- a/tests/analysis/chemenv/connectivity/test_structure_connectivity.py +++ b/tests/analysis/chemenv/connectivity/test_structure_connectivity.py @@ -17,7 +17,7 @@ class TestStructureConnectivity(PymatgenTest): def test_serialization(self): BaTiO3_se_fpath = f"{TEST_FILES_DIR}/analysis/chemenv/structure_environments/se_mp-5020.json" - with open(BaTiO3_se_fpath) as file: + with open(BaTiO3_se_fpath, encoding="utf-8") as file: dd = json.load(file) struct_envs = StructureEnvironments.from_dict(dd) lse = LightStructureEnvironments.from_structure_environments( diff --git a/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py b/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py index c88798f89c5..41b0783159e 100644 --- a/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py +++ b/tests/analysis/chemenv/coordination_environments/test_coordination_geometry_finder.py @@ -142,7 +142,7 @@ def _strategy_test(self, strategy): for json_file in files: with self.subTest(json_file=json_file): - with open(f"{json_dir}/{json_file}") as file: + with open(f"{json_dir}/{json_file}", encoding="utf-8") as file: dct = json.load(file) atom_indices = dct["atom_indices"] diff --git a/tests/analysis/chemenv/coordination_environments/test_read_write.py b/tests/analysis/chemenv/coordination_environments/test_read_write.py index 640770fccad..20dcdcdd31c 100644 --- a/tests/analysis/chemenv/coordination_environments/test_read_write.py +++ b/tests/analysis/chemenv/coordination_environments/test_read_write.py @@ -37,7 +37,7 @@ def setUpClass(cls): cls.lgf.setup_parameters(centering_type="standard") def test_read_write_structure_environments(self): - with open(f"{json_dir}/test_T--4_FePO4_icsd_4266.json") as file: + with open(f"{json_dir}/test_T--4_FePO4_icsd_4266.json", encoding="utf-8") as file: dd = json.load(file) atom_indices = dd["atom_indices"] @@ -48,10 +48,10 @@ def test_read_write_structure_environments(self): only_indices=atom_indices, maximum_distance_factor=2.25, get_from_hints=True ) - with open(f"{self.tmp_path}/se.json", mode="w") as file: + with open(f"{self.tmp_path}/se.json", mode="w", encoding="utf-8") as file: json.dump(se.as_dict(), file) - with open(f"{self.tmp_path}/se.json") as file: + with open(f"{self.tmp_path}/se.json", encoding="utf-8") as file: dd = json.load(file) se2 = StructureEnvironments.from_dict(dd) @@ -63,20 +63,20 @@ def test_read_write_structure_environments(self): structure_environments=se, strategy=strategy, valences="undefined" ) - with open(f"{self.tmp_path}/lse.json", mode="w") as file: + with open(f"{self.tmp_path}/lse.json", mode="w", encoding="utf-8") as file: json.dump( lse.as_dict(), file, default=lambda obj: getattr(obj, "tolist", lambda: obj)(), ) - with open(f"{self.tmp_path}/lse.json") as file: + with open(f"{self.tmp_path}/lse.json", encoding="utf-8") as file: LightStructureEnvironments.from_dict(json.load(file)) # assert lse == lse2 def test_structure_environments_neighbors_sets(self): - with open(f"{struct_env_dir}/se_mp-7000.json") as file: + with open(f"{struct_env_dir}/se_mp-7000.json", encoding="utf-8") as file: dct = json.load(file) struct_envs = StructureEnvironments.from_dict(dct) @@ -221,7 +221,7 @@ def test_strategies(self): assert multi_weights_strategy_2 != multi_weights_strategy_3 def test_read_write_voronoi(self): - with open(f"{json_dir}/test_T--4_FePO4_icsd_4266.json") as file: + with open(f"{json_dir}/test_T--4_FePO4_icsd_4266.json", encoding="utf-8") as file: dd = json.load(file) struct = Structure.from_dict(dd["structure"]) @@ -230,10 +230,10 @@ def test_read_write_voronoi(self): detailed_voronoi_container = DetailedVoronoiContainer(structure=struct, valences=valences) - with open(f"{self.tmp_path}/se.json", mode="w") as file: + with open(f"{self.tmp_path}/se.json", mode="w", encoding="utf-8") as file: json.dump(detailed_voronoi_container.as_dict(), file) - with open(f"{self.tmp_path}/se.json") as file: + with open(f"{self.tmp_path}/se.json", encoding="utf-8") as file: dd = json.load(file) detailed_voronoi_container2 = DetailedVoronoiContainer.from_dict(dd) diff --git a/tests/analysis/chemenv/coordination_environments/test_structure_environments.py b/tests/analysis/chemenv/coordination_environments/test_structure_environments.py index 3f8bde41636..1aa09656c6f 100644 --- a/tests/analysis/chemenv/coordination_environments/test_structure_environments.py +++ b/tests/analysis/chemenv/coordination_environments/test_structure_environments.py @@ -26,7 +26,7 @@ class TestStructureEnvironments(PymatgenTest): def test_structure_environments(self): - with open(f"{TEST_DIR}/se_mp-7000.json") as file: + with open(f"{TEST_DIR}/se_mp-7000.json", encoding="utf-8") as file: dct = json.load(file) struct_envs = StructureEnvironments.from_dict(dct) @@ -143,7 +143,7 @@ def test_structure_environments(self): assert ce != ce2 def test_light_structure_environments(self): - with open(f"{TEST_DIR}/se_mp-7000.json") as file: + with open(f"{TEST_DIR}/se_mp-7000.json", encoding="utf-8") as file: dct = json.load(file) struct_envs = StructureEnvironments.from_dict(dct) diff --git a/tests/analysis/chemenv/coordination_environments/test_weights.py b/tests/analysis/chemenv/coordination_environments/test_weights.py index 6a5b2ffe50a..a645c90fce8 100644 --- a/tests/analysis/chemenv/coordination_environments/test_weights.py +++ b/tests/analysis/chemenv/coordination_environments/test_weights.py @@ -240,7 +240,7 @@ def test_CN_bias_weight(self): def test_self_csms_weight(self): # Get the StructureEnvironments for K2NaNb2Fe7Si8H4O31 (mp-743972) - with open(f"{struct_env_dir}/se_mp-743972.json") as file: + with open(f"{struct_env_dir}/se_mp-743972.json", encoding="utf-8") as file: dct = json.load(file) struct_envs = StructureEnvironments.from_dict(dct) @@ -316,7 +316,7 @@ def test_self_csms_weight(self): assert abs(self_w - 0.14204073172729198) < 1e-8 # Get the StructureEnvironments for SiO2 (mp-7000) - with open(f"{struct_env_dir}/se_mp-7000.json") as file: + with open(f"{struct_env_dir}/se_mp-7000.json", encoding="utf-8") as file: dct = json.load(file) struct_envs = StructureEnvironments.from_dict(dct) @@ -360,7 +360,7 @@ def test_self_csms_weight(self): def test_delta_csms_weight(self): # Get the StructureEnvironments for K2NaNb2Fe7Si8H4O31 (mp-743972) - with open(f"{struct_env_dir}/se_mp-743972.json") as file: + with open(f"{struct_env_dir}/se_mp-743972.json", encoding="utf-8") as file: dct = json.load(file) struct_envs = StructureEnvironments.from_dict(dct) @@ -492,7 +492,7 @@ def test_delta_csms_weight(self): assert abs(delta_w - 0.103515625) < 1e-8 # Get the StructureEnvironments for SiO2 (mp-7000) - with open(f"{struct_env_dir}/se_mp-7000.json") as file: + with open(f"{struct_env_dir}/se_mp-7000.json", encoding="utf-8") as file: dct = json.load(file) struct_envs = StructureEnvironments.from_dict(dct) diff --git a/tests/analysis/elasticity/test_elastic.py b/tests/analysis/elasticity/test_elastic.py index 699f97d4061..32ac9eedea7 100644 --- a/tests/analysis/elasticity/test_elastic.py +++ b/tests/analysis/elasticity/test_elastic.py @@ -67,9 +67,9 @@ def setUp(self): self.elastic_tensor_1 = ElasticTensor(self.ft) filepath = f"{TEST_DIR}/Sn_def_stress.json" - with open(filepath) as file: + with open(filepath, encoding="utf-8") as file: self.def_stress_dict = json.load(file) - with open(f"{TEST_DIR}/test_toec_data.json") as file: + with open(f"{TEST_DIR}/test_toec_data.json", encoding="utf-8") as file: self.toec_dict = json.load(file) self.structure = self.get_structure("Sn") @@ -265,7 +265,7 @@ def test_energy_density(self): class TestElasticTensorExpansion(PymatgenTest): def setUp(self): - with open(f"{TEST_DIR}/test_toec_data.json") as file: + with open(f"{TEST_DIR}/test_toec_data.json", encoding="utf-8") as file: self.data_dict = json.load(file) self.strains = [Strain(sm) for sm in self.data_dict["strains"]] self.pk_stresses = [Stress(d) for d in self.data_dict["pk_stresses"]] @@ -366,7 +366,7 @@ def test_get_yield_stress(self): class TestNthOrderElasticTensor(PymatgenTest): def setUp(self): - with open(f"{TEST_DIR}/test_toec_data.json") as file: + with open(f"{TEST_DIR}/test_toec_data.json", encoding="utf-8") as file: self.data_dict = json.load(file) self.strains = [Strain(sm) for sm in self.data_dict["strains"]] self.pk_stresses = [Stress(d) for d in self.data_dict["pk_stresses"]] @@ -405,7 +405,7 @@ class TestDiffFit(PymatgenTest): """Test various functions related to diff fitting.""" def setUp(self): - with open(f"{TEST_DIR}/test_toec_data.json") as file: + with open(f"{TEST_DIR}/test_toec_data.json", encoding="utf-8") as file: self.data_dict = json.load(file) self.strains = [Strain(sm) for sm in self.data_dict["strains"]] self.pk_stresses = [Stress(d) for d in self.data_dict["pk_stresses"]] diff --git a/tests/analysis/structure_prediction/test_substitution_probability.py b/tests/analysis/structure_prediction/test_substitution_probability.py index e6c5f9786d0..bd0fce0c386 100644 --- a/tests/analysis/structure_prediction/test_substitution_probability.py +++ b/tests/analysis/structure_prediction/test_substitution_probability.py @@ -22,7 +22,7 @@ def get_table(): default lambda table. """ json_path = f"{TEST_DIR}/test_lambda.json" - with open(json_path) as file: + with open(json_path, encoding="utf-8") as file: return json.load(file) diff --git a/tests/analysis/structure_prediction/test_substitutor.py b/tests/analysis/structure_prediction/test_substitutor.py index 6965408afcc..62690d436bd 100644 --- a/tests/analysis/structure_prediction/test_substitutor.py +++ b/tests/analysis/structure_prediction/test_substitutor.py @@ -16,7 +16,7 @@ def get_table(): default lambda table. """ json_path = f"{TEST_DIR}/test_lambda.json" - with open(json_path) as file: + with open(json_path, encoding="utf-8") as file: return json.load(file) diff --git a/tests/analysis/test_graphs.py b/tests/analysis/test_graphs.py index f9f0fb6e51d..fa7a8739ba4 100644 --- a/tests/analysis/test_graphs.py +++ b/tests/analysis/test_graphs.py @@ -87,7 +87,7 @@ def setUp(self): # MoS2 example, structure graph obtained from critic2 # (not ground state, from mp-1023924, single layer) stdout_file = f"{TEST_FILES_DIR}/command_line/critic2/MoS2_critic2_stdout.txt" - with open(stdout_file) as txt_file: + with open(stdout_file, encoding="utf-8") as txt_file: reference_stdout = txt_file.read() self.structure = Structure.from_file(f"{TEST_FILES_DIR}/command_line/critic2/MoS2.cif") c2o = Critic2Analysis(self.structure, reference_stdout) diff --git a/tests/analysis/test_molecule_matcher.py b/tests/analysis/test_molecule_matcher.py index 36a5db2c4c0..3a7f433e1be 100644 --- a/tests/analysis/test_molecule_matcher.py +++ b/tests/analysis/test_molecule_matcher.py @@ -164,12 +164,12 @@ def test_get_rmsd(self): @pytest.mark.skipif(platform.system() == "Windows", reason="Tests for openbabel failing on Win") def test_group_molecules(self): mol_matcher = MoleculeMatcher(tolerance=0.001) - with open(f"{TEST_DIR}/mol_list.txt") as file: + with open(f"{TEST_DIR}/mol_list.txt", encoding="utf-8") as file: filename_list = [line.strip() for line in file] mol_list = [Molecule.from_file(f"{TEST_DIR}/{file}") for file in filename_list] mol_groups = mol_matcher.group_molecules(mol_list) filename_groups = [[filename_list[mol_list.index(m)] for m in g] for g in mol_groups] - with open(f"{TEST_DIR}/grouped_mol_list.txt") as file: + with open(f"{TEST_DIR}/grouped_mol_list.txt", encoding="utf-8") as file: grouped_text = file.read().strip() assert str(filename_groups) == grouped_text diff --git a/tests/analysis/test_structure_matcher.py b/tests/analysis/test_structure_matcher.py index 5a71019ebe2..8850edede70 100644 --- a/tests/analysis/test_structure_matcher.py +++ b/tests/analysis/test_structure_matcher.py @@ -24,7 +24,7 @@ class TestStructureMatcher(PymatgenTest): def setUp(self): - with open(f"{TEST_FILES_DIR}/entries/TiO2_entries.json") as file: + with open(f"{TEST_FILES_DIR}/entries/TiO2_entries.json", encoding="utf-8") as file: entries = json.load(file, cls=MontyDecoder) self.struct_list = [ent.structure for ent in entries] self.oxi_structs = [ diff --git a/tests/analysis/test_surface_analysis.py b/tests/analysis/test_surface_analysis.py index 5492d9aefa6..42a102b74ca 100644 --- a/tests/analysis/test_surface_analysis.py +++ b/tests/analysis/test_surface_analysis.py @@ -24,7 +24,7 @@ class TestSlabEntry(PymatgenTest): def setUp(self): - with open(f"{TEST_DIR}/ucell_entries.txt") as file: + with open(f"{TEST_DIR}/ucell_entries.txt", encoding="utf-8") as file: ucell_entries = json.loads(file.read()) self.ucell_entries = ucell_entries @@ -58,7 +58,7 @@ def test_properties(self): assert ads.Nsurfs_ads_in_slab == 1 # Determine the correct binding energy - with open(f"{TEST_DIR}/isolated_O_entry.txt") as txt_file: + with open(f"{TEST_DIR}/isolated_O_entry.txt", encoding="utf-8") as txt_file: isolated_O_entry = json.loads(txt_file.read()) O_cse = ComputedStructureEntry.from_dict(isolated_O_entry) g_bind = (ads.energy - ml * clean.energy) / Nads - O_cse.energy_per_atom @@ -122,7 +122,7 @@ class TestSurfaceEnergyPlotter(PymatgenTest): def setUp(self): entry_dict = get_entry_dict(f"{TEST_DIR}/Cu_entries.txt") self.Cu_entry_dict = entry_dict - with open(f"{TEST_DIR}/ucell_entries.txt") as file: + with open(f"{TEST_DIR}/ucell_entries.txt", encoding="utf-8") as file: ucell_entries = json.loads(file.read()) self.Cu_ucell_entry = ComputedStructureEntry.from_dict(ucell_entries["Cu"]) @@ -314,7 +314,7 @@ def setUp(self): # Load all entries La_hcp_entry_dict = get_entry_dict(f"{TEST_DIR}/La_hcp_entries.txt") La_fcc_entry_dict = get_entry_dict(f"{TEST_DIR}/La_fcc_entries.txt") - with open(f"{TEST_DIR}/ucell_entries.txt") as txt_file: + with open(f"{TEST_DIR}/ucell_entries.txt", encoding="utf-8") as txt_file: ucell_entries = json.loads(txt_file.read()) La_hcp_ucell_entry = ComputedStructureEntry.from_dict(ucell_entries["La_hcp"]) La_fcc_ucell_entry = ComputedStructureEntry.from_dict(ucell_entries["La_fcc"]) @@ -365,7 +365,7 @@ def get_entry_dict(filename): # helper to generate an entry_dict entry_dict = {} - with open(filename) as file: + with open(filename, encoding="utf-8") as file: entries = json.loads(file.read()) for entry in entries: sub_str = entry[25:] @@ -392,7 +392,7 @@ def load_O_adsorption(): # Loads the dictionary for clean and O adsorbed Rh, Pt, and Ni entries # Load the adsorbate as an entry - with open(f"{TEST_DIR}/isolated_O_entry.txt") as file: + with open(f"{TEST_DIR}/isolated_O_entry.txt", encoding="utf-8") as file: isolated_O_entry = json.loads(file.read()) O_entry = ComputedStructureEntry.from_dict(isolated_O_entry) @@ -403,7 +403,7 @@ def load_O_adsorption(): "Rh": {(1, 0, 0): {}}, } - with open(f"{TEST_DIR}/cs_entries_slabs.json") as file: + with open(f"{TEST_DIR}/cs_entries_slabs.json", encoding="utf-8") as file: entries = json.loads(file.read()) for key in entries: entry = ComputedStructureEntry.from_dict(entries[key]) @@ -419,7 +419,7 @@ def load_O_adsorption(): clean = SlabEntry(entry.structure, entry.energy, (1, 0, 0), label=f"{key}_clean") metals_O_entry_dict[el][1, 0, 0][clean] = [] - with open(f"{TEST_DIR}/cs_entries_o_ads.json") as file: + with open(f"{TEST_DIR}/cs_entries_o_ads.json", encoding="utf-8") as file: entries = json.loads(file.read()) for key in entries: entry = ComputedStructureEntry.from_dict(entries[key]) diff --git a/tests/analysis/test_transition_state.py b/tests/analysis/test_transition_state.py index 96841bc482a..9e03e7a988c 100644 --- a/tests/analysis/test_transition_state.py +++ b/tests/analysis/test_transition_state.py @@ -48,7 +48,7 @@ def test_run(self): neb_analysis1.setup_spline(spline_options={"saddle_point": "zero_slope"}) assert_allclose(neb_analysis1.get_extrema()[1][0], (0.50023335723480078, 325.20003984140203)) - with open(f"{TEST_DIR}/neb2/neb_analysis2.json") as file: + with open(f"{TEST_DIR}/neb2/neb_analysis2.json", encoding="utf-8") as file: neb_analysis2_dict = json.load(file) neb_analysis2 = NEBAnalysis.from_dict(neb_analysis2_dict) assert_allclose(neb_analysis2.get_extrema()[1][0], (0.37255257367467326, 562.40825334519991)) diff --git a/tests/analysis/test_wulff.py b/tests/analysis/test_wulff.py index 768d079e2da..0579d09f72a 100644 --- a/tests/analysis/test_wulff.py +++ b/tests/analysis/test_wulff.py @@ -23,7 +23,7 @@ class TestWulffShape(PymatgenTest): def setUp(self): - with open(f"{TEST_DIR}/surface_samples.json") as data_file: + with open(f"{TEST_DIR}/surface_samples.json", encoding="utf-8") as data_file: surface_properties = json.load(data_file) surface_energies, miller_indices = {}, {} diff --git a/tests/analysis/xas/test_spectrum.py b/tests/analysis/xas/test_spectrum.py index 92a04879dc3..f6c258a5f30 100644 --- a/tests/analysis/xas/test_spectrum.py +++ b/tests/analysis/xas/test_spectrum.py @@ -14,17 +14,17 @@ TEST_DIR = f"{TEST_FILES_DIR}/analysis/spectrum_test" -with open(f"{TEST_DIR}/LiCoO2_k_xanes.json") as file: +with open(f"{TEST_DIR}/LiCoO2_k_xanes.json", encoding="utf-8") as file: k_xanes_dict = json.load(file, cls=MontyDecoder) -with open(f"{TEST_DIR}/LiCoO2_k_exafs.json") as file: +with open(f"{TEST_DIR}/LiCoO2_k_exafs.json", encoding="utf-8") as file: k_exafs_dict = json.load(file, cls=MontyDecoder) -with open(f"{TEST_DIR}/ZnO_l2_xanes.json") as file: +with open(f"{TEST_DIR}/ZnO_l2_xanes.json", encoding="utf-8") as file: l2_xanes_dict = json.load(file, cls=MontyDecoder) -with open(f"{TEST_DIR}/ZnO_l3_xanes.json") as file: +with open(f"{TEST_DIR}/ZnO_l3_xanes.json", encoding="utf-8") as file: l3_xanes_dict = json.load(file, cls=MontyDecoder) -with open(f"{TEST_DIR}/site1_k_xanes.json") as file: +with open(f"{TEST_DIR}/site1_k_xanes.json", encoding="utf-8") as file: site1_xanes_dict = json.load(file, cls=MontyDecoder) -with open(f"{TEST_DIR}/site2_k_xanes.json") as file: +with open(f"{TEST_DIR}/site2_k_xanes.json", encoding="utf-8") as file: site2_xanes_dict = json.load(file, cls=MontyDecoder) diff --git a/tests/apps/battery/test_conversion_battery.py b/tests/apps/battery/test_conversion_battery.py index d2d1b817ff8..c63fe76f08e 100644 --- a/tests/apps/battery/test_conversion_battery.py +++ b/tests/apps/battery/test_conversion_battery.py @@ -18,7 +18,7 @@ def setUp(self): self.formulas = ["LiCoO2", "FeF3", "MnO2"] self.conversion_electrodes = {} for formula in self.formulas: - with open(f"{TEST_DIR}/{formula}_batt.json") as fid: + with open(f"{TEST_DIR}/{formula}_batt.json", encoding="utf-8") as fid: entries = json.load(fid, cls=MontyDecoder) if formula in ["LiCoO2", "FeF3"]: working_ion = "Li" diff --git a/tests/apps/battery/test_insertion_battery.py b/tests/apps/battery/test_insertion_battery.py index 4c6b9caa951..c1537b1f740 100644 --- a/tests/apps/battery/test_insertion_battery.py +++ b/tests/apps/battery/test_insertion_battery.py @@ -18,16 +18,16 @@ def setUp(self): self.entry_Li = ComputedEntry("Li", -1.90753119) self.entry_Ca = ComputedEntry("Ca", -1.99689568) - with open(f"{TEST_DIR}/LiTiO2_batt.json") as file: + with open(f"{TEST_DIR}/LiTiO2_batt.json", encoding="utf-8") as file: self.entries_LTO = json.load(file, cls=MontyDecoder) - with open(f"{TEST_DIR}/MgVO_batt.json") as file: + with open(f"{TEST_DIR}/MgVO_batt.json", encoding="utf-8") as file: self.entries_MVO = json.load(file, cls=MontyDecoder) - with open(f"{TEST_DIR}/Mg_batt.json") as file: + with open(f"{TEST_DIR}/Mg_batt.json", encoding="utf-8") as file: self.entry_Mg = json.load(file, cls=MontyDecoder) - with open(f"{TEST_DIR}/CaMoO2_batt.json") as file: + with open(f"{TEST_DIR}/CaMoO2_batt.json", encoding="utf-8") as file: self.entries_CMO = json.load(file, cls=MontyDecoder) self.ie_LTO = InsertionElectrode.from_entries(self.entries_LTO, self.entry_Li) diff --git a/tests/apps/battery/test_plotter.py b/tests/apps/battery/test_plotter.py index 8b93b20f8bf..a154f2dfa03 100644 --- a/tests/apps/battery/test_plotter.py +++ b/tests/apps/battery/test_plotter.py @@ -19,11 +19,11 @@ class TestVoltageProfilePlotter(TestCase): def setUp(self): entry_Li = ComputedEntry("Li", -1.90753119) - with open(f"{TEST_DIR}/LiTiO2_batt.json") as file: + with open(f"{TEST_DIR}/LiTiO2_batt.json", encoding="utf-8") as file: entries_LTO = json.load(file, cls=MontyDecoder) self.ie_LTO = InsertionElectrode.from_entries(entries_LTO, entry_Li) - with open(f"{TEST_DIR}/FeF3_batt.json") as file: + with open(f"{TEST_DIR}/FeF3_batt.json", encoding="utf-8") as file: entries = json.load(file, cls=MontyDecoder) self.ce_FF = ConversionElectrode.from_composition_and_entries(Composition("FeF3"), entries) diff --git a/tests/command_line/test_critic2_caller.py b/tests/command_line/test_critic2_caller.py index 430b052d4bf..2f7a955e16a 100644 --- a/tests/command_line/test_critic2_caller.py +++ b/tests/command_line/test_critic2_caller.py @@ -79,9 +79,9 @@ class TestCritic2Analysis(TestCase): def setUp(self): stdout_file = f"{TEST_DIR}/MoS2_critic2_stdout.txt" stdout_file_new_format = f"{TEST_DIR}/MoS2_critic2_stdout_new_format.txt" - with open(stdout_file) as file: + with open(stdout_file, encoding="utf-8") as file: reference_stdout = file.read() - with open(stdout_file_new_format) as file: + with open(stdout_file_new_format, encoding="utf-8") as file: reference_stdout_new_format = file.read() structure = Structure.from_file(f"{TEST_DIR}/MoS2.cif") diff --git a/tests/command_line/test_gulp_caller.py b/tests/command_line/test_gulp_caller.py index 192c06ef453..2710fd0d4b3 100644 --- a/tests/command_line/test_gulp_caller.py +++ b/tests/command_line/test_gulp_caller.py @@ -272,7 +272,7 @@ def test_get_energy(self): def test_get_relaxed_structure(self): # Output string obtained from running GULP on a terminal - with open(f"{TEST_DIR}/example21.gout") as file: + with open(f"{TEST_DIR}/example21.gout", encoding="utf-8") as file: out_str = file.read() struct = self.gio.get_relaxed_structure(out_str) assert isinstance(struct, Structure) diff --git a/tests/core/test_structure.py b/tests/core/test_structure.py index 91904667085..1a1e8397903 100644 --- a/tests/core/test_structure.py +++ b/tests/core/test_structure.py @@ -898,13 +898,13 @@ def test_to_from_file_and_string(self): poscar_path = f"{self.tmp_path}/POSCAR.testing" poscar_str = self.struct.to(filename=poscar_path) - with open(poscar_path) as file: + with open(poscar_path, encoding="utf-8") as file: assert file.read() == poscar_str assert Structure.from_file(poscar_path) == self.struct yaml_path = f"{self.tmp_path}/Si_testing.yaml" yaml_str = self.struct.to(filename=yaml_path) - with open(yaml_path) as file: + with open(yaml_path, encoding="utf-8") as file: assert file.read() == yaml_str assert Structure.from_file(yaml_path) == self.struct @@ -1533,7 +1533,7 @@ def test_to_from_file_str(self): assert Structure.from_file(f"json-struct{ext}") == self.struct # test Structure.from_file with unsupported file extension (using tmp JSON file with wrong ext) - Path(filename := f"{self.tmp_path}/bad.extension").write_text(self.struct.to(fmt="json")) + Path(filename := f"{self.tmp_path}/bad.extension").write_text(self.struct.to(fmt="json"), encoding="utf-8") with pytest.raises(ValueError, match="Unrecognized extension in filename="): self.struct.from_file(filename=filename) @@ -2349,14 +2349,14 @@ def test_to_from_file_str(self): assert isinstance(mol, IMolecule) ch4_xyz_str = self.mol.to(filename=f"{self.tmp_path}/CH4_testing.xyz") - with open("CH4_testing.xyz") as xyz_file: + with open("CH4_testing.xyz", encoding="utf-8") as xyz_file: assert xyz_file.read() == ch4_xyz_str ch4_mol = IMolecule.from_file(f"{self.tmp_path}/CH4_testing.xyz") ch4_mol.properties = self.mol.properties assert self.mol == ch4_mol ch4_yaml_str = self.mol.to(filename=f"{self.tmp_path}/CH4_testing.yaml") - with open("CH4_testing.yaml") as yaml_file: + with open("CH4_testing.yaml", encoding="utf-8") as yaml_file: assert yaml_file.read() == ch4_yaml_str ch4_mol = Molecule.from_file(f"{self.tmp_path}/CH4_testing.yaml") ch4_mol.properties = self.mol.properties diff --git a/tests/core/test_surface.py b/tests/core/test_surface.py index 80f1819da2f..ae192ef982d 100644 --- a/tests/core/test_surface.py +++ b/tests/core/test_surface.py @@ -646,7 +646,7 @@ def setUp(self): self.Fe = Structure.from_spacegroup("Im-3m", lattice, species, coords) self.Si = Structure.from_spacegroup("Fd-3m", Lattice.cubic(5.430500), ["Si"], [(0, 0, 0.5)]) - with open(f"{PMG_CORE_DIR}/reconstructions_archive.json") as data_file: + with open(f"{PMG_CORE_DIR}/reconstructions_archive.json", encoding="utf-8") as data_file: self.rec_archive = json.load(data_file) def test_build_slab(self): diff --git a/tests/electronic_structure/test_bandstructure.py b/tests/electronic_structure/test_bandstructure.py index 655bb723030..01cba9b7e51 100644 --- a/tests/electronic_structure/test_bandstructure.py +++ b/tests/electronic_structure/test_bandstructure.py @@ -232,7 +232,7 @@ def test_as_dict(self): assert set(d3) >= expected_keys, f"{expected_keys - set(d3)=}" def test_old_format_load(self): - with open(f"{TEST_DIR}/bs_ZnS_old.json") as file: + with open(f"{TEST_DIR}/bs_ZnS_old.json", encoding="utf-8") as file: dct = json.load(file) bs_old = BandStructureSymmLine.from_dict(dct) assert bs_old.get_projection_on_elements()[Spin.up][0][0]["Zn"] == 0.0971 @@ -281,12 +281,14 @@ class TestLobsterBandStructureSymmLine(PymatgenTest): def setUp(self): with open( f"{TEST_FILES_DIR}/electronic_structure/cohp/Fatband_SiO2/Test_p/lobster_band_structure_spin.json", + encoding="utf-8", ) as file: bs_spin_dict = json.load(file) self.bs_spin = LobsterBandStructureSymmLine.from_dict(bs_spin_dict) with open( f"{TEST_FILES_DIR}/electronic_structure/cohp/Fatband_SiO2/Test_p/lobster_band_structure.json", + encoding="utf-8", ) as file: bs_dict = json.load(file) self.bs_p = LobsterBandStructureSymmLine.from_dict(bs_dict) diff --git a/tests/electronic_structure/test_boltztrap.py b/tests/electronic_structure/test_boltztrap.py index a5983320da9..646f7ca7981 100644 --- a/tests/electronic_structure/test_boltztrap.py +++ b/tests/electronic_structure/test_boltztrap.py @@ -33,7 +33,9 @@ def setUpClass(cls): cls.bz_dw = BoltztrapAnalyzer.from_files(f"{TEST_DIR}/dos_dw/", dos_spin=-1) cls.bz_fermi = BoltztrapAnalyzer.from_files(f"{TEST_DIR}/fermi/") - with open(f"{TEST_FILES_DIR}/electronic_structure/bandstructure/Cu2O_361_bandstructure.json") as file: + with open( + f"{TEST_FILES_DIR}/electronic_structure/bandstructure/Cu2O_361_bandstructure.json", encoding="utf-8" + ) as file: dct = json.load(file) cls.bs = BandStructure.from_dict(dct) cls.btr = BoltztrapRunner(cls.bs, 1) diff --git a/tests/electronic_structure/test_cohp.py b/tests/electronic_structure/test_cohp.py index 16f0ce2ca34..92d3c46facf 100644 --- a/tests/electronic_structure/test_cohp.py +++ b/tests/electronic_structure/test_cohp.py @@ -22,20 +22,20 @@ class TestCohp(TestCase): def setUp(self): - with open(f"{TEST_DIR}/cohp.json") as file: + with open(f"{TEST_DIR}/cohp.json", encoding="utf-8") as file: self.cohp = Cohp.from_dict(json.load(file)) self.cohp_only = Cohp(self.cohp.efermi, self.cohp.energies, self.cohp.cohp) - with open(f"{TEST_DIR}/coop.json") as file: + with open(f"{TEST_DIR}/coop.json", encoding="utf-8") as file: self.coop = Cohp.from_dict(json.load(file)) - with open(f"{TEST_DIR}/cobi.json") as file: + with open(f"{TEST_DIR}/cobi.json", encoding="utf-8") as file: self.cobi = Cohp.from_dict(json.load(file)) def test_as_from_dict(self): - with open(f"{TEST_DIR}/cohp.json") as file: + with open(f"{TEST_DIR}/cohp.json", encoding="utf-8") as file: cohp_dict = json.load(file) assert self.cohp.as_dict() == cohp_dict - with open(f"{TEST_DIR}/cobi.json") as file: + with open(f"{TEST_DIR}/cobi.json", encoding="utf-8") as file: cobi_dict = json.load(file) assert self.cobi.as_dict() == cobi_dict @@ -68,12 +68,12 @@ def test_get_interpolated_value(self): def test_str(self): header = "#Energy COOPUp ICOOPUp \n" - with open(f"{TEST_DIR}/cohp.str") as file: + with open(f"{TEST_DIR}/cohp.str", encoding="utf-8") as file: str_cohp = file.read() assert str(self.cohp) == str_cohp assert str(self.coop).strip().startswith(header) - with open(f"{TEST_DIR}/coop.str") as file: + with open(f"{TEST_DIR}/coop.str", encoding="utf-8") as file: str_coop = file.read() assert str(self.coop) == str_coop assert str(self.coop).strip().startswith(header) @@ -800,20 +800,20 @@ def test_extremum_icohpvalue(self): class TestCompleteCohp(PymatgenTest): def setUp(self): filepath = f"{TEST_DIR}/complete_cohp_lobster.json" - with open(filepath) as file: + with open(filepath, encoding="utf-8") as file: self.cohp_lobster_dict = CompleteCohp.from_dict(json.load(file)) filepath = f"{TEST_DIR}/complete_coop_lobster.json" - with open(filepath) as file: + with open(filepath, encoding="utf-8") as file: self.coop_lobster_dict = CompleteCohp.from_dict(json.load(file)) filepath = f"{TEST_DIR}/complete_cohp_lmto.json" - with open(filepath) as file: + with open(filepath, encoding="utf-8") as file: self.cohp_lmto_dict = CompleteCohp.from_dict(json.load(file)) filepath = f"{TEST_DIR}/complete_cohp_orbitalwise.json" - with open(filepath) as file: + with open(filepath, encoding="utf-8") as file: self.cohp_orb_dict = CompleteCohp.from_dict(json.load(file)) # Lobster 3.0 filepath = f"{TEST_DIR}/complete_cohp_forb.json" - with open(filepath) as file: + with open(filepath, encoding="utf-8") as file: self.cohp_lobster_forb_dict = CompleteCohp.from_dict(json.load(file)) # Lobster 2.0 @@ -823,7 +823,7 @@ def setUp(self): filepath = f"{TEST_DIR}/COHPCAR.lobster.gz" structure = f"{TEST_DIR}/POSCAR" self.cohp_lobster = CompleteCohp.from_file("lobster", filename=filepath, structure_file=structure) - # with open(f"{TEST_DIR}/complete_cohp_lobster.json", "w") as file: + # with open(f"{TEST_DIR}/complete_cohp_lobster.json", "w", encoding="utf-8") as file: # json.dump(self.cohp_lobster.as_dict(), file) filepath = f"{TEST_DIR}/COOPCAR.lobster.BiSe.gz" structure = f"{TEST_DIR}/POSCAR.BiSe" @@ -833,7 +833,7 @@ def setUp(self): filepath = f"{TEST_DIR}/COHPCAR.lobster.orbitalwise.gz" structure = f"{TEST_DIR}/POSCAR.orbitalwise" self.cohp_orb = CompleteCohp.from_file("lobster", filename=filepath, structure_file=structure) - # with open(f"{TEST_DIR}/complete_cohp_orbitalwise.json", "w") as file: + # with open(f"{TEST_DIR}/complete_cohp_orbitalwise.json", "w", encoding="utf-8") as file: # json.dump(self.cohp_orb.as_dict(), file) filepath = f"{TEST_DIR}/COHPCAR.lobster.notot.orbitalwise.gz" self.cohp_notot = CompleteCohp.from_file("lobster", filename=filepath, structure_file=structure) diff --git a/tests/electronic_structure/test_dos.py b/tests/electronic_structure/test_dos.py index edf2c6957ae..db1224adcb5 100644 --- a/tests/electronic_structure/test_dos.py +++ b/tests/electronic_structure/test_dos.py @@ -21,7 +21,7 @@ class TestDos(TestCase): def setUp(self): - with open(f"{TEST_DIR}/complete_dos.json") as file: + with open(f"{TEST_DIR}/complete_dos.json", encoding="utf-8") as file: self.dos = CompleteDos.from_dict(json.load(file)) def test_get_gap(self): @@ -59,7 +59,7 @@ def test_as_dict(self): class TestFermiDos(TestCase): def setUp(self): - with open(f"{TEST_DIR}/complete_dos.json") as file: + with open(f"{TEST_DIR}/complete_dos.json", encoding="utf-8") as file: self.dos = CompleteDos.from_dict(json.load(file)) self.dos = FermiDos(self.dos) @@ -106,7 +106,7 @@ def test_as_dict(self): class TestCompleteDos(TestCase): def setUp(self): - with open(f"{TEST_DIR}/complete_dos.json") as file: + with open(f"{TEST_DIR}/complete_dos.json", encoding="utf-8") as file: self.dos = CompleteDos.from_dict(json.load(file)) with zopen(f"{TEST_DIR}/pdag3_complete_dos.json.gz", mode="rt", encoding="utf-8") as file: self.dos_pdag3 = CompleteDos.from_dict(json.load(file)) @@ -325,7 +325,7 @@ def test_dos_fp_exceptions(self): class TestDOS(PymatgenTest): def setUp(self): - with open(f"{TEST_DIR}/complete_dos.json") as file: + with open(f"{TEST_DIR}/complete_dos.json", encoding="utf-8") as file: dct = json.load(file) ys = list(zip(dct["densities"]["1"], dct["densities"]["-1"], strict=True)) self.dos = DOS(dct["energies"], ys, dct["efermi"]) @@ -360,27 +360,27 @@ def test_spin_polarization(self): class TestLobsterCompleteDos(TestCase): def setUp(self): - with open(f"{TEST_DIR}/LobsterCompleteDos_spin.json") as file: + with open(f"{TEST_DIR}/LobsterCompleteDos_spin.json", encoding="utf-8") as file: data_spin = json.load(file) self.LobsterCompleteDOS_spin = LobsterCompleteDos.from_dict(data_spin) - with open(f"{TEST_DIR}/LobsterCompleteDos_nonspin.json") as file: + with open(f"{TEST_DIR}/LobsterCompleteDos_nonspin.json", encoding="utf-8") as file: data_nonspin = json.load(file) self.LobsterCompleteDOS_nonspin = LobsterCompleteDos.from_dict(data_nonspin) - with open(f"{TEST_DIR}/structure_KF.json") as file: + with open(f"{TEST_DIR}/structure_KF.json", encoding="utf-8") as file: data_structure = json.load(file) self.structure = Structure.from_dict(data_structure) - with open(f"{TEST_DIR}/LobsterCompleteDos_MnO.json") as file: + with open(f"{TEST_DIR}/LobsterCompleteDos_MnO.json", encoding="utf-8") as file: data_MnO = json.load(file) self.LobsterCompleteDOS_MnO = LobsterCompleteDos.from_dict(data_MnO) - with open(f"{TEST_DIR}/LobsterCompleteDos_MnO_nonspin.json") as file: + with open(f"{TEST_DIR}/LobsterCompleteDos_MnO_nonspin.json", encoding="utf-8") as file: data_MnO_nonspin = json.load(file) self.LobsterCompleteDOS_MnO_nonspin = LobsterCompleteDos.from_dict(data_MnO_nonspin) - with open(f"{TEST_DIR}/structure_MnO.json") as file: + with open(f"{TEST_DIR}/structure_MnO.json", encoding="utf-8") as file: data_MnO = json.load(file) self.structure_MnO = Structure.from_dict(data_MnO) diff --git a/tests/electronic_structure/test_plotter.py b/tests/electronic_structure/test_plotter.py index 6e29218761a..7c9ea58ce37 100644 --- a/tests/electronic_structure/test_plotter.py +++ b/tests/electronic_structure/test_plotter.py @@ -39,7 +39,7 @@ class TestDosPlotter(PymatgenTest): def setUp(self): - with open(f"{BAND_TEST_DIR}/../dos/complete_dos.json") as file: + with open(f"{BAND_TEST_DIR}/../dos/complete_dos.json", encoding="utf-8") as file: self.dos = CompleteDos.from_dict(json.load(file)) self.plotter = DosPlotter(sigma=0.2, stack=True) @@ -70,7 +70,7 @@ def test_get_plot_limits(self): # reproduces the same energy and DOS axis limits self.plotter.add_dos_dict(self.dos.get_element_dos(), key_sort_func=lambda x: x.X) # Contains energy and DOS limits and expected results - with open(f"{BAND_TEST_DIR}/../plotter/complete_dos_limits.json") as file: + with open(f"{BAND_TEST_DIR}/../plotter/complete_dos_limits.json", encoding="utf-8") as file: limits_results = json.load(file) for item in limits_results: @@ -93,18 +93,18 @@ def get_plot_attributes(ax: plt.Axes): class TestBSPlotter(PymatgenTest): def setUp(self): - with open(f"{BAND_TEST_DIR}/CaO_2605_bandstructure.json") as file: + with open(f"{BAND_TEST_DIR}/CaO_2605_bandstructure.json", encoding="utf-8") as file: dct = json.loads(file.read()) self.bs = BandStructureSymmLine.from_dict(dct) self.plotter = BSPlotter(self.bs) assert len(self.plotter._bs) == 1, "wrong number of band objects" - with open(f"{BAND_TEST_DIR}/N2_12103_bandstructure.json") as file: + with open(f"{BAND_TEST_DIR}/N2_12103_bandstructure.json", encoding="utf-8") as file: dct = json.loads(file.read()) self.sbs_sc = BandStructureSymmLine.from_dict(dct) - with open(f"{BAND_TEST_DIR}/C_48_bandstructure.json") as file: + with open(f"{BAND_TEST_DIR}/C_48_bandstructure.json", encoding="utf-8") as file: dct = json.loads(file.read()) self.sbs_met = BandStructureSymmLine.from_dict(dct) @@ -186,11 +186,13 @@ def test_get_plot(self): class TestBSPlotterProjected(TestCase): def setUp(self): - with open(f"{BAND_TEST_DIR}/Cu2O_361_bandstructure.json") as file: + with open(f"{BAND_TEST_DIR}/Cu2O_361_bandstructure.json", encoding="utf-8") as file: self.bs_Cu2O = BandStructureSymmLine.from_dict(json.load(file)) self.plotter_Cu2O = BSPlotterProjected(self.bs_Cu2O) - with open(f"{TEST_FILES_DIR}/electronic_structure/boltztrap2/PbTe_bandstructure.json") as file: + with open( + f"{TEST_FILES_DIR}/electronic_structure/boltztrap2/PbTe_bandstructure.json", encoding="utf-8" + ) as file: self.bs_PbTe = BandStructureSymmLine.from_dict(json.load(file)) def test_methods(self): @@ -232,7 +234,7 @@ def test_methods(self): assert isinstance(dos_ax, plt.Axes) plt.close("all") - with open(f"{TEST_FILES_DIR}/electronic_structure/plotter/SrBa2Sn2O7.json") as file: + with open(f"{TEST_FILES_DIR}/electronic_structure/plotter/SrBa2Sn2O7.json", encoding="utf-8") as file: band_struct_dict = json.load(file) # generate random projections data_structure = [[[[0 for _ in range(12)] for _ in range(9)] for _ in range(70)] for _ in range(90)] @@ -447,10 +449,10 @@ def test_plot_zt_temp(self): class TestCohpPlotter(PymatgenTest): def setUp(self): path = f"{TEST_FILES_DIR}/electronic_structure/cohp/complete_cohp_lobster.json" - with open(path) as file: + with open(path, encoding="utf-8") as file: self.cohp = CompleteCohp.from_dict(json.load(file)) path = f"{TEST_FILES_DIR}/electronic_structure/cohp/complete_coop_lobster.json" - with open(path) as file: + with open(path, encoding="utf-8") as file: self.coop = CompleteCohp.from_dict(json.load(file)) self.cohp_plot = CohpPlotter(zero_at_efermi=False) self.coop_plot = CohpPlotter(are_coops=True) diff --git a/tests/entries/test_compatibility.py b/tests/entries/test_compatibility.py index ab4f53bf10f..528453e3056 100644 --- a/tests/entries/test_compatibility.py +++ b/tests/entries/test_compatibility.py @@ -1234,7 +1234,7 @@ def test_msonable(self): def test_processing_entries_inplace(self): # load two entries in GGA_GGA_U_R2SCAN thermo type json_file = Path(f"{TEST_FILES_DIR}/entries/entries_thermo_type_GGA_GGA_U_R2SCAN.json") - with open(json_file) as file: + with open(json_file, encoding="utf-8") as file: entries = json.load(file, cls=MontyDecoder) # check whether the compatibility scheme can keep input entries unchanged entries_copy = copy.deepcopy(entries) diff --git a/tests/entries/test_computed_entries.py b/tests/entries/test_computed_entries.py index 98f6b006867..9894f886c4c 100644 --- a/tests/entries/test_computed_entries.py +++ b/tests/entries/test_computed_entries.py @@ -470,7 +470,9 @@ def setUp(self): for temp in self.temps } - with open(f"{TEST_DIR}/structure_CO2.json") as file: + with open(f"{TEST_DIR}/Mn-O_entries.json", encoding="utf-8") as file: + data = json.load(file) + with open(f"{TEST_DIR}/structure_CO2.json", encoding="utf-8") as file: self.co2_struct = MontyDecoder().process_decoded(json.load(file)) with open(f"{TEST_DIR}/Mn-O_entries.json") as file: diff --git a/tests/entries/test_exp_entries.py b/tests/entries/test_exp_entries.py index b73be4ad8a4..4ddc4ab1d40 100644 --- a/tests/entries/test_exp_entries.py +++ b/tests/entries/test_exp_entries.py @@ -12,7 +12,7 @@ class TestExpEntry(TestCase): def setUp(self): - with open(f"{TEST_FILES_DIR}/entries/Fe2O3_exp.json") as file: + with open(f"{TEST_FILES_DIR}/entries/Fe2O3_exp.json", encoding="utf-8") as file: thermo_data = json.load(file, cls=MontyDecoder) self.entry = ExpEntry("Fe2O3", thermo_data) diff --git a/tests/entries/test_mixing_scheme.py b/tests/entries/test_mixing_scheme.py index 5cdbbfc95f9..185d8826cb5 100644 --- a/tests/entries/test_mixing_scheme.py +++ b/tests/entries/test_mixing_scheme.py @@ -2007,7 +2007,7 @@ def test_alternate_structure_matcher(self, ms_complete): def test_processing_entries_inplace(self): # load two entries in GGA_GGA_U_R2SCAN thermo type entriesJson = Path(f"{TEST_FILES_DIR}/entries/entries_thermo_type_GGA_GGA_U_R2SCAN.json") - with open(entriesJson) as file: + with open(entriesJson, encoding="utf-8") as file: entries = json.load(file, cls=MontyDecoder) # check whether the compatibility scheme can keep input entries unchanged entries_copy = copy.deepcopy(entries) diff --git a/tests/ext/test_matproj.py b/tests/ext/test_matproj.py index 8c043f61f4a..a730bca4dd0 100644 --- a/tests/ext/test_matproj.py +++ b/tests/ext/test_matproj.py @@ -488,7 +488,7 @@ def test_database_version(self): assert isinstance(db_version, str) yaml = YAML() - with open(MP_LOG_FILE) as file: + with open(MP_LOG_FILE, encoding="utf-8") as file: dct = yaml.load(file) assert dct["MAPI_DB_VERSION"]["LAST_ACCESSED"] == db_version diff --git a/tests/files/io/vasp/inputs/KPOINTS_band b/tests/files/io/vasp/inputs/KPOINTS_band index 588e23b1a97..27f54cc57fe 100644 --- a/tests/files/io/vasp/inputs/KPOINTS_band +++ b/tests/files/io/vasp/inputs/KPOINTS_band @@ -2,7 +2,7 @@ ORC (orthorhombic) G-X-S-Y-G-Z-U-R-T-Z Y-T U-X S-R 16 ! 16 grids Line-mode reciprocal - 0.000 0.000 0.000 ! \Gamma + 0.000 0.000 0.000 ! Γ 0.500 0.000 0.000 ! X 0.500 0.000 0.000 ! X @@ -12,9 +12,9 @@ reciprocal 0.000 0.500 0.000 ! Y 0.000 0.500 0.000 ! Y - 0.000 0.000 0.000 ! \Gamma + 0.000 0.000 0.000 ! Γ - 0.000 0.000 0.000 ! \Gamma + 0.000 0.000 0.000 ! Γ 0.000 0.000 0.500 ! Z 0.000 0.000 0.500 ! Z diff --git a/tests/io/aims/conftest.py b/tests/io/aims/conftest.py index b2ac971c904..1720ad73b23 100644 --- a/tests/io/aims/conftest.py +++ b/tests/io/aims/conftest.py @@ -57,7 +57,7 @@ def compare_files(test_name: str, work_dir: Path, ref_dir: Path) -> None: AssertionError: If a line is not the same """ for file in glob(f"{work_dir / test_name}/*in"): - with open(file) as test_file: + with open(file, encoding="utf-8") as test_file: test_lines = [line.strip() for line in test_file if len(line.strip()) > 0 and line[0] != "#"] with gzip.open(f"{ref_dir / test_name / Path(file).name}.gz", "rt") as ref_file: @@ -69,12 +69,12 @@ def compare_files(test_name: str, work_dir: Path, ref_dir: Path) -> None: else: assert test_line == ref_line - with open(f"{ref_dir / test_name}/parameters.json") as ref_file: + with open(f"{ref_dir / test_name}/parameters.json", encoding="utf-8") as ref_file: ref = json.load(ref_file) ref.pop("species_dir", None) ref_output = ref.pop("output", None) - with open(f"{work_dir / test_name}/parameters.json") as check_file: + with open(f"{work_dir / test_name}/parameters.json", encoding="utf-8") as check_file: check = json.load(check_file) check.pop("species_dir", None) @@ -147,7 +147,7 @@ def compare_single_files(ref_file: PathLike, test_file: PathLike) -> None: Raises: ValueError: If the files are not the same """ - with open(test_file) as tf: + with open(test_file, encoding="utf-8") as tf: test_lines = tf.readlines()[5:] with zopen(f"{ref_file}.gz", mode="rt", encoding="utf-8") as rf: diff --git a/tests/io/lammps/test_data.py b/tests/io/lammps/test_data.py index b6cceb6a10f..c134fd1472d 100644 --- a/tests/io/lammps/test_data.py +++ b/tests/io/lammps/test_data.py @@ -757,7 +757,7 @@ def test_to_file(self): filename = "ff_test.yaml" self.virus.to_file(filename=f"{self.tmp_path}/{filename}") yaml = YAML() - with open(filename) as file: + with open(filename, encoding="utf-8") as file: dct = yaml.load(file) # assert dct["mass_info"] == [list(m) for m in v.mass_info] assert dct["nonbond_coeffs"] == self.virus.nonbond_coeffs diff --git a/tests/io/lammps/test_inputs.py b/tests/io/lammps/test_inputs.py index 15f8ef3fac4..638a5509ff2 100644 --- a/tests/io/lammps/test_inputs.py +++ b/tests/io/lammps/test_inputs.py @@ -647,7 +647,7 @@ def test_md(self): ff = "pair_style eam\npair_coeff * * Cu_u3.eam" md = LammpsRun.md(data=ld, force_field=ff, temperature=1600.0, nsteps=10000) md.write_inputs(output_dir="md") - with open(f"{self.tmp_path}/md/in.md") as file: + with open(f"{self.tmp_path}/md/in.md", encoding="utf-8") as file: md_script = file.read() script_string = """# Sample input script template for MD @@ -694,11 +694,11 @@ class TestFunc(PymatgenTest): @pytest.mark.filterwarnings("ignore:write_lammps_inputs is deprecated") def test_write_lammps_inputs(self): # script template - with open(f"{TEST_DIR}/kappa.txt") as file: + with open(f"{TEST_DIR}/kappa.txt", encoding="utf-8") as file: kappa_template = file.read() kappa_settings = {"method": "heat"} write_lammps_inputs(output_dir="heat", script_template=kappa_template, settings=kappa_settings) - with open(f"{self.tmp_path}/heat/in.lammps") as file: + with open(f"{self.tmp_path}/heat/in.lammps", encoding="utf-8") as file: kappa_script = file.read() fix_hot = re.search(r"fix\s+hot\s+all\s+([^\s]+)\s+", kappa_script) # placeholders supposed to be filled @@ -711,7 +711,7 @@ def test_write_lammps_inputs(self): pair_style = re.search(r"pair_style\slj/cut\s+(.*)\n", kappa_script) assert pair_style.group(1) == "${rc}" - with open(f"{TEST_DIR}/in.peptide") as file: + with open(f"{TEST_DIR}/in.peptide", encoding="utf-8") as file: peptide_script = file.read() # copy data file src = f"{TEST_DIR}/data.quartz" @@ -739,7 +739,7 @@ def test_write_inputs(self): assert len(lis) == 1 lis.write_input(self.tmp_path / "heat") - with open(self.tmp_path / "heat" / "in.lammps") as file: + with open(self.tmp_path / "heat" / "in.lammps", encoding="utf-8") as file: kappa_script = file.read() fix_hot = re.search(r"fix\s+hot\s+all\s+([^\s]+)\s+", kappa_script) # placeholders supposed to be filled diff --git a/tests/io/lammps/test_outputs.py b/tests/io/lammps/test_outputs.py index 6d5e83c3089..9c18bf04130 100644 --- a/tests/io/lammps/test_outputs.py +++ b/tests/io/lammps/test_outputs.py @@ -17,10 +17,10 @@ class TestLammpsDump(TestCase): @classmethod def setUpClass(cls): - with open(f"{TEST_DIR}/dump.rdx_wc.100") as file: + with open(f"{TEST_DIR}/dump.rdx_wc.100", encoding="utf-8") as file: rdx_str = file.read() cls.rdx = LammpsDump.from_str(string=rdx_str) - with open(f"{TEST_DIR}/dump.tatb") as file: + with open(f"{TEST_DIR}/dump.tatb", encoding="utf-8") as file: tatb_str = file.read() cls.tatb = LammpsDump.from_str(string=tatb_str) diff --git a/tests/io/lobster/test_inputs.py b/tests/io/lobster/test_inputs.py index 59960d5970f..8df13ae58a8 100644 --- a/tests/io/lobster/test_inputs.py +++ b/tests/io/lobster/test_inputs.py @@ -44,7 +44,7 @@ def test_from_file(self): assert self.Lobsterin == self.Lobsterin2 def test_duplicates_from_file(self): - with open(f"{TEST_DIR}/lobsterin.1") as file: + with open(f"{TEST_DIR}/lobsterin.1", encoding="utf-8") as file: original_file = file.readlines() # String and float keywords does not allow duplicates diff --git a/tests/io/lobster/test_outputs.py b/tests/io/lobster/test_outputs.py index f46f69b8af1..2fb647e5d88 100644 --- a/tests/io/lobster/test_outputs.py +++ b/tests/io/lobster/test_outputs.py @@ -420,7 +420,7 @@ def setUp(self): self.DOSCAR_lcfo = Doscar(doscar=doscar3, structure_file=poscar3, is_lcfo=True) - with open(f"{TEST_FILES_DIR}/electronic_structure/dos/structure_KF.json") as file: + with open(f"{TEST_FILES_DIR}/electronic_structure/dos/structure_KF.json", encoding="utf-8") as file: data = json.load(file) self.structure = Structure.from_dict(data) diff --git a/tests/io/qchem/test_inputs.py b/tests/io/qchem/test_inputs.py index fe87a29a095..5e6a2eb7d84 100644 --- a/tests/io/qchem/test_inputs.py +++ b/tests/io/qchem/test_inputs.py @@ -1233,7 +1233,7 @@ def test_write_file_from_opt_set(self): test_path = f"{TEST_DIR}/test.qin" ref_path = f"{TEST_DIR}/test_ref.qin" - with open(ref_path) as ref_file, open(test_path) as test_file: + with open(ref_path, encoding="utf-8") as ref_file, open(test_path, encoding="utf-8") as test_file: for l_test, l_ref in zip(test_file, ref_file, strict=True): # By default, if this statement fails the offending line will be printed assert l_test == l_ref @@ -1248,7 +1248,7 @@ def test_write_file_from_opt_set_with_vdw(self): test_path = f"{TEST_DIR}/test_vdw.qin" ref_path = f"{TEST_DIR}/test_ref_vdw.qin" - with open(ref_path) as ref_file, open(test_path) as test_file: + with open(ref_path, encoding="utf-8") as ref_file, open(test_path, encoding="utf-8") as test_file: for l_test, l_ref in zip(test_file, ref_file, strict=True): # By default, if this statement fails the offending line will be printed assert l_test == l_ref @@ -1261,7 +1261,7 @@ def test_read_write_nbo7(self): qcinp = QCInput.from_file(f"{TEST_DIR}/new_qchem_files/nbo7.qin") qcinp.write_file(test_path) - with open(test_path) as ref_file, open(ref_path) as test_file: + with open(test_path, encoding="utf-8") as ref_file, open(ref_path, encoding="utf-8") as test_file: for l_test, l_ref in zip(test_file, ref_file, strict=True): # By default, if this statement fails the offending line will be printed assert l_test == l_ref @@ -1274,7 +1274,7 @@ def test_read_write_nbo_e2pert(self): test_path = f"{TEST_DIR}/new_qchem_files/e2pert.qin" ref_path = f"{TEST_DIR}/test_e2pert.qin" - with open(ref_path) as ref_file, open(test_path) as test_file: + with open(ref_path, encoding="utf-8") as ref_file, open(test_path, encoding="utf-8") as test_file: for l_test, l_ref in zip(test_file, ref_file, strict=True): assert l_test == l_ref @@ -1286,7 +1286,7 @@ def test_read_write_custom_smd(self): test_path = f"{TEST_DIR}/new_qchem_files/custom_smd.qin" ref_path = f"{TEST_DIR}/test_custom_smd.qin" - with open(ref_path) as ref_file, open(test_path) as test_file: + with open(ref_path, encoding="utf-8") as ref_file, open(test_path, encoding="utf-8") as test_file: for l_test, l_ref in zip(test_file, ref_file, strict=True): assert l_test == l_ref diff --git a/tests/io/qchem/test_sets.py b/tests/io/qchem/test_sets.py index 9a677b02ab8..f870c47c351 100644 --- a/tests/io/qchem/test_sets.py +++ b/tests/io/qchem/test_sets.py @@ -391,7 +391,7 @@ def test_custom_smd_write(self): qc_input = QCInput(molecule=test_molecule, rem=rem, smx={"solvent": "other"}) for k, v in qc_input.as_dict().items(): assert v == test_dict[k] - with open("solvent_data") as sd: + with open("solvent_data", encoding="utf-8") as sd: lines = sd.readlines() assert lines[0] == "90.00,1.415,0.00,0.735,20.2,0.00,0.00" os.remove("solvent_data") diff --git a/tests/io/test_adf.py b/tests/io/test_adf.py index d3b6785320f..364e73582c7 100644 --- a/tests/io/test_adf.py +++ b/tests/io/test_adf.py @@ -79,7 +79,7 @@ def readfile(file_object): """ if hasattr(file_object, "read"): return file_object.read() - with open(file_object) as file: + with open(file_object, encoding="utf-8") as file: return file.read() diff --git a/tests/io/test_cif.py b/tests/io/test_cif.py index 690c67c302d..0615509d359 100644 --- a/tests/io/test_cif.py +++ b/tests/io/test_cif.py @@ -22,7 +22,7 @@ class TestCifBlock(PymatgenTest): def test_to_str(self): - with open(f"{TEST_FILES_DIR}/cif/Graphite.cif") as file: + with open(f"{TEST_FILES_DIR}/cif/Graphite.cif", encoding="utf-8") as file: cif_str = file.read() cif_block = CifBlock.from_str(cif_str) cif_str_2 = str(CifBlock.from_str(str(cif_block))) @@ -197,7 +197,7 @@ def test_cif_parser(self): for struct in parser.parse_structures(): assert struct.formula == "Li20.2 Ge2.06 P3.94 S24", "Incorrectly parsed cif." - with open(f"{TEST_FILES_DIR}/cif/FePO4.cif") as cif_file: + with open(f"{TEST_FILES_DIR}/cif/FePO4.cif", encoding="utf-8") as cif_file: cif_str = cif_file.read() parser = CifParser.from_str(cif_str) @@ -771,7 +771,7 @@ def test_bad_occu(self): def test_not_check_occu(self): # Test large occupancy with check_occu turned off - with open(f"{TEST_FILES_DIR}/cif/site_type_symbol_test.cif") as cif_file: + with open(f"{TEST_FILES_DIR}/cif/site_type_symbol_test.cif", encoding="utf-8") as cif_file: cif_str = cif_file.read() cif_str = cif_str.replace("Te Te 1.0000", "Te_label Te 10.0", 1) @@ -885,7 +885,7 @@ def test_empty_deque(self): parser.parse_structures() def test_no_check_occu(self): - with open(f"{TEST_FILES_DIR}/cif/site_type_symbol_test.cif") as cif_file: + with open(f"{TEST_FILES_DIR}/cif/site_type_symbol_test.cif", encoding="utf-8") as cif_file: cif_str = cif_file.read() cif_str = cif_str.replace("Te Te 1.0000", "Te Te 1.5000", 1) @@ -922,7 +922,7 @@ def test_valid_cif(self): def test_missing_elements(self): cif_str = "" - with open(f"{TEST_FILES_DIR}/cif/MgNiF6.cif") as file: + with open(f"{TEST_FILES_DIR}/cif/MgNiF6.cif", encoding="utf-8") as file: for line in file: if "_chemical_formula_sum" in line: # remove this line @@ -940,7 +940,7 @@ def test_missing_elements(self): def test_incorrect_stoichiometry(self): cif_str = "" - with open(f"{TEST_FILES_DIR}/cif/MgNiF6.cif") as file: + with open(f"{TEST_FILES_DIR}/cif/MgNiF6.cif", encoding="utf-8") as file: for line in file: if "_chemical_formula_sum" in line: line = line.replace("F6", "F5") @@ -952,12 +952,12 @@ def test_incorrect_stoichiometry(self): assert "Incorrect stoichiometry" in failure_reason def test_missing_cif_composition(self): - with open(f"{TEST_FILES_DIR}/cif/LiFePO4.cif") as file: + with open(f"{TEST_FILES_DIR}/cif/LiFePO4.cif", encoding="utf-8") as file: cif_str = file.read() # remove only key that gives info about CIF composition in this file cif_str = "\n".join([line for line in cif_str.split("\n") if "_atom_site_type_symbol" not in line]) test_cif_file = f"{self.tmp_path}/test_broken.cif" - with open(test_cif_file, "w+") as file: + with open(test_cif_file, "w+", encoding="utf-8") as file: file.write(cif_str) cif = CifParser(test_cif_file) @@ -965,11 +965,11 @@ def test_missing_cif_composition(self): assert failure_reason == "Cannot determine chemical composition from CIF! 'NoneType' object is not iterable" def test_invalid_cif_composition(self): - with open(f"{TEST_FILES_DIR}/cif/LiFePO4.cif") as file: + with open(f"{TEST_FILES_DIR}/cif/LiFePO4.cif", encoding="utf-8") as file: cif_str = file.read() test_cif_file = f"{self.tmp_path}/test_broken.cif" - with open(test_cif_file, "w+") as file: + with open(test_cif_file, "w+", encoding="utf-8") as file: # replace Li with dummy atom X file.write(cif_str.replace("Li", "X")) @@ -992,7 +992,7 @@ def test_cif_writer_site_properties(self): struct.add_site_property(label := "hello", [1.0] * (len(struct) - 1) + [-1.0]) out_path = f"{self.tmp_path}/test2.cif" CifWriter(struct, write_site_properties=True).write_file(out_path) - with open(out_path) as file: + with open(out_path, encoding="utf-8") as file: cif_str = file.read() assert f"_atom_site_occupancy\n _atom_site_{label}\n" in cif_str assert "Fe Fe0 1 0.21872822 0.75000000 0.47486711 1 1.0" in cif_str @@ -1077,7 +1077,7 @@ def test_parse_structures(self): assert s_ncl.matches(s_ncl_from_msg) def test_write(self): - with open(f"{MCIF_TEST_DIR}/GdB4-writer-ref.mcif") as file: + with open(f"{MCIF_TEST_DIR}/GdB4-writer-ref.mcif", encoding="utf-8") as file: cw_ref_str = file.read() s_ncl = self.mcif_ncl.parse_structures(primitive=False)[0] @@ -1097,7 +1097,7 @@ def test_write(self): s_ncl.add_site_property("magmom", float_magmoms) cw = CifWriter(s_ncl, write_magmoms=True) - with open(f"{MCIF_TEST_DIR}/GdB4-str-magnitudes-ref.mcif") as file: + with open(f"{MCIF_TEST_DIR}/GdB4-str-magnitudes-ref.mcif", encoding="utf-8") as file: cw_ref_str_magnitudes = file.read() assert str(cw).strip() == cw_ref_str_magnitudes.strip() @@ -1115,7 +1115,7 @@ def test_write(self): cw = CifWriter(s_manual, write_magmoms=True) # check oxidation state - with open(f"{MCIF_TEST_DIR}/CsCl-manual-oxi-ref.mcif") as file: + with open(f"{MCIF_TEST_DIR}/CsCl-manual-oxi-ref.mcif", encoding="utf-8") as file: cw_manual_oxi_string = file.read() s_manual.add_oxidation_state_by_site([1, 1]) cw = CifWriter(s_manual, write_magmoms=True) diff --git a/tests/io/test_core.py b/tests/io/test_core.py index bd4ad9ea7fa..a1a62e95eb5 100644 --- a/tests/io/test_core.py +++ b/tests/io/test_core.py @@ -166,10 +166,10 @@ def test_write_from_str(self): assert len(os.listdir("input_dir")) == 3 parser = CifParser(filename="input_dir/cif1") assert parser.parse_structures()[0] == self.sif1.structure - with open("input_dir/file_from_str") as file: + with open("input_dir/file_from_str", encoding="utf-8") as file: file_from_str = file.read() assert file_from_str == "hello you" - with open("input_dir/file_from_str_cast") as file: + with open("input_dir/file_from_str_cast", encoding="utf-8") as file: file_from_str_cast = file.read() assert file_from_str_cast == "Aha\nBeh" diff --git a/tests/io/test_gaussian.py b/tests/io/test_gaussian.py index b44db9f2c32..82c4d3f9284 100644 --- a/tests/io/test_gaussian.py +++ b/tests/io/test_gaussian.py @@ -104,7 +104,7 @@ def test_from_file(self): assert gau.functional == "b3lyp" assert gau.basis_set == "6-311+g(d,p)" filepath = f"{TEST_DIR}/g305_hb.txt" - with open(filepath) as file: + with open(filepath, encoding="utf-8") as file: txt = file.read() tokens = txt.split("--link1--") for idx, tok in enumerate(tokens): diff --git a/tests/io/test_multiwfn.py b/tests/io/test_multiwfn.py index da8a8624ddb..7fe690e5753 100644 --- a/tests/io/test_multiwfn.py +++ b/tests/io/test_multiwfn.py @@ -24,7 +24,7 @@ def test_parse_single_cp(): # Test that extract_info_from_cp_text behaves as expected with parse_cp # Also tests atom parsing - with open(base_dir / "cp_just_atom.txt") as file: + with open(base_dir / "cp_just_atom.txt", encoding="utf-8") as file: contents = file.readlines() name1, desc1 = parse_cp(contents) @@ -46,7 +46,7 @@ def test_parse_single_cp(): assert "connected_bond_paths" not in desc1 # Test atom parsing with CP not associated with a known nucleus - with open(base_dir / "cp_unknown_atom.txt") as file: + with open(base_dir / "cp_unknown_atom.txt", encoding="utf-8") as file: contents = file.readlines() name, desc = parse_cp(contents) @@ -59,7 +59,7 @@ def test_parse_single_cp(): assert desc["spin_density"] == pytest.approx(0.0) # Test bond parsing - with open(base_dir / "cp_just_bond.txt") as file: + with open(base_dir / "cp_just_bond.txt", encoding="utf-8") as file: contents = file.readlines() name, desc = parse_cp(contents) @@ -71,7 +71,7 @@ def test_parse_single_cp(): assert desc["lap_e_density"] == pytest.approx(1278.89597) # Test ring parsing - with open(base_dir / "cp_just_ring.txt") as file: + with open(base_dir / "cp_just_ring.txt", encoding="utf-8") as file: contents = file.readlines() name, desc = parse_cp(contents) @@ -88,7 +88,7 @@ def test_parse_single_cp(): assert desc["esp_total"] == pytest.approx(96.1572999) # Test cage parsing - with open(base_dir / "cp_just_cage.txt") as file: + with open(base_dir / "cp_just_cage.txt", encoding="utf-8") as file: contents = file.readlines() name, desc = parse_cp(contents) @@ -103,7 +103,7 @@ def test_parse_single_cp(): assert desc["eta"] == pytest.approx(0.083769) # Test parsing with unknown/improper CP type - with open(base_dir / "cp_fake_type.txt") as file: + with open(base_dir / "cp_fake_type.txt", encoding="utf-8") as file: contents = file.readlines() name, desc = parse_cp(contents) assert name is None diff --git a/tests/io/test_packmol.py b/tests/io/test_packmol.py index c6d25953dcd..19f33be1655 100644 --- a/tests/io/test_packmol.py +++ b/tests/io/test_packmol.py @@ -122,7 +122,7 @@ def test_control_params(self): ], ) input_set.write_input(self.tmp_path) - with open(f"{self.tmp_path}/packmol.inp") as file: + with open(f"{self.tmp_path}/packmol.inp", encoding="utf-8") as file: input_string = file.read() assert "maxit 0" in input_string assert "nloop 0" in input_string @@ -154,7 +154,7 @@ def test_no_return_and_box(self): box=[0, 0, 0, 2, 2, 2], ) pw.write_input(self.tmp_path) - with open(f"{self.tmp_path}/packmol.inp") as file: + with open(f"{self.tmp_path}/packmol.inp", encoding="utf-8") as file: input_string = file.read() assert "inside box 0 0 0 2 2 2" in input_string with pytest.raises(ValueError, match=ERR_MSG_173): diff --git a/tests/io/test_res.py b/tests/io/test_res.py index eea55f09d8c..43b996dc01c 100644 --- a/tests/io/test_res.py +++ b/tests/io/test_res.py @@ -148,7 +148,7 @@ def test_sfac_writer(self, provider: AirssProvider): class TestSpin: def test_read_spin(self): - with open(res_coc) as file: + with open(res_coc, encoding="utf-8") as file: lines = file.readlines() # add spin to a line lines[25] = f"{lines[25][:-1]} -1.4\n" @@ -163,7 +163,7 @@ def test_read_spin(self): def test_gh_2938_example(self): res_spin_file = f"{TEST_DIR}/spins-in-last-col.res" - with open(res_spin_file) as res_file: + with open(res_spin_file, encoding="utf-8") as res_file: contents = res_file.read() provider = AirssProvider.from_str(contents) diff --git a/tests/io/test_shengbte.py b/tests/io/test_shengbte.py index 303c9d094aa..a9cd194753b 100644 --- a/tests/io/test_shengbte.py +++ b/tests/io/test_shengbte.py @@ -65,18 +65,18 @@ def test_from_file(self): io.to_file(filename=f"{self.tmp_path}/test_control") - with open(f"{self.tmp_path}/test_control") as file: + with open(f"{self.tmp_path}/test_control", encoding="utf-8") as file: test_str = file.read() - with open(f"{TEST_DIR}/CONTROL-CSLD_Si") as reference_file: + with open(f"{TEST_DIR}/CONTROL-CSLD_Si", encoding="utf-8") as reference_file: reference_string = reference_file.read() assert test_str == reference_string def test_from_dict(self): io = Control.from_dict(self.test_dict) io.to_file(filename=f"{self.tmp_path}/test_control") - with open(f"{self.tmp_path}/test_control") as file: + with open(f"{self.tmp_path}/test_control", encoding="utf-8") as file: test_str = file.read() - with open(f"{TEST_DIR}/CONTROL-CSLD_Si") as reference_file: + with open(f"{TEST_DIR}/CONTROL-CSLD_Si", encoding="utf-8") as reference_file: reference_string = reference_file.read() assert test_str == reference_string diff --git a/tests/io/test_template_input.py b/tests/io/test_template_input.py index 3be8ae45374..72354c8f87f 100644 --- a/tests/io/test_template_input.py +++ b/tests/io/test_template_input.py @@ -18,7 +18,7 @@ def test_write_inputs(self): filename="hello_world.in", ) input_set.write_input(self.tmp_path) - with open(f"{self.tmp_path}/hello_world.in") as file: + with open(f"{self.tmp_path}/hello_world.in", encoding="utf-8") as file: assert "298" in file.read() with pytest.raises(FileNotFoundError, match="No such file or directory:"): @@ -42,7 +42,7 @@ def test_write_inputs(self): input_set.write_input(self.tmp_path, overwrite=True) - with open(f"{self.tmp_path}/hello_world.in") as file: + with open(f"{self.tmp_path}/hello_world.in", encoding="utf-8") as file: assert "400" in file.read() input_set.write_input(self.tmp_path, zip_inputs=True) diff --git a/tests/io/vasp/test_inputs.py b/tests/io/vasp/test_inputs.py index 5b572d44acd..d1fb9b1b337 100644 --- a/tests/io/vasp/test_inputs.py +++ b/tests/io/vasp/test_inputs.py @@ -426,7 +426,7 @@ def test_write_md_poscar(self): # check output produced for lattice velocities has required format and spaces # added in https://github.com/materialsproject/pymatgen/pull/3433 - with open(path) as file: + with open(path, encoding="utf-8") as file: lines = file.readlines() pattern = (r" [-| ]?\d\.\d{7}E[+-]\d{2}" * 3)[1:] for line in lines[18:24]: @@ -1293,6 +1293,11 @@ def test_automatic_monkhorst_vs_gamma_style_selection(self): kpoints = Kpoints.automatic_density_by_lengths(struct, [len_density] * 3) assert kpoints.style == Kpoints.supported_modes.Gamma + def test_non_ascii_comment(self): + """Non-ASCII comment like 'Γ' might not be encoded correctly in Windows.""" + kpoints = Kpoints.from_file(f"{VASP_IN_DIR}/KPOINTS_band") + assert kpoints.labels[0] == "Γ", f"Γ is not encoded correctly, got {kpoints.labels[0]}" + @pytest.mark.filterwarnings( "ignore:POTCAR data with symbol .* is not known to pymatgen:pymatgen.io.vasp.inputs.UnknownPotcarWarning" @@ -1664,7 +1669,7 @@ def test_copy(self): def test_run_vasp(self): self.vasp_input.run_vasp(".", vasp_cmd=["cat", "INCAR"]) - with open("vasp.out") as file: + with open("vasp.out", encoding="utf-8") as file: output = file.read() assert output.split("\n")[0] == "ALGO = Damped" diff --git a/tests/io/vasp/test_outputs.py b/tests/io/vasp/test_outputs.py index cd48d28e4de..0f688cf5ce9 100644 --- a/tests/io/vasp/test_outputs.py +++ b/tests/io/vasp/test_outputs.py @@ -1579,7 +1579,7 @@ def test_init(self): def test_write(self): self.chgcar_spin.write_file(out_path := f"{self.tmp_path}/CHGCAR_pmg") - with open(out_path) as file: + with open(out_path, encoding="utf-8") as file: for idx, line in enumerate(file): if idx in (22130, 44255): assert line == "augmentation occupancies 1 15\n" diff --git a/tests/io/vasp/test_sets.py b/tests/io/vasp/test_sets.py index 243f365171c..f4f6281f1b0 100644 --- a/tests/io/vasp/test_sets.py +++ b/tests/io/vasp/test_sets.py @@ -106,7 +106,7 @@ def test_sets_changed(self): input_sets = glob(f"{MODULE_DIR}/*.yaml") hashes = {} for input_set in input_sets: - with open(input_set) as file: + with open(input_set, encoding="utf-8") as file: text = file.read().encode("utf-8") name = os.path.basename(input_set) hashes[name] = hashlib.sha256(text).hexdigest() diff --git a/tests/io/xtb/test_inputs.py b/tests/io/xtb/test_inputs.py index 546386c6391..e39d32d392a 100644 --- a/tests/io/xtb/test_inputs.py +++ b/tests/io/xtb/test_inputs.py @@ -34,7 +34,7 @@ def test_constraints_file(self): constraints = {"atoms": [8, 1, 2], "force_constant": 0.5} mol = Molecule.from_file(f"{TEST_DIR}/crest_in.xyz") cin = CRESTInput(molecule=mol, constraints=constraints) - with open(f"{EXPECTED_DIR}/expected_constrains.txt") as file: + with open(f"{EXPECTED_DIR}/expected_constrains.txt", encoding="utf-8") as file: exp_con = file.read() assert ( exp_con.strip() diff --git a/tests/phonon/test_bandstructure.py b/tests/phonon/test_bandstructure.py index 7f449792544..51f0fddaf4e 100644 --- a/tests/phonon/test_bandstructure.py +++ b/tests/phonon/test_bandstructure.py @@ -15,11 +15,11 @@ class TestPhononBandStructureSymmLine(PymatgenTest): def setUp(self): - with open(f"{TEST_DIR}/NaCl_phonon_bandstructure.json") as file: + with open(f"{TEST_DIR}/NaCl_phonon_bandstructure.json", encoding="utf-8") as file: dct = json.load(file) self.bs = PhononBandStructureSymmLine.from_dict(dct) - with open(f"{TEST_DIR}/Si_phonon_bandstructure.json") as file: + with open(f"{TEST_DIR}/Si_phonon_bandstructure.json", encoding="utf-8") as file: dct = json.load(file) self.bs2 = PhononBandStructureSymmLine.from_dict(dct) diff --git a/tests/phonon/test_dos.py b/tests/phonon/test_dos.py index e586604d81e..5690a9eb8d2 100644 --- a/tests/phonon/test_dos.py +++ b/tests/phonon/test_dos.py @@ -16,9 +16,9 @@ class TestPhononDos(PymatgenTest): def setUp(self): - with open(f"{TEST_DIR}/NaCl_ph_dos.json") as file: + with open(f"{TEST_DIR}/NaCl_ph_dos.json", encoding="utf-8") as file: self.dos = PhononDos.from_dict(json.load(file)) - with open(f"{TEST_DIR}/NaCl_complete_ph_dos.json") as file: + with open(f"{TEST_DIR}/NaCl_complete_ph_dos.json", encoding="utf-8") as file: self.structure = CompletePhononDos.from_dict(json.load(file)).structure def test_repr(self): @@ -184,7 +184,7 @@ def test_dos_fp_exceptions(self): class TestCompletePhononDos(PymatgenTest): def setUp(self): - with open(f"{TEST_DIR}/NaCl_complete_ph_dos.json") as file: + with open(f"{TEST_DIR}/NaCl_complete_ph_dos.json", encoding="utf-8") as file: self.cdos = CompletePhononDos.from_dict(json.load(file)) def test_properties(self): diff --git a/tests/phonon/test_plotter.py b/tests/phonon/test_plotter.py index 1afdd7c62bd..4b6d2d945d9 100644 --- a/tests/phonon/test_plotter.py +++ b/tests/phonon/test_plotter.py @@ -18,7 +18,7 @@ class TestPhononDosPlotter(TestCase): def setUp(self): - with open(f"{TEST_DIR}/NaCl_complete_ph_dos.json") as file: + with open(f"{TEST_DIR}/NaCl_complete_ph_dos.json", encoding="utf-8") as file: self.dos = CompletePhononDos.from_dict(json.load(file)) self.plotter = PhononDosPlotter(sigma=0.2, stack=True) self.plotter_no_stack = PhononDosPlotter(sigma=0.2, stack=False) @@ -56,11 +56,15 @@ def test_plot(self): class TestPhononBSPlotter(TestCase): def setUp(self): - with open(f"{TEST_FILES_DIR}/electronic_structure/bandstructure/NaCl_phonon_bandstructure.json") as file: + with open( + f"{TEST_FILES_DIR}/electronic_structure/bandstructure/NaCl_phonon_bandstructure.json", encoding="utf-8" + ) as file: dct = json.loads(file.read()) self.bs = PhononBandStructureSymmLine.from_dict(dct) self.plotter = PhononBSPlotter(self.bs, label="NaCl") - with open(f"{TEST_FILES_DIR}/electronic_structure/bandstructure/SrTiO3_phonon_bandstructure.json") as file: + with open( + f"{TEST_FILES_DIR}/electronic_structure/bandstructure/SrTiO3_phonon_bandstructure.json", encoding="utf-8" + ) as file: dct = json.loads(file.read()) self.bs_sto = PhononBandStructureSymmLine.from_dict(dct) self.plotter_sto = PhononBSPlotter(self.bs_sto) @@ -115,7 +119,7 @@ def test_plot_compare(self): class TestThermoPlotter(TestCase): def setUp(self): - with open(f"{TEST_DIR}/NaCl_complete_ph_dos.json") as file: + with open(f"{TEST_DIR}/NaCl_complete_ph_dos.json", encoding="utf-8") as file: self.dos = CompletePhononDos.from_dict(json.load(file)) self.plotter = ThermoPlotter(self.dos, self.dos.structure) diff --git a/tests/phonon/test_thermal_displacements.py b/tests/phonon/test_thermal_displacements.py index aeb26a4dffc..5604e7c4989 100644 --- a/tests/phonon/test_thermal_displacements.py +++ b/tests/phonon/test_thermal_displacements.py @@ -199,8 +199,7 @@ def test_beta(self): def test_write_file(self): printed = False self.thermal.write_cif(f"{self.tmp_path}/U.cif") - with open(f"{self.tmp_path}/U.cif") as file: - file.seek(0) # set position to start of file + with open(f"{self.tmp_path}/U.cif", encoding="utf-8") as file: lines = file.read().splitlines() # now we won't have those newlines if "_atom_site_aniso_U_12" in lines: printed = True @@ -335,8 +334,7 @@ def test_visualization_directionality_criterion(self): self.thermal.visualize_directionality_quality_criterion( filename=f"{self.tmp_path}/U.vesta", other=self.thermal, which_structure=0 ) - with open(f"{self.tmp_path}/U.vesta") as file: - file.seek(0) # set position to start of file + with open(f"{self.tmp_path}/U.vesta", encoding="utf-8") as file: lines = file.read().splitlines() # now we won't have those newlines if "VECTR" in lines: printed = True diff --git a/tests/transformations/test_advanced_transformations.py b/tests/transformations/test_advanced_transformations.py index 2f73ace7cd3..1d6a2bc4ded 100644 --- a/tests/transformations/test_advanced_transformations.py +++ b/tests/transformations/test_advanced_transformations.py @@ -54,7 +54,7 @@ def get_table(): default lambda table. """ json_path = f"{TEST_FILES_DIR}/analysis/struct_predictor/test_lambda.json" - with open(json_path) as file: + with open(json_path, encoding="utf-8") as file: return json.load(file) diff --git a/tests/transformations/test_standard_transformations.py b/tests/transformations/test_standard_transformations.py index d9ce0da09d8..7a49a0bf301 100644 --- a/tests/transformations/test_standard_transformations.py +++ b/tests/transformations/test_standard_transformations.py @@ -451,7 +451,7 @@ def test_apply_transformation(self): struct = trafo.apply_transformation(struct) assert len(struct) == 4 - with open(f"{TEST_FILES_DIR}/transformations/TiO2_super.json") as file: + with open(f"{TEST_FILES_DIR}/transformations/TiO2_super.json", encoding="utf-8") as file: struct = json.load(file, cls=MontyDecoder) prim = trafo.apply_transformation(struct) assert prim.formula == "Ti4 O8" diff --git a/tests/vis/test_plotters.py b/tests/vis/test_plotters.py index 87311cc4d66..c2108809ba6 100644 --- a/tests/vis/test_plotters.py +++ b/tests/vis/test_plotters.py @@ -11,7 +11,7 @@ from pymatgen.util.testing import TEST_FILES_DIR, PymatgenTest from pymatgen.vis.plotters import SpectrumPlotter -with open(f"{TEST_FILES_DIR}/analysis/spectrum_test/LiCoO2_k_xanes.json") as file: +with open(f"{TEST_FILES_DIR}/analysis/spectrum_test/LiCoO2_k_xanes.json", encoding="utf-8") as file: spect_data_dict = json.load(file, cls=MontyDecoder) From 27230b18bbfdecbbb85bf1282ad900a7ee28fea1 Mon Sep 17 00:00:00 2001 From: "Haoyu (Daniel) YANG" Date: Fri, 10 Jan 2025 04:38:23 +0800 Subject: [PATCH 22/24] [Breaking/Fix] Skip isotopes when iterating through `core.Element` (#4180) * try to overwrite iter * add test * enhance module documentation, remove ptable class * also check full members * also check full members * inherit from EnumType * avoid hard-coding isotopes * revert to enummeta * add named_isotopes property * fix incorrect merge --------- Co-authored-by: Shyue Ping Ong --- src/pymatgen/core/periodic_table.py | 24 +++++++++++++++++++++--- tests/core/test_periodic_table.py | 21 +++++++++++++++++++++ 2 files changed, 42 insertions(+), 3 deletions(-) diff --git a/src/pymatgen/core/periodic_table.py b/src/pymatgen/core/periodic_table.py index c08f9bcc30e..923882ddc94 100644 --- a/src/pymatgen/core/periodic_table.py +++ b/src/pymatgen/core/periodic_table.py @@ -1,4 +1,9 @@ -"""Classes representing Element, Species (Element + oxidation state) and PeriodicTable.""" +"""Classes representing: +- Element: Element in the periodic table. +- Species: Element with optional oxidation state and spin. +- DummySpecies: Non-traditional Elements/Species (vacancies/...). +- ElementType: element types (metal/noble_gas/halogen/s_block/...). +""" from __future__ import annotations @@ -8,7 +13,7 @@ import re import warnings from collections import Counter -from enum import Enum, unique +from enum import Enum, EnumMeta, unique from itertools import combinations, product from pathlib import Path from typing import TYPE_CHECKING, overload @@ -864,7 +869,20 @@ def print_periodic_table(filter_function: Callable | None = None) -> None: print(" ".join(row_str)) -class Element(ElementBase): +class _ElementMeta(EnumMeta): + """Override Element to handle isotopes.""" + + def __iter__(cls): + """Skip named isotopes when iterating.""" + return (elem for elem in super().__iter__() if not elem._is_named_isotope) + + @property + def named_isotopes(cls): + """Get all named isotopes.""" + return tuple(elem for elem in super().__iter__() if elem._is_named_isotope) + + +class Element(ElementBase, metaclass=_ElementMeta): """Enum representing an element in the periodic table.""" # This name = value convention is redundant and dumb, but unfortunately is diff --git a/tests/core/test_periodic_table.py b/tests/core/test_periodic_table.py index a4a696a4f56..84b6fcca159 100644 --- a/tests/core/test_periodic_table.py +++ b/tests/core/test_periodic_table.py @@ -29,6 +29,25 @@ def test_init(self): assert id(Element("Fe")) == id(Element("Fe")) # Test caching + def test_iter(self): + # Make sure isotopes don't show during iteration + assert [elem.name for elem in Element] == ( + "H,He,Li,Be,B,C,N,O,F,Ne,Na,Mg,Al,Si,P,S,Cl,Ar,K,Ca,Sc,Ti,V,Cr," + "Mn,Fe,Co,Ni,Cu,Zn,Ga,Ge,As,Se,Br,Kr,Rb,Sr,Y,Zr,Nb,Mo,Tc,Ru,Rh,Pd," + "Ag,Cd,In,Sn,Sb,Te,I,Xe,Cs,Ba,La,Ce,Pr,Nd,Pm,Sm,Eu,Gd,Tb,Dy,Ho,Er,Tm," + "Yb,Lu,Hf,Ta,W,Re,Os,Ir,Pt,Au,Hg,Tl,Pb,Bi,Po,At,Rn,Fr,Ra,Ac,Th,Pa,U,Np," + "Pu,Am,Cm,Bk,Cf,Es,Fm,Md,No,Lr,Rf,Db,Sg,Bh,Hs,Mt,Ds,Rg,Cn,Nh,Fl,Mc,Lv,Ts,Og" + ).split(",") + + # Make sure isotopes are still in members + assert list(Element.__members__) == ( + "H,D,T,He,Li,Be,B,C,N,O,F,Ne,Na,Mg,Al,Si,P,S,Cl,Ar,K,Ca,Sc,Ti,V,Cr," + "Mn,Fe,Co,Ni,Cu,Zn,Ga,Ge,As,Se,Br,Kr,Rb,Sr,Y,Zr,Nb,Mo,Tc,Ru,Rh,Pd," + "Ag,Cd,In,Sn,Sb,Te,I,Xe,Cs,Ba,La,Ce,Pr,Nd,Pm,Sm,Eu,Gd,Tb,Dy,Ho,Er,Tm," + "Yb,Lu,Hf,Ta,W,Re,Os,Ir,Pt,Au,Hg,Tl,Pb,Bi,Po,At,Rn,Fr,Ra,Ac,Th,Pa,U,Np," + "Pu,Am,Cm,Bk,Cf,Es,Fm,Md,No,Lr,Rf,Db,Sg,Bh,Hs,Mt,Ds,Rg,Cn,Nh,Fl,Mc,Lv,Ts,Og" + ).split(",") + def test_missing_and_confusing_data(self): with pytest.warns(UserWarning, match="No data available"): _ = Element.H.metallic_radius @@ -391,6 +410,8 @@ def test_isotope(self): 3.0155007134, ] + assert Element.named_isotopes == (Element.D, Element.T) + class TestSpecies(PymatgenTest): def setUp(self): From a8c2b016ac5c665525d4eb184831c7da01fa07b4 Mon Sep 17 00:00:00 2001 From: Shyue Ping Ong Date: Thu, 9 Jan 2025 12:43:19 -0800 Subject: [PATCH 23/24] Update change log. --- docs/CHANGES.md | 9 +++++++++ requirements.txt | 40 ++++++++++++++++++++-------------------- 2 files changed, 29 insertions(+), 20 deletions(-) diff --git a/docs/CHANGES.md b/docs/CHANGES.md index a7c9276b17a..cb3bc909c10 100644 --- a/docs/CHANGES.md +++ b/docs/CHANGES.md @@ -6,6 +6,15 @@ nav_order: 4 # Changelog +## 2025.1.9 +- Iterating Element no longer contains isotopes (D and T). (@DanielYang59) +- Remove is_rare_earth_metal from ElementBase (@jdewasseigeosium) +- Fix DOS parsing for SOC calculations (@kavanase) +- Added Pure Random Algo to OrderDisorderedStructureTransformation (@jmmshn) +- Fix ion formula check in ion_or_solid_comp_object of analysis.pourbaix_diagram (@DanielYang59) +- AseAtomsAdaptor: Support arbitrary selective dynamics constraints (@yantar92) +- Explicit UTF-8 encoding for zopen and open. (@DanielYang59) + ## 2024.11.13 - CP2K fixes (@janosh) diff --git a/requirements.txt b/requirements.txt index cd42df82a98..0c30946786b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,29 +2,29 @@ # uv pip compile pyproject.toml -o requirements.txt certifi==2024.8.30 # via requests -charset-normalizer==3.3.2 +charset-normalizer==3.4.0 # via requests -contourpy==1.2.1 +contourpy==1.3.1 # via matplotlib cycler==0.12.1 # via matplotlib -fonttools==4.53.0 +fonttools==4.55.0 # via matplotlib -idna==3.7 +idna==3.10 # via requests joblib==1.4.2 # via pymatgen (pyproject.toml) -kiwisolver==1.4.5 +kiwisolver==1.4.7 # via matplotlib latexcodec==3.0.0 # via pybtex matplotlib==3.9.2 # via pymatgen (pyproject.toml) -monty==2024.10.21 +monty==2025.1.9 # via pymatgen (pyproject.toml) mpmath==1.3.0 # via sympy -networkx==3.3 +networkx==3.4.2 # via pymatgen (pyproject.toml) numpy==2.0.0 # via @@ -34,37 +34,37 @@ numpy==2.0.0 # pandas # scipy # spglib -packaging==24.1 +packaging==24.2 # via # matplotlib # plotly palettable==3.3.3 # via pymatgen (pyproject.toml) -pandas==2.2.2 +pandas==2.2.3 # via pymatgen (pyproject.toml) pillow==11.0.0 # via matplotlib -plotly==5.22.0 +plotly==5.24.1 # via pymatgen (pyproject.toml) pybtex==0.24.0 # via pymatgen (pyproject.toml) -pyparsing==3.1.2 +pyparsing==3.2.0 # via matplotlib python-dateutil==2.9.0.post0 # via # matplotlib # pandas -pytz==2024.1 +pytz==2024.2 # via pandas pyyaml==6.0.2 # via pybtex requests==2.32.3 # via pymatgen (pyproject.toml) -ruamel-yaml==0.18.6 +ruamel-yaml==0.18.10 # via pymatgen (pyproject.toml) -ruamel-yaml-clib==0.2.8 +ruamel-yaml-clib==0.2.12 # via ruamel-yaml -scipy==1.13.1 +scipy==1.14.1 # via pymatgen (pyproject.toml) six==1.16.0 # via @@ -72,17 +72,17 @@ six==1.16.0 # python-dateutil spglib==2.5.0 # via pymatgen (pyproject.toml) -sympy==1.12.1 +sympy==1.13.1 # via pymatgen (pyproject.toml) tabulate==0.9.0 # via pymatgen (pyproject.toml) -tenacity==8.4.1 +tenacity==9.0.0 # via plotly -tqdm==4.66.5 +tqdm==4.67.1 # via pymatgen (pyproject.toml) -tzdata==2024.1 +tzdata==2024.2 # via pandas -uncertainties==3.2.1 +uncertainties==3.2.2 # via pymatgen (pyproject.toml) urllib3==2.2.3 # via requests From 0d14d7240e1d773e5ab9c4b9ecea690c8a637ff6 Mon Sep 17 00:00:00 2001 From: Shyue Ping Ong Date: Thu, 9 Jan 2025 13:14:09 -0800 Subject: [PATCH 24/24] Update docs --- docs/apidoc/pymatgen.util.rst | 16 +- docs/modules.html | 66 +- docs/pymatgen.alchemy.html | 137 +- ...ymatgen.analysis.chemenv.connectivity.html | 157 +- ...onments.coordination_geometries_files.html | 31 +- ...sis.chemenv.coordination_environments.html | 767 ++-- docs/pymatgen.analysis.chemenv.html | 31 +- docs/pymatgen.analysis.chemenv.utils.html | 319 +- docs/pymatgen.analysis.diffraction.html | 105 +- docs/pymatgen.analysis.elasticity.html | 199 +- docs/pymatgen.analysis.ferroelectricity.html | 69 +- docs/pymatgen.analysis.gb.html | 31 +- docs/pymatgen.analysis.html | 1740 +++++---- docs/pymatgen.analysis.interfaces.html | 107 +- docs/pymatgen.analysis.magnetism.html | 157 +- docs/pymatgen.analysis.solar.html | 43 +- ...ymatgen.analysis.structure_prediction.html | 87 +- docs/pymatgen.analysis.topological.html | 39 +- docs/pymatgen.analysis.xas.html | 67 +- docs/pymatgen.apps.battery.html | 253 +- docs/pymatgen.apps.borg.html | 79 +- docs/pymatgen.apps.html | 31 +- docs/pymatgen.cli.html | 87 +- docs/pymatgen.command_line.html | 202 +- docs/pymatgen.core.html | 3131 +++++++++-------- docs/pymatgen.electronic_structure.html | 645 ++-- docs/pymatgen.entries.html | 276 +- docs/pymatgen.ext.html | 107 +- docs/pymatgen.html | 83 +- docs/pymatgen.io.abinit.html | 739 ++-- docs/pymatgen.io.aims.html | 359 +- docs/pymatgen.io.aims.sets.html | 181 +- docs/pymatgen.io.cp2k.html | 659 ++-- docs/pymatgen.io.exciting.html | 111 +- docs/pymatgen.io.feff.html | 187 +- docs/pymatgen.io.html | 948 ++--- docs/pymatgen.io.lammps.html | 223 +- docs/pymatgen.io.lobster.html | 377 +- docs/pymatgen.io.pwmat.html | 153 +- docs/pymatgen.io.qchem.html | 167 +- docs/pymatgen.io.vasp.html | 1452 ++++---- docs/pymatgen.io.xtb.html | 39 +- docs/pymatgen.optimization.html | 39 +- docs/pymatgen.phonon.html | 291 +- docs/pymatgen.symmetry.html | 325 +- docs/pymatgen.transformations.html | 310 +- docs/pymatgen.util.html | 449 ++- docs/pymatgen.util.testing.html | 114 +- docs/pymatgen.vis.html | 125 +- pyproject.toml | 4 +- 50 files changed, 8406 insertions(+), 7908 deletions(-) diff --git a/docs/apidoc/pymatgen.util.rst b/docs/apidoc/pymatgen.util.rst index 289365ba6f8..78eb7f25a1c 100644 --- a/docs/apidoc/pymatgen.util.rst +++ b/docs/apidoc/pymatgen.util.rst @@ -6,14 +6,6 @@ pymatgen.util package :undoc-members: :show-inheritance: -Subpackages ------------ - -.. toctree:: - :maxdepth: 7 - - pymatgen.util.testing - Submodules ---------- @@ -113,6 +105,14 @@ pymatgen.util.string module :undoc-members: :show-inheritance: +pymatgen.util.testing module +---------------------------- + +.. automodule:: pymatgen.util.testing + :members: + :undoc-members: + :show-inheritance: + pymatgen.util.typing module --------------------------- diff --git a/docs/modules.html b/docs/modules.html index 1664eb761d9..b7a19f6c2e0 100644 --- a/docs/modules.html +++ b/docs/modules.html @@ -1,24 +1,24 @@ + + - + - pymatgen — pymatgen 2024.10.27 documentation - - - - - + pymatgen — pymatgen 2024.11.13 documentation + + + + - - - - - - + + + + + + + @@ -35,9 +35,6 @@ -
- 2024.10.27 -
@@ -1136,6 +1133,7 @@

pymatgen
  • PourbaixDiagram
  • -
  • generate_entry_label()
  • ion_or_solid_comp_object()
  • @@ -1774,6 +1771,7 @@

    pymatgen
  • Composition.fractional_composition
  • Composition.from_dict()
  • Composition.from_weight_dict()
  • +
  • Composition.from_weights()
  • Composition.get_atomic_fraction()
  • Composition.get_el_amt_dict()
  • Composition.get_integer_formula_and_factor()
  • @@ -2623,7 +2621,6 @@

    pymatgen
  • ElementBase.is_quadrupolar
  • ElementBase.is_radioactive
  • ElementBase.is_rare_earth
  • -
  • ElementBase.is_rare_earth_metal
  • ElementBase.is_transition_metal
  • ElementBase.is_valid_symbol()
  • ElementBase.iupac_ordering
  • @@ -4191,6 +4188,8 @@

    pymatgen
  • MITMDSet
  • MITNEBSet
  • MITRelaxSet
  • +
  • MP24RelaxSet
  • +
  • MP24StaticSet
  • MPAbsorptionSet
  • MPHSEBSSet
  • MPHSERelaxSet
  • @@ -5425,6 +5424,7 @@

    pymatgen
  • OrderDisorderedStructureTransformation.ALGO_BEST_FIRST
  • OrderDisorderedStructureTransformation.ALGO_COMPLETE
  • OrderDisorderedStructureTransformation.ALGO_FAST
  • +
  • OrderDisorderedStructureTransformation.ALGO_RANDOM
  • OrderDisorderedStructureTransformation.apply_transformation()
  • OrderDisorderedStructureTransformation.is_one_to_many
  • OrderDisorderedStructureTransformation.lowest_energy_structure
  • @@ -5480,6 +5480,7 @@

    pymatgen
  • SupercellTransformation.inverse
  • +
  • get_randomly_manipulated_structures()
  • pymatgen.transformations.transformation_abc module
      @@ -5495,20 +5496,6 @@

      pymatgen

  • pymatgen.util package
      -
    • Subpackages -
    • Submodules
    • pymatgen.util.coord module
    • diff --git a/docs/pymatgen.alchemy.html b/docs/pymatgen.alchemy.html index 7e6460b08a3..d362fd6ed1a 100644 --- a/docs/pymatgen.alchemy.html +++ b/docs/pymatgen.alchemy.html @@ -1,23 +1,23 @@ + + - + - pymatgen.alchemy package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.alchemy package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
      - 2024.10.27 -
      @@ -173,13 +170,13 @@

      Submodules
      -class AbstractStructureFilter[source]
      +class AbstractStructureFilter[source]

      Bases: MSONable, ABC

      Structures that return True when passed to the test() method are retained during transmutation. Those that return False are removed.

      -abstract test(structure: Structure)[source]
      +abstract test(structure: Structure)[source]

      Structures that return true are kept in the Transmuter object during filtering.

      Parameters:
      @@ -198,7 +195,7 @@

      Submodules
      -class ChargeBalanceFilter[source]
      +class ChargeBalanceFilter[source]

      Bases: AbstractStructureFilter

      This filter removes structures that are not charge balanced from the transmuter. This only works if the structure is oxidation state @@ -207,7 +204,7 @@

      Submodules
      -test(structure: Structure)[source]
      +test(structure: Structure)[source]

      True if structure is neutral.

      @@ -215,7 +212,7 @@

      Submodules
      -class ContainsSpecieFilter(species, strict_compare=False, AND=True, exclude=False)[source]
      +class ContainsSpecieFilter(species, strict_compare=False, AND=True, exclude=False)[source]

      Bases: AbstractStructureFilter

      Filter for structures containing certain elements or species. By default compares by atomic number.

      @@ -233,13 +230,13 @@

      Submodules
      -as_dict() dict[source]
      +as_dict() dict[source]

      Get MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]
      Parameters:

      dct (dict) – Dict representation.

      @@ -252,7 +249,7 @@

      Submodules
      -test(structure: Structure)[source]
      +test(structure: Structure)[source]

      True if structure does not contain specified species.

      @@ -260,7 +257,7 @@

      Submodules
      -class RemoveDuplicatesFilter(structure_matcher: dict | StructureMatcher | None = None, symprec: float | None = None)[source]
      +class RemoveDuplicatesFilter(structure_matcher: dict | StructureMatcher | None = None, symprec: float | None = None)[source]

      Bases: AbstractStructureFilter

      This filter removes exact duplicate structures from the transmuter.

      Remove duplicate structures based on the structure matcher @@ -278,7 +275,7 @@

      Submodules
      -test(structure: Structure) bool[source]
      +test(structure: Structure) bool[source]
      Parameters:

      structure (Structure) – Input structure to test.

      @@ -296,7 +293,7 @@

      Submodules
      -class RemoveExistingFilter(existing_structures: list[Structure], structure_matcher: dict | StructureMatcher | None = None, symprec: float | None = None)[source]
      +class RemoveExistingFilter(existing_structures: list[Structure], structure_matcher: dict | StructureMatcher | None = None, symprec: float | None = None)[source]

      Bases: AbstractStructureFilter

      This filter removes structures existing in a given list from the transmuter.

      Remove existing structures based on the structure matcher @@ -315,13 +312,13 @@

      Submodules
      -as_dict()[source]
      +as_dict()[source]

      Get MSONable dict.

      -test(structure: Structure)[source]
      +test(structure: Structure)[source]

      True if structure is not in existing list.

      @@ -329,7 +326,7 @@

      Submodules
      -class SpecieProximityFilter(specie_and_min_dist_dict)[source]
      +class SpecieProximityFilter(specie_and_min_dist_dict)[source]

      Bases: AbstractStructureFilter

      This filter removes structures that have certain species that are too close together.

      @@ -344,13 +341,13 @@

      Submodules
      -as_dict()[source]
      +as_dict()[source]

      Get MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]
      Parameters:

      dct (dict) – Dict representation.

      @@ -363,7 +360,7 @@

      Submodules
      -test(structure: Structure)[source]
      +test(structure: Structure)[source]

      True if structure does not contain species within specified distances.

      @@ -371,7 +368,7 @@

      Submodules
      -class SpeciesMaxDistFilter(sp1, sp2, max_dist)[source]
      +class SpeciesMaxDistFilter(sp1, sp2, max_dist)[source]

      Bases: AbstractStructureFilter

      This filter removes structures that do have two particular species that are not nearest neighbors by a predefined max_dist. For instance, if you are @@ -391,7 +388,7 @@

      Submodules
      -test(structure: Structure)[source]
      +test(structure: Structure)[source]

      True if structure contains the two species but their distance is greater than max_dist.

      @@ -405,7 +402,7 @@

      Submodules
      -class TransformedStructure(structure: Structure, transformations: AbstractTransformation | Sequence[AbstractTransformation] | None = None, history: list[AbstractTransformation | dict[str, Any]] | None = None, other_parameters: dict[str, Any] | None = None)[source]
      +class TransformedStructure(structure: Structure, transformations: AbstractTransformation | Sequence[AbstractTransformation] | None = None, history: list[AbstractTransformation | dict[str, Any]] | None = None, other_parameters: dict[str, Any] | None = None)[source]

      Bases: MSONable

      Container for new structures that include history of transformations.

      Each transformed structure is made up of a sequence of structures with @@ -423,7 +420,7 @@

      Submodules
      -append_filter(structure_filter: AbstractStructureFilter) None[source]
      +append_filter(structure_filter: AbstractStructureFilter) None[source]

      Add a filter.

      Parameters:
      @@ -435,7 +432,7 @@

      Submodules
      -append_transformation(transformation, return_alternatives: bool = False, clear_redo: bool = True) list[TransformedStructure] | None[source]
      +append_transformation(transformation, return_alternatives: bool = False, clear_redo: bool = True) list[TransformedStructure] | None[source]

      Append a transformation to the TransformedStructure.

      Parameters:
      @@ -457,13 +454,13 @@

      Submodules
      -as_dict() dict[str, Any][source]
      +as_dict() dict[str, Any][source]

      Dict representation of the TransformedStructure.

      -extend_transformations(transformations: list[AbstractTransformation], return_alternatives: bool = False) None[source]
      +extend_transformations(transformations: list[AbstractTransformation], return_alternatives: bool = False) None[source]

      Extend a sequence of transformations to the TransformedStructure.

      Parameters:
      @@ -480,7 +477,7 @@

      Submodules
      -classmethod from_cif_str(cif_string: str, transformations: list[AbstractTransformation] | None = None, primitive: bool = True, occupancy_tolerance: float = 1.0) Self[source]
      +classmethod from_cif_str(cif_string: str, transformations: list[AbstractTransformation] | None = None, primitive: bool = True, occupancy_tolerance: float = 1.0) Self[source]

      Generate TransformedStructure from a CIF string.

      Parameters:
      @@ -508,13 +505,13 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Create a TransformedStructure from a dict.

      -classmethod from_poscar_str(poscar_string: str, transformations: list[AbstractTransformation] | None = None) Self[source]
      +classmethod from_poscar_str(poscar_string: str, transformations: list[AbstractTransformation] | None = None) Self[source]

      Generate TransformedStructure from a poscar string.

      Parameters:
      @@ -529,7 +526,7 @@

      Submodules
      -classmethod from_snl(snl: StructureNL) Self[source]
      +classmethod from_snl(snl: StructureNL) Self[source]

      Create TransformedStructure from SNL.

      Parameters:
      @@ -543,7 +540,7 @@

      Submodules
      -get_vasp_input(vasp_input_set: type[VaspInputSet] = <class 'pymatgen.io.vasp.sets.MPRelaxSet'>, **kwargs) dict[str, Any][source]
      +get_vasp_input(vasp_input_set: type[VaspInputSet] = <class 'pymatgen.io.vasp.sets.MPRelaxSet'>, **kwargs) dict[str, Any][source]

      Get VASP input as a dict of VASP objects.

      Parameters:
      @@ -558,7 +555,7 @@

      Submodules
      -redo_next_change() None[source]
      +redo_next_change() None[source]

      Redo the last undone change in the TransformedStructure.

      Raises:
      @@ -569,7 +566,7 @@

      Submodules
      -set_parameter(key: str, value: Any) TransformedStructure[source]
      +set_parameter(key: str, value: Any) TransformedStructure[source]

      Set a parameter.

      Parameters:
      @@ -586,14 +583,14 @@

      Submodules
      -property structures: list[Structure][source]
      +property structures: list[Structure][source]

      Copy of all structures in the TransformedStructure. A structure is stored after every single transformation.

      -to_snl(authors: list[str], **kwargs) StructureNL[source]
      +to_snl(authors: list[str], **kwargs) StructureNL[source]

      Generate a StructureNL from TransformedStructure.

      Parameters:
      @@ -613,7 +610,7 @@

      Submodules
      -undo_last_change() None[source]
      +undo_last_change() None[source]

      Undo the last change in the TransformedStructure.

      Raises:
      @@ -624,7 +621,7 @@

      Submodules
      -property was_modified: bool[source]
      +property was_modified: bool[source]

      Boolean describing whether the last transformation on the structure made any alterations to it one example of when this would return false is in the case of performing a substitution transformation on the @@ -633,7 +630,7 @@

      Submodules
      -write_vasp_input(vasp_input_set: type[~pymatgen.io.vasp.sets.VaspInputSet] = <class 'pymatgen.io.vasp.sets.MPRelaxSet'>, output_dir: str = '.', create_directory: bool = True, **kwargs) None[source]
      +write_vasp_input(vasp_input_set: type[~pymatgen.io.vasp.sets.VaspInputSet] = <class 'pymatgen.io.vasp.sets.MPRelaxSet'>, output_dir: str = '.', create_directory: bool = True, **kwargs) None[source]

      Write VASP input to an output_dir.

      Parameters:
      @@ -662,7 +659,7 @@

      Submodules
      -class CifTransmuter(cif_string, transformations=None, primitive=True, extend_collection=False)[source]
      +class CifTransmuter(cif_string, transformations=None, primitive=True, extend_collection=False)[source]

      Bases: StandardTransmuter

      Generate a Transmuter from a CIF string, possibly containing multiple structures.

      Generate a Transmuter from a CIF string, possibly @@ -683,7 +680,7 @@

      Submodules
      -classmethod from_filenames(filenames, transformations=None, primitive=True, extend_collection=False) Self[source]
      +classmethod from_filenames(filenames, transformations=None, primitive=True, extend_collection=False) Self[source]

      Generate a TransformedStructureCollection from a cif, possibly containing multiple structures.

      @@ -703,7 +700,7 @@

      Submodules
      -class PoscarTransmuter(poscar_string, transformations=None, extend_collection=False)[source]
      +class PoscarTransmuter(poscar_string, transformations=None, extend_collection=False)[source]

      Bases: StandardTransmuter

      Generate a transmuter from a sequence of POSCARs.

      @@ -719,7 +716,7 @@

      Submodules
      -classmethod from_filenames(poscar_filenames, transformations=None, extend_collection=False) StandardTransmuter[source]
      +classmethod from_filenames(poscar_filenames, transformations=None, extend_collection=False) StandardTransmuter[source]

      Convenient constructor to generates a POSCAR transmuter from a list of POSCAR filenames.

      @@ -738,13 +735,13 @@

      Submodules
      -class StandardTransmuter(transformed_structures: list[TransformedStructure], transformations=None, extend_collection: int = 0, ncores: int | None = None)[source]
      +class StandardTransmuter(transformed_structures: list[TransformedStructure], transformations=None, extend_collection: int = 0, ncores: int | None = None)[source]

      Bases: object

      An example of a Transmuter object, which performs a sequence of transformations on many structures to generate TransformedStructures.

      -transformed_structures[source]
      +transformed_structures[source]

      All transformed structures.

      Type:
      @@ -774,7 +771,7 @@

      Submodules
      -add_tags(tags)[source]
      +add_tags(tags)[source]

      Add tags for the structures generated by the transmuter.

      Parameters:
      @@ -786,7 +783,7 @@

      Submodules
      -append_transformation(transformation, extend_collection=False, clear_redo=True) list[bool][source]
      +append_transformation(transformation, extend_collection=False, clear_redo=True) list[bool][source]

      Append a transformation to all TransformedStructures.

      Parameters:
      @@ -816,7 +813,7 @@

      Submodules
      -append_transformed_structures(trafo_structs_or_transmuter)[source]
      +append_transformed_structures(trafo_structs_or_transmuter)[source]

      Overloaded to accept either a list of transformed structures or transmuter, it which case it appends the second transmuter’s structures.

      @@ -828,7 +825,7 @@

      Submodules
      -apply_filter(structure_filter: AbstractStructureFilter)[source]
      +apply_filter(structure_filter: AbstractStructureFilter)[source]

      Apply a structure_filter to the list of TransformedStructures in the transmuter.

      @@ -840,7 +837,7 @@

      Submodules
      -extend_transformations(transformations)[source]
      +extend_transformations(transformations)[source]

      Extend a sequence of transformations to the TransformedStructure.

      Parameters:
      @@ -851,7 +848,7 @@

      Submodules
      -classmethod from_structures(structures, transformations=None, extend_collection=0) Self[source]
      +classmethod from_structures(structures, transformations=None, extend_collection=0) Self[source]

      Alternative constructor from structures rather than TransformedStructures.

      @@ -874,7 +871,7 @@

      Submodules
      -redo_next_change() None[source]
      +redo_next_change() None[source]

      Redo the last undone transformation in the TransformedStructure.

      Raises:
      @@ -885,7 +882,7 @@

      Submodules
      -set_parameter(key, value)[source]
      +set_parameter(key, value)[source]

      Add parameters to the transmuter. Additional parameters are stored in the as_dict() output.

      @@ -900,7 +897,7 @@

      Submodules
      -undo_last_change() None[source]
      +undo_last_change() None[source]

      Undo the last transformation in the TransformedStructure.

      Raises:
      @@ -911,7 +908,7 @@

      Submodules
      -write_vasp_input(**kwargs)[source]
      +write_vasp_input(**kwargs)[source]

      Batch write vasp input for a sequence of transformed structures to output_dir, following the format output_dir/{formula}_{number}.

      @@ -925,7 +922,7 @@

      Submodules
      -batch_write_vasp_input(transformed_structures: Sequence[TransformedStructure], vasp_input_set: type[VaspInputSet] = <class 'pymatgen.io.vasp.sets.MPRelaxSet'>, output_dir: str = '.', create_directory: bool = True, subfolder: Callable[[TransformedStructure], str] | None = None, include_cif: bool = False, **kwargs)[source]
      +batch_write_vasp_input(transformed_structures: Sequence[TransformedStructure], vasp_input_set: type[VaspInputSet] = <class 'pymatgen.io.vasp.sets.MPRelaxSet'>, output_dir: str = '.', create_directory: bool = True, subfolder: Callable[[TransformedStructure], str] | None = None, include_cif: bool = False, **kwargs)[source]

      Batch write vasp input for a sequence of transformed structures to output_dir, following the format output_dir/{group}/{formula}_{number}.

      diff --git a/docs/pymatgen.analysis.chemenv.connectivity.html b/docs/pymatgen.analysis.chemenv.connectivity.html index f4f7ed98d3a..133e9bf4706 100644 --- a/docs/pymatgen.analysis.chemenv.connectivity.html +++ b/docs/pymatgen.analysis.chemenv.connectivity.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.chemenv.connectivity package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.chemenv.connectivity package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
      - 2024.10.27 -
      @@ -173,7 +170,7 @@

      Submodules
      -class ConnectedComponent(environments=None, links=None, environments_data=None, links_data=None, graph=None)[source]
      +class ConnectedComponent(environments=None, links=None, environments_data=None, links_data=None, graph=None)[source]

      Bases: MSONable

      Describe the connected components in a structure in terms of coordination environments.

      Constructor for the ConnectedComponent object.

      @@ -190,7 +187,7 @@

      Submodules
      -as_dict()[source]
      +as_dict()[source]

      Bson-serializable dict representation of the ConnectedComponent object.

      Returns:
      @@ -204,7 +201,7 @@

      Submodules
      -compute_periodicity(algorithm='all_simple_paths') None[source]
      +compute_periodicity(algorithm='all_simple_paths') None[source]
      Parameters:

      algorithm (str) – Algorithm to use to compute the periodicity vectors. Can be @@ -215,19 +212,19 @@

      Submodules
      -compute_periodicity_all_simple_paths_algorithm()[source]
      +compute_periodicity_all_simple_paths_algorithm()[source]

      Get the periodicity vectors of the connected component.

      -compute_periodicity_cycle_basis() None[source]
      +compute_periodicity_cycle_basis() None[source]

      Compute periodicity vectors of the connected component.

      -coordination_sequence(source_node, path_size=5, coordination='number', include_source=False)[source]
      +coordination_sequence(source_node, path_size=5, coordination='number', include_source=False)[source]

      Get the coordination sequence for a given node.

      Parameters:
      @@ -277,7 +274,7 @@

      Submodules
      -description(full=False)[source]
      +description(full=False)[source]
      Parameters:

      full (bool) – Whether to return a short or full description.

      @@ -293,7 +290,7 @@

      Submodules
      -elastic_centered_graph(start_node=None)[source]
      +elastic_centered_graph(start_node=None)[source]
      Parameters:

      start_node (Node, optional) – Node to start the elastic centering from. @@ -310,7 +307,7 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstructs the ConnectedComponent object from a dict representation of the ConnectedComponent object created using the as_dict method.

      @@ -328,7 +325,7 @@

      Submodules
      -classmethod from_graph(g) Self[source]
      +classmethod from_graph(g) Self[source]

      Constructor for the ConnectedComponent object from a graph of the connected component.

      Parameters:
      @@ -345,44 +342,44 @@

      Submodules
      -property graph[source]
      +property graph[source]

      The Networkx MultiGraph object of this connected component with environment as nodes and links between these nodes as edges with information about the image cell difference if any.

      -property is_0d: bool[source]
      +property is_0d: bool[source]

      Whether this connected component is 0-dimensional.

      -property is_1d: bool[source]
      +property is_1d: bool[source]

      Whether this connected component is 1-dimensional.

      -property is_2d: bool[source]
      +property is_2d: bool[source]

      Whether this connected component is 2-dimensional.

      -property is_3d: bool[source]
      +property is_3d: bool[source]

      Whether this connected component is 3-dimensional.

      -property is_periodic: bool[source]
      +property is_periodic: bool[source]

      Whether this connected component is periodic.

      -make_supergraph(multiplicity)[source]
      +make_supergraph(multiplicity)[source]
      Parameters:

      multiplicity (int) – Multiplicity of the super graph.

      @@ -398,19 +395,19 @@

      Submodules
      -property periodicity[source]
      +property periodicity[source]

      Periodicity of this connected component.

      -property periodicity_vectors[source]
      +property periodicity_vectors[source]

      Periodicity vectors of this connected component.

      -show_graph(graph: MultiGraph | None = None, save_file: str | None = None, drawing_type: str = 'internal') None[source]
      +show_graph(graph: MultiGraph | None = None, save_file: str | None = None, drawing_type: str = 'internal') None[source]

      Displays the graph using the specified drawing type.

      Parameters:
      @@ -428,7 +425,7 @@

      Submodules
      -draw_network(env_graph, pos, ax, sg=None, periodicity_vectors=None)[source]
      +draw_network(env_graph, pos, ax, sg=None, periodicity_vectors=None)[source]

      Draw network of environments in a matplotlib figure axes.

      Parameters:
      @@ -445,7 +442,7 @@

      Submodules
      -make_supergraph(graph, multiplicity, periodicity_vectors)[source]
      +make_supergraph(graph, multiplicity, periodicity_vectors)[source]

      Make super graph from a graph of environments.

      Parameters:
      @@ -470,7 +467,7 @@

      Submodules
      -class ConnectivityFinder(multiple_environments_choice=None)[source]
      +class ConnectivityFinder(multiple_environments_choice=None)[source]

      Bases: object

      Main class used to find the structure connectivity of a structure.

      Constructor for the ConnectivityFinder.

      @@ -485,7 +482,7 @@

      Submodules
      -get_structure_connectivity(light_structure_environments)[source]
      +get_structure_connectivity(light_structure_environments)[source]

      Get the structure connectivity from the coordination environments provided as an input.

      @@ -504,7 +501,7 @@

      Submodules
      -setup_parameters(multiple_environments_choice)[source]
      +setup_parameters(multiple_environments_choice)[source]

      Setup of the parameters for the connectivity finder.

      @@ -516,7 +513,7 @@

      Submodules
      -class AbstractEnvironmentNode(central_site, i_central_site)[source]
      +class AbstractEnvironmentNode(central_site, i_central_site)[source]

      Bases: MSONable

      Abstract class used to define an environment as a node in a graph.

      Constructor for the AbstractEnvironmentNode object.

      @@ -531,104 +528,104 @@

      Submodules
      -ATOM = 6[source]
      +ATOM = 6[source]

      -CE_NNBCES_NBCES_LIGANDS = -1[source]
      +CE_NNBCES_NBCES_LIGANDS = -1[source]
      -COORDINATION_ENVIRONMENT = 0[source]
      +COORDINATION_ENVIRONMENT = 0[source]
      -DEFAULT_EXTENSIONS = (6, 0)[source]
      +DEFAULT_EXTENSIONS = (6, 0)[source]
      -LIGANDS_ARRANGEMENT = 4[source]
      +LIGANDS_ARRANGEMENT = 4[source]
      -NEIGHBORING_CES = 2[source]
      +NEIGHBORING_CES = 2[source]
      -NEIGHBORING_COORDINATION_ENVIRONMENTS = 2[source]
      +NEIGHBORING_COORDINATION_ENVIRONMENTS = 2[source]
      -NEIGHBORS_LIGANDS_ARRANGEMENT = 5[source]
      +NEIGHBORS_LIGANDS_ARRANGEMENT = 5[source]
      -NUMBER_OF_LIGANDS_FOR_EACH_NEIGHBORING_CE = 3[source]
      +NUMBER_OF_LIGANDS_FOR_EACH_NEIGHBORING_CE = 3[source]
      -NUMBER_OF_LIGANDS_FOR_EACH_NEIGHBORING_COORDINATION_ENVIRONMENT = 3[source]
      +NUMBER_OF_LIGANDS_FOR_EACH_NEIGHBORING_COORDINATION_ENVIRONMENT = 3[source]
      -NUMBER_OF_NEIGHBORING_CES = 1[source]
      +NUMBER_OF_NEIGHBORING_CES = 1[source]
      -NUMBER_OF_NEIGHBORING_COORDINATION_ENVIRONMENTS = 1[source]
      +NUMBER_OF_NEIGHBORING_COORDINATION_ENVIRONMENTS = 1[source]
      -property atom_symbol[source]
      +property atom_symbol[source]

      Symbol of the atom on the central site.

      -property ce[source]
      +property ce[source]

      Coordination environment of this node.

      -property ce_symbol[source]
      +property ce_symbol[source]

      Coordination environment of this node.

      -abstract property coordination_environment[source]
      +abstract property coordination_environment[source]

      Coordination environment of this node.

      -everything_equal(other)[source]
      +everything_equal(other)[source]

      Check equality with respect to another AbstractEnvironmentNode using the index of the central site as well as the central site itself.

      -property isite[source]
      +property isite[source]

      Index of the central site.

      -property mp_symbol[source]
      +property mp_symbol[source]

      Coordination environment of this node.

      @@ -636,7 +633,7 @@

      Submodules
      -class EnvironmentNode(central_site, i_central_site, ce_symbol)[source]
      +class EnvironmentNode(central_site, i_central_site, ce_symbol)[source]

      Bases: AbstractEnvironmentNode

      Define an environment as a node in a graph.

      Constructor for the EnvironmentNode object.

      @@ -652,13 +649,13 @@

      Submodules
      -property coordination_environment[source]
      +property coordination_environment[source]

      Coordination environment of this node.

      -everything_equal(other)[source]
      +everything_equal(other)[source]

      Compare with another environment node.

      Returns:
      @@ -674,7 +671,7 @@

      Submodules
      -get_environment_node(central_site, i_central_site, ce_symbol)[source]
      +get_environment_node(central_site, i_central_site, ce_symbol)[source]

      Get the EnvironmentNode class or subclass for the given site and symbol.

      Parameters:
      @@ -696,7 +693,7 @@

      Submodules
      -class StructureConnectivity(light_structure_environment, connectivity_graph=None, environment_subgraphs=None)[source]
      +class StructureConnectivity(light_structure_environment, connectivity_graph=None, environment_subgraphs=None)[source]

      Bases: MSONable

      Main class containing the connectivity of a structure.

      Constructor for the StructureConnectivity object.

      @@ -717,7 +714,7 @@

      Submodules
      -add_bonds(isite, site_neighbors_set)[source]
      +add_bonds(isite, site_neighbors_set)[source]

      Add the bonds for a given site index to the structure connectivity graph.

      Parameters:
      @@ -731,19 +728,19 @@

      Submodules
      -add_sites()[source]
      +add_sites()[source]

      Add the sites in the structure connectivity graph.

      -as_dict()[source]
      +as_dict()[source]

      Convert to MSONable dict.

      -environment_subgraph(environments_symbols=None, only_atoms=None)[source]
      +environment_subgraph(environments_symbols=None, only_atoms=None)[source]
      Parameters:
        @@ -762,7 +759,7 @@

        Submodules
        -classmethod from_dict(dct: dict) Self[source]
        +classmethod from_dict(dct: dict) Self[source]
        Parameters:

        dct (dict)

        @@ -775,33 +772,33 @@

        Submodules
        -get_connected_components(environments_symbols=None, only_atoms=None)[source]
        +get_connected_components(environments_symbols=None, only_atoms=None)[source]

        +print_links() None[source]

        Print all links in the graph.

        -setup_atom_environment_subgraph(atom_environment)[source]
        +setup_atom_environment_subgraph(atom_environment)[source]
        -setup_atom_environments_subgraph(atoms_environments)[source]
        +setup_atom_environments_subgraph(atoms_environments)[source]
        -setup_connectivity_description()[source]
        +setup_connectivity_description()[source]
        -setup_environment_subgraph(environments_symbols, only_atoms=None)[source]
        +setup_environment_subgraph(environments_symbols, only_atoms=None)[source]

        Set up the graph for predefined environments and optionally atoms.

        Parameters:
        @@ -815,14 +812,14 @@

        Submodules
        -setup_environments_subgraph(environments_symbols)[source]
        +setup_environments_subgraph(environments_symbols)[source]

        -get_delta_image(isite1, isite2, data1, data2)[source]
        +get_delta_image(isite1, isite2, data1, data2)[source]

        Helper method to get the delta image between one environment and another from the ligand’s delta images.

        diff --git a/docs/pymatgen.analysis.chemenv.coordination_environments.coordination_geometries_files.html b/docs/pymatgen.analysis.chemenv.coordination_environments.coordination_geometries_files.html index e44124833ae..af6c20419b3 100644 --- a/docs/pymatgen.analysis.chemenv.coordination_environments.coordination_geometries_files.html +++ b/docs/pymatgen.analysis.chemenv.coordination_environments.coordination_geometries_files.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.chemenv.coordination_environments.coordination_geometries_files package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.chemenv.coordination_environments.coordination_geometries_files package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
        - 2024.10.27 -
        diff --git a/docs/pymatgen.analysis.chemenv.coordination_environments.html b/docs/pymatgen.analysis.chemenv.coordination_environments.html index 0e4eeabd244..41fddb9f2ca 100644 --- a/docs/pymatgen.analysis.chemenv.coordination_environments.html +++ b/docs/pymatgen.analysis.chemenv.coordination_environments.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.chemenv.coordination_environments package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.chemenv.coordination_environments package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
        - 2024.10.27 -
        @@ -555,7 +552,7 @@

        Submodules
        -class AbstractChemenvStrategy(structure_environments=None, symmetry_measure_type='csm_wcs_ctwcc')[source]
        +class AbstractChemenvStrategy(structure_environments=None, symmetry_measure_type='csm_wcs_ctwcc')[source]

        Bases: MSONable, ABC

        Base class to define a Chemenv strategy for the neighbors and coordination environment to be applied to a StructureEnvironments object.

        @@ -568,32 +565,32 @@

        Submodules
        -AC = <pymatgen.analysis.chemenv.utils.defs_utils.AdditionalConditions object>[source]
        +AC = <pymatgen.analysis.chemenv.utils.defs_utils.AdditionalConditions object>[source]

      -DEFAULT_SYMMETRY_MEASURE_TYPE = 'csm_wcs_ctwcc'[source]
      +DEFAULT_SYMMETRY_MEASURE_TYPE = 'csm_wcs_ctwcc'[source]
      -STRATEGY_DESCRIPTION: str | None = None[source]
      +STRATEGY_DESCRIPTION: str | None = None[source]
      -STRATEGY_INFO_FIELDS: ClassVar[list] = [][source]
      +STRATEGY_INFO_FIELDS: ClassVar[list] = [][source]
      -STRATEGY_OPTIONS: ClassVar[dict[str, dict]] = {}[source]
      +STRATEGY_OPTIONS: ClassVar[dict[str, dict]] = {}[source]
      -abstract as_dict()[source]
      +abstract as_dict()[source]

      Bson-serializable dict representation of the SimplestChemenvStrategy object.

      Returns:
      @@ -604,7 +601,7 @@

      Submodules
      -equivalent_site_index_and_transform(psite)[source]
      +equivalent_site_index_and_transform(psite)[source]

      Get the equivalent site and corresponding symmetry+translation transformations.

      Parameters:
      @@ -618,7 +615,7 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstructs the SimpleAbundanceChemenvStrategy object from a dict representation of the SimpleAbundanceChemenvStrategy object created using the as_dict method.

      @@ -633,7 +630,7 @@

      Submodules
      -get_site_ce_fractions_and_neighbors(site, full_ce_info=False, strategy_info=False)[source]
      +get_site_ce_fractions_and_neighbors(site, full_ce_info=False, strategy_info=False)[source]

      Applies the strategy to the structure_environments object in order to get coordination environments, their fraction, csm, geometry_info, and neighbors.

      @@ -649,7 +646,7 @@

      Submodules
      -abstract get_site_coordination_environment(site)[source]
      +abstract get_site_coordination_environment(site)[source]

      Applies the strategy to the structure_environments object in order to define the coordination environment of a given site.

      @@ -665,7 +662,7 @@

      Submodules
      -abstract get_site_coordination_environments(site)[source]
      +abstract get_site_coordination_environments(site)[source]

      Applies the strategy to the structure_environments object in order to define the coordination environment of a given site.

      @@ -681,7 +678,7 @@

      Submodules
      -abstract get_site_coordination_environments_fractions(site, isite=None, dequivsite=None, dthissite=None, mysym=None, ordered=True, min_fraction=0, return_maps=True, return_strategy_dict_info=False)[source]
      +abstract get_site_coordination_environments_fractions(site, isite=None, dequivsite=None, dthissite=None, mysym=None, ordered=True, min_fraction=0, return_maps=True, return_strategy_dict_info=False)[source]

      Applies the strategy to the structure_environments object in order to define the coordination environment of a given site.

      @@ -697,7 +694,7 @@

      Submodules
      -abstract get_site_neighbors(site)[source]
      +abstract get_site_neighbors(site)[source]

      Applies the strategy to the structure_environments object in order to get the neighbors of a given site.

      Parameters:
      @@ -716,13 +713,13 @@

      Submodules
      -prepare_symmetries()[source]
      +prepare_symmetries()[source]

      Prepare the symmetries for the structure contained in the structure environments.

      -set_option(option_name, option_value)[source]
      +set_option(option_name, option_value)[source]

      Set up a given option for this strategy.

      Parameters:
      @@ -736,7 +733,7 @@

      Submodules
      -set_structure_environments(structure_environments)[source]
      +set_structure_environments(structure_environments)[source]

      Set the structure environments to this strategy.

      Parameters:
      @@ -747,7 +744,7 @@

      Submodules
      -setup_options(all_options_dict)[source]
      +setup_options(all_options_dict)[source]

      Set up options for this strategy based on a dict.

      Parameters:
      @@ -758,13 +755,13 @@

      Submodules
      -property symmetry_measure_type[source]
      +property symmetry_measure_type[source]

      Type of symmetry measure.

      -property uniquely_determines_coordination_environments[source]
      +property uniquely_determines_coordination_environments[source]

      True if the strategy leads to a unique coordination environment.

      @@ -772,29 +769,29 @@

      Submodules
      -class AdditionalConditionInt(integer)[source]
      +class AdditionalConditionInt(integer)[source]

      Bases: int, StrategyOption

      Integer representing an additional condition in a strategy.

      Special int representing additional conditions.

      -allowed_values: str | None = "Integer amongst :\n - 0 for 'No additional condition'\n - 1 for 'Only anion-cation bonds'\n - 2 for 'No element-element bonds (same elements)'\n - 3 for 'Only anion-cation bonds and no element-element bonds (same elements)'\n - 4 for 'Only element-oxygen bonds'\n"[source]
      +allowed_values: str | None = "Integer amongst :\n - 0 for 'No additional condition'\n - 1 for 'Only anion-cation bonds'\n - 2 for 'No element-element bonds (same elements)'\n - 3 for 'Only anion-cation bonds and no element-element bonds (same elements)'\n - 4 for 'Only element-oxygen bonds'\n"[source]
      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -description = 'Only element-oxygen bonds'[source]
      +description = 'Only element-oxygen bonds'[source]
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize additional condition from dict.

      Parameters:
      @@ -805,14 +802,14 @@

      Submodules
      -integer = 4[source]
      +integer = 4[source]

      -class AngleCutoffFloat(cutoff)[source]
      +class AngleCutoffFloat(cutoff)[source]

      Bases: float, StrategyOption

      Angle cutoff in a strategy.

      Special float that should be between 0 and 1.

      @@ -823,18 +820,18 @@

      Submodules
      -allowed_values: str | None = 'Real number between 0 and 1'[source]
      +allowed_values: str | None = 'Real number between 0 and 1'[source]

      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize angle cutoff from dict.

      Parameters:
      @@ -847,7 +844,7 @@

      Submodules
      -class AngleNbSetWeight(aa=1)[source]
      +class AngleNbSetWeight(aa=1)[source]

      Bases: NbSetWeight

      Weight of neighbors set based on the angle.

      Initialize AngleNbSetWeight estimator.

      @@ -858,12 +855,12 @@

      Submodules
      -SHORT_NAME = 'AngleWeight'[source]
      +SHORT_NAME = 'AngleWeight'[source]

      -static angle_sum(nb_set)[source]
      +static angle_sum(nb_set)[source]

      Sum of all angles in a neighbors set.

      Parameters:
      @@ -877,7 +874,7 @@

      Submodules
      -angle_sumn(nb_set)[source]
      +angle_sumn(nb_set)[source]

      Sum of all angles to a given power in a neighbors set.

      Parameters:
      @@ -891,19 +888,19 @@

      Submodules
      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Construct AngleNbSetWeight from dict representation.

      -weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -927,7 +924,7 @@

      Submodules
      -class AnglePlateauNbSetWeight(angle_function=None, weight_function=None)[source]
      +class AnglePlateauNbSetWeight(angle_function=None, weight_function=None)[source]

      Bases: NbSetWeight

      Weight of neighbors set based on the angle.

      Initialize AnglePlateauNbSetWeight.

      @@ -941,18 +938,18 @@

      Submodules
      -SHORT_NAME = 'AnglePlateauWeight'[source]
      +SHORT_NAME = 'AnglePlateauWeight'[source]

      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize from dict.

      Parameters:
      @@ -966,7 +963,7 @@

      Submodules
      -weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -990,7 +987,7 @@

      Submodules
      -class CNBiasNbSetWeight(cn_weights, initialization_options)[source]
      +class CNBiasNbSetWeight(cn_weights, initialization_options)[source]

      Bases: NbSetWeight

      Weight of neighbors set based on specific biases towards specific coordination numbers.

      Initialize CNBiasNbSetWeight.

      @@ -1004,18 +1001,18 @@

      Submodules
      -SHORT_NAME = 'CNBiasWeight'[source]
      +SHORT_NAME = 'CNBiasWeight'[source]

      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod explicit(cn_weights)[source]
      +classmethod explicit(cn_weights)[source]

      Initialize weights explicitly for each coordination.

      Parameters:
      @@ -1029,7 +1026,7 @@

      Submodules
      -classmethod from_description(dct: dict) Self[source]
      +classmethod from_description(dct: dict) Self[source]

      Initialize weights from description.

      Parameters:
      @@ -1043,7 +1040,7 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize from dict.

      Parameters:
      @@ -1057,7 +1054,7 @@

      Submodules
      -classmethod geometrically_equidistant(weight_cn1, weight_cn13)[source]
      +classmethod geometrically_equidistant(weight_cn1, weight_cn13)[source]

      Initialize geometrically equidistant weights for each coordination.

      Arge:

      weight_cn1: Weight of coordination 1. @@ -1073,7 +1070,7 @@

      Submodules
      -classmethod linearly_equidistant(weight_cn1, weight_cn13)[source]
      +classmethod linearly_equidistant(weight_cn1, weight_cn13)[source]

      Initialize linearly equidistant weights for each coordination.

      Parameters:
      @@ -1090,7 +1087,7 @@

      Submodules
      -weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -1114,7 +1111,7 @@

      Submodules
      -class CSMFloat(cutoff)[source]
      +class CSMFloat(cutoff)[source]

      Bases: float, StrategyOption

      Real number representing a Continuous Symmetry Measure.

      Special float that should be between 0 and 100.

      @@ -1125,18 +1122,18 @@

      Submodules
      -allowed_values: str | None = 'Real number between 0 and 100'[source]
      +allowed_values: str | None = 'Real number between 0 and 100'[source]

      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize CSM from dict.

      Parameters:
      @@ -1149,7 +1146,7 @@

      Submodules
      -class DeltaCSMNbSetWeight(effective_csm_estimator={'function': 'power2_inverse_decreasing', 'options': {'max_csm': 8.0}}, weight_estimator={'function': 'smootherstep', 'options': {'delta_csm_max': 3.0, 'delta_csm_min': 0.5}}, delta_cn_weight_estimators=None, symmetry_measure_type='csm_wcs_ctwcc')[source]
      +class DeltaCSMNbSetWeight(effective_csm_estimator={'function': 'power2_inverse_decreasing', 'options': {'max_csm': 8.0}}, weight_estimator={'function': 'smootherstep', 'options': {'delta_csm_max': 3.0, 'delta_csm_min': 0.5}}, delta_cn_weight_estimators=None, symmetry_measure_type='csm_wcs_ctwcc')[source]

      Bases: NbSetWeight

      Weight of neighbors set based on the differences of CSM.

      Initialize DeltaCSMNbSetWeight.

      @@ -1165,33 +1162,33 @@

      Submodules
      -DEFAULT_EFFECTIVE_CSM_ESTIMATOR: ClassVar = {'function': 'power2_inverse_decreasing', 'options': {'max_csm': 8.0}}[source]
      +DEFAULT_EFFECTIVE_CSM_ESTIMATOR: ClassVar = {'function': 'power2_inverse_decreasing', 'options': {'max_csm': 8.0}}[source]

      -DEFAULT_SYMMETRY_MEASURE_TYPE = 'csm_wcs_ctwcc'[source]
      +DEFAULT_SYMMETRY_MEASURE_TYPE = 'csm_wcs_ctwcc'[source]
      -DEFAULT_WEIGHT_ESTIMATOR: ClassVar = {'function': 'smootherstep', 'options': {'delta_csm_max': 3.0, 'delta_csm_min': 0.5}}[source]
      +DEFAULT_WEIGHT_ESTIMATOR: ClassVar = {'function': 'smootherstep', 'options': {'delta_csm_max': 3.0, 'delta_csm_min': 0.5}}[source]
      -SHORT_NAME = 'DeltaCSMWeight'[source]
      +SHORT_NAME = 'DeltaCSMWeight'[source]
      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod delta_cn_specifics(delta_csm_mins=None, delta_csm_maxs=None, function='smootherstep', symmetry_measure_type='csm_wcs_ctwcc', effective_csm_estimator={'function': 'power2_inverse_decreasing', 'options': {'max_csm': 8.0}})[source]
      +classmethod delta_cn_specifics(delta_csm_mins=None, delta_csm_maxs=None, function='smootherstep', symmetry_measure_type='csm_wcs_ctwcc', effective_csm_estimator={'function': 'power2_inverse_decreasing', 'options': {'max_csm': 8.0}})[source]

      Initialize DeltaCSMNbSetWeight from specific coordination number differences.

      Parameters:
      @@ -1211,7 +1208,7 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize from dict.

      Parameters:
      @@ -1225,7 +1222,7 @@

      Submodules
      -weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -1249,7 +1246,7 @@

      Submodules
      -class DeltaDistanceNbSetWeight(weight_function=None, nbs_source='voronoi')[source]
      +class DeltaDistanceNbSetWeight(weight_function=None, nbs_source='voronoi')[source]

      Bases: NbSetWeight

      Weight of neighbors set based on the difference of distances.

      Initialize DeltaDistanceNbSetWeight.

      @@ -1263,18 +1260,18 @@

      Submodules
      -SHORT_NAME = 'DeltaDistanceNbSetWeight'[source]
      +SHORT_NAME = 'DeltaDistanceNbSetWeight'[source]

      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize from dict.

      Parameters:
      @@ -1288,7 +1285,7 @@

      Submodules
      -weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -1312,7 +1309,7 @@

      Submodules
      -class DistanceAngleAreaNbSetWeight(weight_type='has_intersection', surface_definition={'angle_bounds': {'lower': 0.1, 'upper': 0.8}, 'distance_bounds': {'lower': 1.2, 'upper': 1.8}, 'type': 'standard_elliptic'}, nb_sets_from_hints='fallback_to_source', other_nb_sets='0_weight', additional_condition=1, smoothstep_distance=None, smoothstep_angle=None)[source]
      +class DistanceAngleAreaNbSetWeight(weight_type='has_intersection', surface_definition={'angle_bounds': {'lower': 0.1, 'upper': 0.8}, 'distance_bounds': {'lower': 1.2, 'upper': 1.8}, 'type': 'standard_elliptic'}, nb_sets_from_hints='fallback_to_source', other_nb_sets='0_weight', additional_condition=1, smoothstep_distance=None, smoothstep_angle=None)[source]

      Bases: NbSetWeight

      Weight of neighbors set based on the area in the distance-angle space.

      Initialize CNBiasNbSetWeight.

      @@ -1331,28 +1328,28 @@

      Submodules
      -AC = <pymatgen.analysis.chemenv.utils.defs_utils.AdditionalConditions object>[source]
      +AC = <pymatgen.analysis.chemenv.utils.defs_utils.AdditionalConditions object>[source]

      -DEFAULT_SURFACE_DEFINITION: ClassVar = {'angle_bounds': {'lower': 0.1, 'upper': 0.8}, 'distance_bounds': {'lower': 1.2, 'upper': 1.8}, 'type': 'standard_elliptic'}[source]
      +DEFAULT_SURFACE_DEFINITION: ClassVar = {'angle_bounds': {'lower': 0.1, 'upper': 0.8}, 'distance_bounds': {'lower': 1.2, 'upper': 1.8}, 'type': 'standard_elliptic'}[source]
      -SHORT_NAME = 'DistAngleAreaWeight'[source]
      +SHORT_NAME = 'DistAngleAreaWeight'[source]
      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize from dict.

      Parameters:
      @@ -1366,7 +1363,7 @@

      Submodules
      -rectangle_crosses_area(d1, d2, a1, a2)[source]
      +rectangle_crosses_area(d1, d2, a1, a2)[source]

      Whether a given rectangle crosses the area defined by the upper and lower curves.

      Parameters:
      @@ -1382,7 +1379,7 @@

      Submodules
      -w_area_has_intersection(nb_set, structure_environments, cn_map, additional_info)[source]
      +w_area_has_intersection(nb_set, structure_environments, cn_map, additional_info)[source]

      Get intersection of the neighbors set area with the surface.

      Parameters:
      @@ -1401,7 +1398,7 @@

      Submodules
      -w_area_intersection_nbsfh_fbs_onb0(nb_set, structure_environments, cn_map, additional_info)[source]
      +w_area_intersection_nbsfh_fbs_onb0(nb_set, structure_environments, cn_map, additional_info)[source]

      Get intersection of the neighbors set area with the surface.

      Parameters:
      @@ -1420,7 +1417,7 @@

      Submodules
      -weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -1444,7 +1441,7 @@

      Submodules
      -class DistanceCutoffFloat(cutoff)[source]
      +class DistanceCutoffFloat(cutoff)[source]

      Bases: float, StrategyOption

      Distance cutoff in a strategy.

      Special float that should be between 1 and infinity.

      @@ -1455,18 +1452,18 @@

      Submodules
      -allowed_values: str | None = 'Real number between 1 and +infinity'[source]
      +allowed_values: str | None = 'Real number between 1 and +infinity'[source]

      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize distance cutoff from dict.

      Parameters:
      @@ -1479,7 +1476,7 @@

      Submodules
      -class DistanceNbSetWeight(weight_function=None, nbs_source='voronoi')[source]
      +class DistanceNbSetWeight(weight_function=None, nbs_source='voronoi')[source]

      Bases: NbSetWeight

      Weight of neighbors set based on the distance.

      Initialize DistanceNbSetWeight.

      @@ -1493,18 +1490,18 @@

      Submodules
      -SHORT_NAME = 'DistanceNbSetWeight'[source]
      +SHORT_NAME = 'DistanceNbSetWeight'[source]

      -as_dict()[source]
      +as_dict()[source]

      MSOnable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize from dict.

      Parameters:
      @@ -1518,7 +1515,7 @@

      Submodules
      -weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -1542,7 +1539,7 @@

      Submodules
      -class DistancePlateauNbSetWeight(distance_function=None, weight_function=None)[source]
      +class DistancePlateauNbSetWeight(distance_function=None, weight_function=None)[source]

      Bases: NbSetWeight

      Weight of neighbors set based on the distance.

      Initialize DistancePlateauNbSetWeight.

      @@ -1556,18 +1553,18 @@

      Submodules
      -SHORT_NAME = 'DistancePlateauWeight'[source]
      +SHORT_NAME = 'DistancePlateauWeight'[source]

      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize from dict.

      Parameters:
      @@ -1581,7 +1578,7 @@

      Submodules
      -weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -1605,7 +1602,7 @@

      Submodules
      -class MultiWeightsChemenvStrategy(structure_environments=None, additional_condition=1, symmetry_measure_type='csm_wcs_ctwcc', dist_ang_area_weight=None, self_csm_weight=None, delta_csm_weight=None, cn_bias_weight=None, angle_weight=None, normalized_angle_distance_weight=None, ce_estimator={'function': 'power2_inverse_power2_decreasing', 'options': {'max_csm': 8.0}})[source]
      +class MultiWeightsChemenvStrategy(structure_environments=None, additional_condition=1, symmetry_measure_type='csm_wcs_ctwcc', dist_ang_area_weight=None, self_csm_weight=None, delta_csm_weight=None, cn_bias_weight=None, angle_weight=None, normalized_angle_distance_weight=None, ce_estimator={'function': 'power2_inverse_power2_decreasing', 'options': {'max_csm': 8.0}})[source]

      Bases: WeightedNbSetChemenvStrategy

      MultiWeightsChemenvStrategy.

      Constructor for the MultiWeightsChemenvStrategy.

      @@ -1617,17 +1614,17 @@

      Submodules
      -DEFAULT_CE_ESTIMATOR: ClassVar = {'function': 'power2_inverse_power2_decreasing', 'options': {'max_csm': 8.0}}[source]
      +DEFAULT_CE_ESTIMATOR: ClassVar = {'function': 'power2_inverse_power2_decreasing', 'options': {'max_csm': 8.0}}[source]

      -STRATEGY_DESCRIPTION: str | None = 'Multi Weights ChemenvStrategy'[source]
      +STRATEGY_DESCRIPTION: str | None = 'Multi Weights ChemenvStrategy'[source]
      -as_dict()[source]
      +as_dict()[source]
      Returns:

      Bson-serializable dict representation of the MultiWeightsChemenvStrategy object.

      @@ -1637,7 +1634,7 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstructs the MultiWeightsChemenvStrategy object from a dict representation of the MultipleAbundanceChemenvStrategy object created using the as_dict method.

      @@ -1652,13 +1649,13 @@

      Submodules
      -classmethod stats_article_weights_parameters()[source]
      +classmethod stats_article_weights_parameters()[source]

      Initialize strategy used in the statistics article.

      -property uniquely_determines_coordination_environments[source]
      +property uniquely_determines_coordination_environments[source]

      Whether this strategy uniquely determines coordination environments.

      @@ -1666,18 +1663,18 @@

      Submodules
      -class NbSetWeight[source]
      +class NbSetWeight[source]

      Bases: MSONable, ABC

      Abstract base class for neighbor set weight estimations.

      -abstract as_dict()[source]
      +abstract as_dict()[source]

      A JSON-serializable dict representation of this neighbors set weight.

      -abstract weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +abstract weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -1701,7 +1698,7 @@

      Submodules
      -class NormalizedAngleDistanceNbSetWeight(average_type, aa, bb)[source]
      +class NormalizedAngleDistanceNbSetWeight(average_type, aa, bb)[source]

      Bases: NbSetWeight

      Weight of neighbors set based on the normalized angle/distance.

      Initialize NormalizedAngleDistanceNbSetWeight.

      @@ -1716,12 +1713,12 @@

      Submodules
      -SHORT_NAME = 'NormAngleDistWeight'[source]
      +SHORT_NAME = 'NormAngleDistWeight'[source]

      -static ang(nb_set)[source]
      +static ang(nb_set)[source]

      Angle weight.

      Parameters:
      @@ -1735,7 +1732,7 @@

      Submodules
      -static anginvdist(nb_set)[source]
      +static anginvdist(nb_set)[source]

      Angle/distance weight.

      Parameters:
      @@ -1749,7 +1746,7 @@

      Submodules
      -anginvndist(nb_set)[source]
      +anginvndist(nb_set)[source]

      Angle/power distance weight.

      Parameters:
      @@ -1763,7 +1760,7 @@

      Submodules
      -angn(nb_set)[source]
      +angn(nb_set)[source]

      Power angle weight.

      Parameters:
      @@ -1777,7 +1774,7 @@

      Submodules
      -angninvdist(nb_set)[source]
      +angninvdist(nb_set)[source]

      Power angle/distance weight.

      Parameters:
      @@ -1791,7 +1788,7 @@

      Submodules
      -angninvndist(nb_set)[source]
      +angninvndist(nb_set)[source]

      Power angle/power distance weight.

      Parameters:
      @@ -1805,13 +1802,13 @@

      Submodules
      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -static aweight(fda_list)[source]
      +static aweight(fda_list)[source]

      Standard mean of the weights.

      Parameters:
      @@ -1825,7 +1822,7 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize from dict.

      Parameters:
      @@ -1839,7 +1836,7 @@

      Submodules
      -static gweight(fda_list)[source]
      +static gweight(fda_list)[source]

      Geometric mean of the weights.

      Parameters:
      @@ -1853,7 +1850,7 @@

      Submodules
      -static invdist(nb_set)[source]
      +static invdist(nb_set)[source]

      Inverse distance weight.

      Parameters:
      @@ -1867,7 +1864,7 @@

      Submodules
      -invndist(nb_set)[source]
      +invndist(nb_set)[source]

      Inverse power distance weight.

      Parameters:
      @@ -1881,7 +1878,7 @@

      Submodules
      -weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -1905,7 +1902,7 @@

      Submodules
      -class SelfCSMNbSetWeight(effective_csm_estimator={'function': 'power2_inverse_decreasing', 'options': {'max_csm': 8.0}}, weight_estimator={'function': 'power2_decreasing_exp', 'options': {'alpha': 1, 'max_csm': 8.0}}, symmetry_measure_type='csm_wcs_ctwcc')[source]
      +class SelfCSMNbSetWeight(effective_csm_estimator={'function': 'power2_inverse_decreasing', 'options': {'max_csm': 8.0}}, weight_estimator={'function': 'power2_decreasing_exp', 'options': {'alpha': 1, 'max_csm': 8.0}}, symmetry_measure_type='csm_wcs_ctwcc')[source]

      Bases: NbSetWeight

      Weight of neighbors set based on the Self CSM.

      Initialize SelfCSMNbSetWeight.

      @@ -1920,33 +1917,33 @@

      Submodules
      -DEFAULT_EFFECTIVE_CSM_ESTIMATOR: ClassVar = {'function': 'power2_inverse_decreasing', 'options': {'max_csm': 8.0}}[source]
      +DEFAULT_EFFECTIVE_CSM_ESTIMATOR: ClassVar = {'function': 'power2_inverse_decreasing', 'options': {'max_csm': 8.0}}[source]

      -DEFAULT_SYMMETRY_MEASURE_TYPE = 'csm_wcs_ctwcc'[source]
      +DEFAULT_SYMMETRY_MEASURE_TYPE = 'csm_wcs_ctwcc'[source]
      -DEFAULT_WEIGHT_ESTIMATOR: ClassVar = {'function': 'power2_decreasing_exp', 'options': {'alpha': 1, 'max_csm': 8.0}}[source]
      +DEFAULT_WEIGHT_ESTIMATOR: ClassVar = {'function': 'power2_decreasing_exp', 'options': {'alpha': 1, 'max_csm': 8.0}}[source]
      -SHORT_NAME = 'SelfCSMWeight'[source]
      +SHORT_NAME = 'SelfCSMWeight'[source]
      -as_dict()[source]
      +as_dict()[source]

      MSONable dict.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Initialize from dict.

      Parameters:
      @@ -1960,7 +1957,7 @@

      Submodules
      -weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]
      +weight(nb_set, structure_environments, cn_map=None, additional_info=None)[source]

      Get the weight of a given neighbors set.

      Parameters:
      @@ -1984,7 +1981,7 @@

      Submodules
      -class SimpleAbundanceChemenvStrategy(structure_environments=None, additional_condition=1, symmetry_measure_type='csm_wcs_ctwcc')[source]
      +class SimpleAbundanceChemenvStrategy(structure_environments=None, additional_condition=1, symmetry_measure_type='csm_wcs_ctwcc')[source]

      Bases: AbstractChemenvStrategy

      Simple ChemenvStrategy using the neighbors that are the most “abundant” in the grid of angle and distance parameters for the definition of neighbors in the Voronoi approach. @@ -1998,27 +1995,27 @@

      Submodules
      -DEFAULT_ADDITIONAL_CONDITION = 1[source]
      +DEFAULT_ADDITIONAL_CONDITION = 1[source]

      -DEFAULT_MAX_DIST = 2.0[source]
      +DEFAULT_MAX_DIST = 2.0[source]
      -STRATEGY_DESCRIPTION: str | None = 'Simple Abundance ChemenvStrategy using the most "abundant" neighbors map \nfor the definition of neighbors in the Voronoi approach. \nThe coordination environment is then given as the one with the \nlowest continuous symmetry measure.'[source]
      +STRATEGY_DESCRIPTION: str | None = 'Simple Abundance ChemenvStrategy using the most "abundant" neighbors map \nfor the definition of neighbors in the Voronoi approach. \nThe coordination environment is then given as the one with the \nlowest continuous symmetry measure.'[source]
      -STRATEGY_OPTIONS: ClassVar[dict[str, dict]] = {'additional_condition': {'default': 1, 'internal': '_additional_condition', 'type': <class 'pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.AdditionalConditionInt'>}, 'surface_calculation_type': {}}[source]
      +STRATEGY_OPTIONS: ClassVar[dict[str, dict]] = {'additional_condition': {'default': 1, 'internal': '_additional_condition', 'type': <class 'pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.AdditionalConditionInt'>}, 'surface_calculation_type': {}}[source]
      -as_dict()[source]
      +as_dict()[source]

      Bson-serializable dict representation of the SimpleAbundanceChemenvStrategy object.

      Returns:
      @@ -2029,7 +2026,7 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstructs the SimpleAbundanceChemenvStrategy object from a dict representation of the SimpleAbundanceChemenvStrategy object created using the as_dict method.

      @@ -2044,7 +2041,7 @@

      Submodules
      -get_site_coordination_environment(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_map=False)[source]
      +get_site_coordination_environment(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_map=False)[source]

      Get the coordination environment of a given site.

      Parameters:
      @@ -2065,7 +2062,7 @@

      Submodules
      -get_site_coordination_environments(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_maps=False)[source]
      +get_site_coordination_environments(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_maps=False)[source]

      Get the coordination environments of a given site.

      Parameters:
      @@ -2086,7 +2083,7 @@

      Submodules
      -get_site_neighbors(site)[source]
      +get_site_neighbors(site)[source]

      Get the neighbors of a given site with this strategy.

      Parameters:
      @@ -2100,7 +2097,7 @@

      Submodules
      -property uniquely_determines_coordination_environments[source]
      +property uniquely_determines_coordination_environments[source]

      Whether this strategy uniquely determines coordination environments.

      @@ -2108,7 +2105,7 @@

      Submodules
      -class SimplestChemenvStrategy(structure_environments=None, distance_cutoff=1.4, angle_cutoff=0.3, additional_condition=1, continuous_symmetry_measure_cutoff=10, symmetry_measure_type='csm_wcs_ctwcc')[source]
      +class SimplestChemenvStrategy(structure_environments=None, distance_cutoff=1.4, angle_cutoff=0.3, additional_condition=1, continuous_symmetry_measure_cutoff=10, symmetry_measure_type='csm_wcs_ctwcc')[source]

      Bases: AbstractChemenvStrategy

      Simplest ChemenvStrategy using fixed angle and distance parameters for the definition of neighbors in the Voronoi approach. The coordination environment is then given as the one with the lowest continuous symmetry measure.

      @@ -2123,37 +2120,37 @@

      Submodules
      -DEFAULT_ADDITIONAL_CONDITION = 1[source]
      +DEFAULT_ADDITIONAL_CONDITION = 1[source]

      -DEFAULT_ANGLE_CUTOFF = 0.3[source]
      +DEFAULT_ANGLE_CUTOFF = 0.3[source]
      -DEFAULT_CONTINUOUS_SYMMETRY_MEASURE_CUTOFF = 10[source]
      +DEFAULT_CONTINUOUS_SYMMETRY_MEASURE_CUTOFF = 10[source]
      -DEFAULT_DISTANCE_CUTOFF = 1.4[source]
      +DEFAULT_DISTANCE_CUTOFF = 1.4[source]
      -STRATEGY_DESCRIPTION: str | None = 'Simplest ChemenvStrategy using fixed angle and distance parameters \nfor the definition of neighbors in the Voronoi approach. \nThe coordination environment is then given as the one with the \nlowest continuous symmetry measure.'[source]
      +STRATEGY_DESCRIPTION: str | None = 'Simplest ChemenvStrategy using fixed angle and distance parameters \nfor the definition of neighbors in the Voronoi approach. \nThe coordination environment is then given as the one with the \nlowest continuous symmetry measure.'[source]
      -STRATEGY_OPTIONS: ClassVar[dict[str, dict]] = {'additional_condition': {'default': 1, 'internal': '_additional_condition', 'type': <class 'pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.AdditionalConditionInt'>}, 'angle_cutoff': {'default': 0.3, 'internal': '_angle_cutoff', 'type': <class 'pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.AngleCutoffFloat'>}, 'continuous_symmetry_measure_cutoff': {'default': 10, 'internal': '_continuous_symmetry_measure_cutoff', 'type': <class 'pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.CSMFloat'>}, 'distance_cutoff': {'default': 1.4, 'internal': '_distance_cutoff', 'type': <class 'pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.DistanceCutoffFloat'>}}[source]
      +STRATEGY_OPTIONS: ClassVar[dict[str, dict]] = {'additional_condition': {'default': 1, 'internal': '_additional_condition', 'type': <class 'pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.AdditionalConditionInt'>}, 'angle_cutoff': {'default': 0.3, 'internal': '_angle_cutoff', 'type': <class 'pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.AngleCutoffFloat'>}, 'continuous_symmetry_measure_cutoff': {'default': 10, 'internal': '_continuous_symmetry_measure_cutoff', 'type': <class 'pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.CSMFloat'>}, 'distance_cutoff': {'default': 1.4, 'internal': '_distance_cutoff', 'type': <class 'pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.DistanceCutoffFloat'>}}[source]
      -add_strategy_visualization_to_subplot(subplot, visualization_options=None, plot_type=None)[source]
      +add_strategy_visualization_to_subplot(subplot, visualization_options=None, plot_type=None)[source]

      Add a visual of the strategy on a distance-angle plot.

      Parameters:
      @@ -2168,19 +2165,19 @@

      Submodules
      -property additional_condition: AdditionalConditionInt[source]
      +property additional_condition: AdditionalConditionInt[source]

      Additional condition for this strategy.

      -property angle_cutoff[source]
      +property angle_cutoff[source]

      Angle cutoff used.

      -as_dict()[source]
      +as_dict()[source]

      Bson-serializable dict representation of the SimplestChemenvStrategy object.

      Returns:
      @@ -2191,19 +2188,19 @@

      Submodules
      -property continuous_symmetry_measure_cutoff[source]
      +property continuous_symmetry_measure_cutoff[source]

      CSM cutoff used.

      -property distance_cutoff[source]
      +property distance_cutoff[source]

      Distance cutoff used.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstructs the SimplestChemenvStrategy object from a dict representation of the SimplestChemenvStrategy object created using the as_dict method.

      @@ -2218,7 +2215,7 @@

      Submodules
      -get_site_coordination_environment(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_map=False)[source]
      +get_site_coordination_environment(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_map=False)[source]

      Get the coordination environment of a given site.

      Parameters:
      @@ -2239,7 +2236,7 @@

      Submodules
      -get_site_coordination_environments(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_maps=False)[source]
      +get_site_coordination_environments(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_maps=False)[source]

      Get the coordination environments of a given site.

      Parameters:
      @@ -2260,7 +2257,7 @@

      Submodules
      -get_site_coordination_environments_fractions(site, isite=None, dequivsite=None, dthissite=None, mysym=None, ordered=True, min_fraction=0, return_maps=True, return_strategy_dict_info=False)[source]
      +get_site_coordination_environments_fractions(site, isite=None, dequivsite=None, dthissite=None, mysym=None, ordered=True, min_fraction=0, return_maps=True, return_strategy_dict_info=False)[source]

      Get the coordination environments of a given site and additional information.

      Parameters:
      @@ -2284,7 +2281,7 @@

      Submodules
      -get_site_neighbors(site, isite=None, dequivsite=None, dthissite=None, mysym=None)[source]
      +get_site_neighbors(site, isite=None, dequivsite=None, dthissite=None, mysym=None)[source]

      Get the neighbors of a given site.

      Parameters:
      @@ -2304,7 +2301,7 @@

      Submodules
      -property uniquely_determines_coordination_environments[source]
      +property uniquely_determines_coordination_environments[source]

      Whether this strategy uniquely determines coordination environments.

      @@ -2312,17 +2309,17 @@

      Submodules
      -class StrategyOption[source]
      +class StrategyOption[source]

      Bases: MSONable, ABC

      Abstract class for the options of the chemenv strategies.

      -allowed_values: str | None = None[source]
      +allowed_values: str | None = None[source]
      -abstract as_dict()[source]
      +abstract as_dict()[source]

      A JSON-serializable dict representation of this strategy option.

      @@ -2330,7 +2327,7 @@

      Submodules
      -class TargetedPenaltiedAbundanceChemenvStrategy(structure_environments=None, truncate_dist_ang=True, additional_condition=1, max_nabundant=5, target_environments=('O:6',), target_penalty_type='max_csm', max_csm=5.0, symmetry_measure_type='csm_wcs_ctwcc')[source]
      +class TargetedPenaltiedAbundanceChemenvStrategy(structure_environments=None, truncate_dist_ang=True, additional_condition=1, max_nabundant=5, target_environments=('O:6',), target_penalty_type='max_csm', max_csm=5.0, symmetry_measure_type='csm_wcs_ctwcc')[source]

      Bases: SimpleAbundanceChemenvStrategy

      Simple ChemenvStrategy using the neighbors that are the most “abundant” in the grid of angle and distance parameters for the definition of neighbors in the Voronoi approach, with a bias for a given list of target @@ -2354,12 +2351,12 @@

      Submodules
      -DEFAULT_TARGET_ENVIRONMENTS = ('O:6',)[source]
      +DEFAULT_TARGET_ENVIRONMENTS = ('O:6',)[source]

      -as_dict()[source]
      +as_dict()[source]

      Bson-serializable dict representation of the TargetedPenaltiedAbundanceChemenvStrategy object.

      Returns:
      @@ -2370,7 +2367,7 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstructs the TargetedPenaltiedAbundanceChemenvStrategy object from a dict representation of the TargetedPenaltiedAbundanceChemenvStrategy object created using the as_dict method.

      @@ -2385,7 +2382,7 @@

      Submodules
      -get_site_coordination_environment(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_map=False)[source]
      +get_site_coordination_environment(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_map=False)[source]

      Get the coordination environment of a given site.

      Parameters:
      @@ -2406,7 +2403,7 @@

      Submodules
      -property uniquely_determines_coordination_environments[source]
      +property uniquely_determines_coordination_environments[source]

      Whether this strategy uniquely determines coordination environments.

      @@ -2414,7 +2411,7 @@

      Submodules
      -class WeightedNbSetChemenvStrategy(structure_environments=None, additional_condition=1, symmetry_measure_type='csm_wcs_ctwcc', nb_set_weights=None, ce_estimator={'function': 'power2_inverse_power2_decreasing', 'options': {'max_csm': 8.0}})[source]
      +class WeightedNbSetChemenvStrategy(structure_environments=None, additional_condition=1, symmetry_measure_type='csm_wcs_ctwcc', nb_set_weights=None, ce_estimator={'function': 'power2_inverse_power2_decreasing', 'options': {'max_csm': 8.0}})[source]

      Bases: AbstractChemenvStrategy

      WeightedNbSetChemenvStrategy.

      Constructor for the WeightedNbSetChemenvStrategy.

      @@ -2426,17 +2423,17 @@

      Submodules
      -DEFAULT_CE_ESTIMATOR: ClassVar = {'function': 'power2_inverse_power2_decreasing', 'options': {'max_csm': 8.0}}[source]
      +DEFAULT_CE_ESTIMATOR: ClassVar = {'function': 'power2_inverse_power2_decreasing', 'options': {'max_csm': 8.0}}[source]

      -STRATEGY_DESCRIPTION: str | None = '    WeightedNbSetChemenvStrategy'[source]
      +STRATEGY_DESCRIPTION: str | None = '    WeightedNbSetChemenvStrategy'[source]
      -as_dict()[source]
      +as_dict()[source]

      Bson-serializable dict representation of the WeightedNbSetChemenvStrategy object.

      Returns:
      @@ -2447,7 +2444,7 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstructs the WeightedNbSetChemenvStrategy object from a dict representation of the WeightedNbSetChemenvStrategy object created using the as_dict method.

      @@ -2462,14 +2459,14 @@

      Submodules
      -get_site_coordination_environment(site)[source]
      +get_site_coordination_environment(site)[source]

      Get the coordination environment of a given site.

      Not implemented for this strategy

      -get_site_coordination_environments(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_maps=False)[source]
      +get_site_coordination_environments(site, isite=None, dequivsite=None, dthissite=None, mysym=None, return_maps=False)[source]

      Get the coordination environments of a given site.

      Parameters:
      @@ -2490,7 +2487,7 @@

      Submodules
      -get_site_coordination_environments_fractions(site, isite=None, dequivsite=None, dthissite=None, mysym=None, ordered=True, min_fraction=0, return_maps=True, return_strategy_dict_info=False, return_all=False)[source]
      +get_site_coordination_environments_fractions(site, isite=None, dequivsite=None, dthissite=None, mysym=None, ordered=True, min_fraction=0, return_maps=True, return_strategy_dict_info=False, return_all=False)[source]

      Get the coordination environments of a given site and additional information.

      Parameters:
      @@ -2514,14 +2511,14 @@

      Submodules
      -get_site_neighbors(site)[source]
      +get_site_neighbors(site)[source]

      Get the neighbors of a given site.

      Not implemented for this strategy.

      -property uniquely_determines_coordination_environments[source]
      +property uniquely_determines_coordination_environments[source]

      Whether this strategy uniquely determines coordination environments.

      @@ -2529,7 +2526,7 @@

      Submodules
      -get_effective_csm(nb_set, cn_map, structure_environments, additional_info, symmetry_measure_type, max_effective_csm, effective_csm_estimator_ratio_function)[source]
      +get_effective_csm(nb_set, cn_map, structure_environments, additional_info, symmetry_measure_type, max_effective_csm, effective_csm_estimator_ratio_function)[source]

      Get the effective continuous symmetry measure of a given neighbors set.

      Parameters:
      @@ -2551,7 +2548,7 @@

      Submodules
      -set_info(additional_info, field, isite, cn_map, value) None[source]
      +set_info(additional_info, field, isite, cn_map, value) None[source]

      Set additional information for the weights.

      Parameters:
      @@ -2581,7 +2578,7 @@

      Submodules
      -class AbstractChemenvAlgorithm(algorithm_type)[source]
      +class AbstractChemenvAlgorithm(algorithm_type)[source]

      Bases: MSONable, ABC

      Base class used to define a Chemenv algorithm used to identify the correct permutation for the computation of the Continuous Symmetry Measure.

      @@ -2593,13 +2590,13 @@

      Submodules
      -property algorithm_type: str[source]
      +property algorithm_type: str[source]

      The type of algorithm.

      -abstract as_dict() dict[str, Any][source]
      +abstract as_dict() dict[str, Any][source]

      A JSON-serializable dict representation of the algorithm.

      @@ -2607,7 +2604,7 @@

      Submodules
      -class AllCoordinationGeometries(permutations_safe_override=False, only_symbols=None)[source]
      +class AllCoordinationGeometries(permutations_safe_override=False, only_symbols=None)[source]

      Bases: dict

      Store all the reference “coordination geometries” (list with instances of the CoordinationGeometry classes).

      @@ -2622,7 +2619,7 @@

      Submodules
      -get_geometries(coordination=None, returned='cg')[source]
      +get_geometries(coordination=None, returned='cg')[source]

      Get a list of coordination geometries with the given coordination number.

      Parameters:
      @@ -2636,7 +2633,7 @@

      Submodules
      -get_geometry_from_IUCr_symbol(IUCr_symbol: str) CoordinationGeometry[source]
      +get_geometry_from_IUCr_symbol(IUCr_symbol: str) CoordinationGeometry[source]

      Get the coordination geometry of the given IUCr symbol.

      Parameters:
      @@ -2647,7 +2644,7 @@

      Submodules
      -get_geometry_from_IUPAC_symbol(IUPAC_symbol: str) CoordinationGeometry[source]
      +get_geometry_from_IUPAC_symbol(IUPAC_symbol: str) CoordinationGeometry[source]

      Get the coordination geometry of the given IUPAC symbol.

      Parameters:
      @@ -2658,7 +2655,7 @@

      Submodules
      -get_geometry_from_mp_symbol(mp_symbol: str) CoordinationGeometry[source]
      +get_geometry_from_mp_symbol(mp_symbol: str) CoordinationGeometry[source]

      Get the coordination geometry of the given mp_symbol.

      Parameters:
      @@ -2669,7 +2666,7 @@

      Submodules
      -get_geometry_from_name(name: str) CoordinationGeometry[source]
      +get_geometry_from_name(name: str) CoordinationGeometry[source]

      Get the coordination geometry of the given name.

      Parameters:
      @@ -2680,7 +2677,7 @@

      Submodules
      -get_implemented_geometries(coordination=None, returned='cg', include_deactivated=False)[source]
      +get_implemented_geometries(coordination=None, returned='cg', include_deactivated=False)[source]

      Get a list of the implemented coordination geometries with the given coordination number.

      Parameters:
      @@ -2696,7 +2693,7 @@

      Submodules
      -get_not_implemented_geometries(coordination=None, returned='mp_symbol')[source]
      +get_not_implemented_geometries(coordination=None, returned='mp_symbol')[source]

      Get a list of the implemented coordination geometries with the given coordination number.

      Parameters:
      @@ -2711,7 +2708,7 @@

      Submodules
      -get_symbol_cn_mapping(coordination=None)[source]
      +get_symbol_cn_mapping(coordination=None)[source]

      Get a dictionary mapping the symbol of a CoordinationGeometry to its coordination.

      Parameters:
      @@ -2728,7 +2725,7 @@

      Submodules
      -get_symbol_name_mapping(coordination=None)[source]
      +get_symbol_name_mapping(coordination=None)[source]

      Get a dictionary mapping the symbol of a CoordinationGeometry to its name.

      Parameters:
      @@ -2745,7 +2742,7 @@

      Submodules
      -is_a_valid_coordination_geometry(mp_symbol=None, IUPAC_symbol=None, IUCr_symbol=None, name=None, cn=None) bool[source]
      +is_a_valid_coordination_geometry(mp_symbol=None, IUPAC_symbol=None, IUCr_symbol=None, name=None, cn=None) bool[source]

      Checks whether a given coordination geometry is valid (exists) and whether the parameters are coherent with each other.

      @@ -2763,7 +2760,7 @@

      Submodules
      -pretty_print(type='implemented_geometries', maxcn=8, additional_info=None)[source]
      +pretty_print(type='implemented_geometries', maxcn=8, additional_info=None)[source]

      Get a string with a list of the Coordination Geometries.

      Parameters:
      @@ -2787,7 +2784,7 @@

      Submodules
      -class CoordinationGeometry(mp_symbol, name, alternative_names=None, IUPAC_symbol=None, IUCr_symbol=None, coordination=None, central_site=None, points=None, solid_angles=None, permutations_safe_override=False, deactivate=False, faces=None, edges=None, algorithms=None, equivalent_indices=None, neighbors_sets_hints=None)[source]
      +class CoordinationGeometry(mp_symbol, name, alternative_names=None, IUPAC_symbol=None, IUCr_symbol=None, coordination=None, central_site=None, points=None, solid_angles=None, permutations_safe_override=False, deactivate=False, faces=None, edges=None, algorithms=None, equivalent_indices=None, neighbors_sets_hints=None)[source]

      Bases: object

      Store the ideal representation of a chemical environment or “coordination geometry”.

      Initialize one “coordination geometry” according to [Pure Appl. Chem., Vol. 79, No. 10, pp. 1779–1799, 2007] @@ -2819,36 +2816,36 @@

      Submodules
      -CSM_SKIP_SEPARATION_PLANE_ALGO = 10.0[source]
      +CSM_SKIP_SEPARATION_PLANE_ALGO = 10.0[source]

      -property IUCr_symbol: str[source]
      +property IUCr_symbol: str[source]

      The IUCr symbol of this coordination geometry.

      -property IUCr_symbol_str[source]
      +property IUCr_symbol_str[source]

      A string representation of the IUCr symbol of this coordination geometry.

      -property IUPAC_symbol: str[source]
      +property IUPAC_symbol: str[source]

      The IUPAC symbol of this coordination geometry.

      -property IUPAC_symbol_str: str[source]
      +property IUPAC_symbol_str: str[source]

      A string representation of the IUPAC symbol of this coordination geometry.

      -class NeighborsSetsHints(hints_type, options)[source]
      +class NeighborsSetsHints(hints_type, options)[source]

      Bases: object

      Class used to describe neighbors sets hints.

      This allows to possibly get a lower coordination from a capped-like model polyhedron.

      @@ -2864,18 +2861,18 @@

      Submodules
      -ALLOWED_HINTS_TYPES = ('single_cap', 'double_cap', 'triple_cap')[source]
      +ALLOWED_HINTS_TYPES = ('single_cap', 'double_cap', 'triple_cap')[source]

      -as_dict()[source]
      +as_dict()[source]

      A JSON-serializable dict representation of this NeighborsSetsHints.

      -double_cap_hints(hints_info)[source]
      +double_cap_hints(hints_info)[source]

      Return hints for an additional neighbors set, i.e. the voronoi indices that constitute this new neighbors set, in case of a “Double cap” hint.

      @@ -2893,13 +2890,13 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstruct the NeighborsSetsHints from a JSON-serializable dict.

      -hints(hints_info)[source]
      +hints(hints_info)[source]

      Return hints for an additional neighbors set, i.e. the voronoi indices that constitute this new neighbors set.

      @@ -2917,7 +2914,7 @@

      Submodules
      -single_cap_hints(hints_info)[source]
      +single_cap_hints(hints_info)[source]

      Return hints for an additional neighbors set, i.e. the voronoi indices that constitute this new neighbors set, in case of a “Single cap” hint.

      @@ -2935,7 +2932,7 @@

      Submodules
      -triple_cap_hints(hints_info)[source]
      +triple_cap_hints(hints_info)[source]

      Return hints for an additional neighbors set, i.e. the voronoi indices that constitute this new neighbors set, in case of a “Triple cap” hint.

      @@ -2955,51 +2952,51 @@

      Submodules
      -property algorithms[source]
      +property algorithms[source]

      The list of algorithms that are used to identify this coordination geometry.

      -as_dict()[source]
      +as_dict()[source]

      A JSON-serializable dict representation of this CoordinationGeometry.

      -property ce_symbol: str[source]
      +property ce_symbol: str[source]

      The symbol of this coordination geometry. Same as the MP symbol.

      -property coordination_number[source]
      +property coordination_number[source]

      The coordination number of this coordination geometry.

      -property distfactor_max[source]
      +property distfactor_max[source]

      The maximum distfactor for the perfect CoordinationGeometry (usually 1.0 for symmetric polyhedrons).

      -edges(sites, permutation=None, input='sites')[source]
      +edges(sites, permutation=None, input='sites')[source]

      Get the list of edges of this coordination geometry. Each edge is given as a list of its end vertices coordinates.

      -faces(sites, permutation=None)[source]
      +faces(sites, permutation=None)[source]

      Get the list of faces of this coordination geometry. Each face is given as a list of its vertices coordinates.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstructs the CoordinationGeometry from its JSON-serializable dict representation.

      Parameters:
      @@ -3013,55 +3010,55 @@

      Submodules
      -get_central_site()[source]
      +get_central_site()[source]

      Get the central site of this coordination geometry.

      -get_coordination_number() int[source]
      +get_coordination_number() int[source]

      Get the coordination number of this coordination geometry.

      -get_name() str[source]
      +get_name() str[source]

      Get the name of this coordination geometry.

      -get_pmeshes(sites, permutation=None)[source]
      +get_pmeshes(sites, permutation=None)[source]

      Get the pmesh strings used for jmol to show this geometry.

      -is_implemented() bool[source]
      +is_implemented() bool[source]

      Get True if this coordination geometry is implemented.

      -property mp_symbol: str[source]
      +property mp_symbol: str[source]

      The MP symbol of this coordination geometry.

      -property number_of_permutations[source]
      +property number_of_permutations[source]

      The number of permutations of this coordination geometry.

      -property pauling_stability_ratio[source]
      +property pauling_stability_ratio[source]

      The theoretical Pauling stability ratio (rC/rA) for this environment.

      -ref_permutation(permutation)[source]
      +ref_permutation(permutation)[source]

      Get the reference permutation for a set of equivalent permutations.

      Can be useful to skip permutations that have already been performed.

      @@ -3079,7 +3076,7 @@

      Submodules
      -solid_angles(permutation=None)[source]
      +solid_angles(permutation=None)[source]

      Get the list of “perfect” solid angles Each edge is given as a list of its end vertices coordinates.

      @@ -3088,7 +3085,7 @@

      Submodules
      -class ExplicitPermutationsAlgorithm(permutations)[source]
      +class ExplicitPermutationsAlgorithm(permutations)[source]

      Bases: AbstractChemenvAlgorithm

      Algorithm doing the explicit permutations for the calculation of the Continuous Symmetry Measure.

      @@ -3100,19 +3097,19 @@

      Submodules
      -as_dict()[source]
      +as_dict()[source]

      JSON-serializable representation of this ExplicitPermutationsAlgorithm.

      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstruct ExplicitPermutationsAlgorithm from its JSON-serializable dict representation.

      -property permutations: list[list[int]][source]
      +property permutations: list[list[int]][source]

      Permutations to be performed for this algorithm.

      @@ -3120,7 +3117,7 @@

      Submodules
      -class SeparationPlane(plane_points, mirror_plane=False, ordered_plane=False, point_groups=None, ordered_point_groups=None, explicit_permutations=None, minimum_number_of_points=None, explicit_optimized_permutations=None, multiplicity=None, other_plane_points=None)[source]
      +class SeparationPlane(plane_points, mirror_plane=False, ordered_plane=False, point_groups=None, ordered_point_groups=None, explicit_permutations=None, minimum_number_of_points=None, explicit_optimized_permutations=None, multiplicity=None, other_plane_points=None)[source]

      Bases: AbstractChemenvAlgorithm

      Algorithm using separation planes for the calculation of the Continuous Symmetry Measure.

      @@ -3151,14 +3148,14 @@

      Submodules
      -property argsorted_ref_separation_perm: list[int][source]
      +property argsorted_ref_separation_perm: list[int][source]

      “Arg sorted” ordered indices of the separation plane.

      This is used in the identification of the final permutation to be used.

      -as_dict()[source]
      +as_dict()[source]
      Returns:

      JSON-serializable dict representation of this SeparationPlane algorithm.

      @@ -3171,7 +3168,7 @@

      Submodules
      -classmethod from_dict(dct: dict) Self[source]
      +classmethod from_dict(dct: dict) Self[source]

      Reconstructs the SeparationPlane algorithm from its JSON-serializable dict representation.

      Parameters:
      @@ -3188,13 +3185,13 @@

      Submodules
      -property permutations: list[list[int]][source]
      +property permutations: list[list[int]][source]

      List of permutations to be performed for this separation plane algorithm.

      -property ref_separation_perm: list[int][source]
      +property ref_separation_perm: list[int][source]

      Ordered indices of the separation plane.

      Examples

      For a separation plane of type 2|4|3, with plane_points indices [0, 3, 5, 8] and @@ -3204,7 +3201,7 @@

      Submodules
      -safe_separation_permutations(ordered_plane=False, ordered_point_groups=None, add_opposite=False)[source]
      +safe_separation_permutations(ordered_plane=False, ordered_point_groups=None, add_opposite=False)[source]

      Simple and safe permutations for this separation plane.

      This is not meant to be used in production. Default configuration for ChemEnv does not use this method.

      @@ -3244,7 +3241,7 @@

      Submodules
      -class AbstractGeometry(central_site=None, bare_coords=None, centering_type='standard', include_central_site_in_centroid=False, optimization=None)[source]
      +class AbstractGeometry(central_site=None, bare_coords=None, centering_type='standard', include_central_site_in_centroid=False, optimization=None)[source]

      Bases: object

      Describe a geometry (perfect or distorted).

      Constructor for the abstract geometry.

      @@ -3264,19 +3261,19 @@

      Submodules
      -property cn[source]
      +property cn[source]

      Coordination number.

      -property coordination_number[source]
      +property coordination_number[source]

      Coordination number.

      -classmethod from_cg(cg, centering_type='standard', include_central_site_in_centroid=False) Self[source]
      +classmethod from_cg(cg, centering_type='standard', include_central_site_in_centroid=False) Self[source]
      Parameters:
        @@ -3290,7 +3287,7 @@

        Submodules
        -points_wcs_csc(permutation=None)[source]
        +points_wcs_csc(permutation=None)[source]
        Parameters:

        permutation

        @@ -3300,7 +3297,7 @@

        Submodules
        -points_wcs_ctwcc(permutation=None)[source]
        +points_wcs_ctwcc(permutation=None)[source]
        Parameters:

        permutation

        @@ -3310,7 +3307,7 @@

        Submodules
        -points_wcs_ctwocc(permutation=None)[source]
        +points_wcs_ctwocc(permutation=None)[source]
        Parameters:

        permutation

        @@ -3320,7 +3317,7 @@

        Submodules
        -points_wocs_csc(permutation=None)[source]
        +points_wocs_csc(permutation=None)[source]
        Parameters:

        permutation

        @@ -3330,7 +3327,7 @@

        Submodules
        -points_wocs_ctwcc(permutation=None)[source]
        +points_wocs_ctwcc(permutation=None)[source]
        Parameters:

        permutation

        @@ -3340,7 +3337,7 @@

        Submodules
        -points_wocs_ctwocc(permutation=None)[source]
        +points_wocs_ctwocc(permutation=None)[source]
        Parameters:

        permutation

        @@ -3352,7 +3349,7 @@

        Submodules
        -class LocalGeometryFinder(permutations_safe_override: bool = False, plane_ordering_override: bool = True, plane_safe_permutations: bool = False, only_symbols=None)[source]
        +class LocalGeometryFinder(permutations_safe_override: bool = False, plane_ordering_override: bool = True, plane_safe_permutations: bool = False, only_symbols=None)[source]

        Bases: object

        Main class used to find the local environments in a structure.

        @@ -3368,47 +3365,47 @@

        Submodules
        -BVA_DISTANCE_SCALE_FACTORS: ClassVar = {'GGA_relaxed': 1.015, 'LDA_relaxed': 0.995, 'experimental': 1.0}[source]
        +BVA_DISTANCE_SCALE_FACTORS: ClassVar = {'GGA_relaxed': 1.015, 'LDA_relaxed': 0.995, 'experimental': 1.0}[source]

        -DEFAULT_BVA_DISTANCE_SCALE_FACTOR = 1.0[source]
        +DEFAULT_BVA_DISTANCE_SCALE_FACTOR = 1.0[source]
        -DEFAULT_SPG_ANALYZER_OPTIONS: ClassVar = {'angle_tolerance': 5, 'symprec': 0.001}[source]
        +DEFAULT_SPG_ANALYZER_OPTIONS: ClassVar = {'angle_tolerance': 5, 'symprec': 0.001}[source]
        -DEFAULT_STRATEGY = <pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.MultiWeightsChemenvStrategy object>[source]
        +DEFAULT_STRATEGY = <pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.MultiWeightsChemenvStrategy object>[source]
        -PRESETS: ClassVar = {'DEFAULT': {'maximum_distance_factor': 2.0, 'minimum_angle_factor': 0.05, 'optimization': 2, 'voronoi_normalized_angle_tolerance': 0.03, 'voronoi_normalized_distance_tolerance': 0.05}}[source]
        +PRESETS: ClassVar = {'DEFAULT': {'maximum_distance_factor': 2.0, 'minimum_angle_factor': 0.05, 'optimization': 2, 'voronoi_normalized_angle_tolerance': 0.03, 'voronoi_normalized_distance_tolerance': 0.05}}[source]
        -STRUCTURE_REFINEMENT_NONE = 'none'[source]
        +STRUCTURE_REFINEMENT_NONE = 'none'[source]
        -STRUCTURE_REFINEMENT_REFINED = 'refined'[source]
        +STRUCTURE_REFINEMENT_REFINED = 'refined'[source]
        -STRUCTURE_REFINEMENT_SYMMETRIZED = 'symmetrized'[source]
        +STRUCTURE_REFINEMENT_SYMMETRIZED = 'symmetrized'[source]
        -compute_coordination_environments(structure, indices=None, only_cations=True, strategy=<pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.MultiWeightsChemenvStrategy object>, valences='bond-valence-analysis', initial_structure_environments=None)[source]
        +compute_coordination_environments(structure, indices=None, only_cations=True, strategy=<pymatgen.analysis.chemenv.coordination_environments.chemenv_strategies.MultiWeightsChemenvStrategy object>, valences='bond-valence-analysis', initial_structure_environments=None)[source]
        Parameters:
          @@ -3425,7 +3422,7 @@

          Submodules
          -compute_structure_environments(excluded_atoms=None, only_atoms=None, only_cations=True, only_indices=None, maximum_distance_factor=2.0, minimum_angle_factor=0.05, max_cn=None, min_cn=None, only_symbols=None, valences='undefined', additional_conditions=None, info=None, timelimit=None, initial_structure_environments=None, get_from_hints=False, voronoi_normalized_distance_tolerance=0.05, voronoi_normalized_angle_tolerance=0.03, voronoi_distance_cutoff=None, recompute=None, optimization=2)[source]
          +compute_structure_environments(excluded_atoms=None, only_atoms=None, only_cations=True, only_indices=None, maximum_distance_factor=2.0, minimum_angle_factor=0.05, max_cn=None, min_cn=None, only_symbols=None, valences='undefined', additional_conditions=None, info=None, timelimit=None, initial_structure_environments=None, get_from_hints=False, voronoi_normalized_distance_tolerance=0.05, voronoi_normalized_angle_tolerance=0.03, voronoi_distance_cutoff=None, recompute=None, optimization=2)[source]

          Compute and returns the StructureEnvironments object containing all the information about the coordination environments in the structure.

          @@ -3476,7 +3473,7 @@

          Submodules
          -coordination_geometry_symmetry_measures(coordination_geometry, tested_permutations=False, points_perfect=None, optimization=None)[source]
          +coordination_geometry_symmetry_measures(coordination_geometry, tested_permutations=False, points_perfect=None, optimization=None)[source]

          Get the symmetry measures of a given coordination_geometry for a set of permutations depending on the permutation setup. Depending on the parameters of the LocalGeometryFinder and on the coordination geometry, different methods are called.

          @@ -3495,7 +3492,7 @@

          Submodules
          -coordination_geometry_symmetry_measures_fallback_random(coordination_geometry, n_random=10, points_perfect=None, **kwargs)[source]
          +coordination_geometry_symmetry_measures_fallback_random(coordination_geometry, n_random=10, points_perfect=None, **kwargs)[source]

          Get the symmetry measures for a random set of permutations for the coordination geometry “coordination_geometry”. Fallback implementation for the plane separation algorithms measures of each permutation.

          @@ -3514,7 +3511,7 @@

          Submodules
          -coordination_geometry_symmetry_measures_separation_plane(coordination_geometry, separation_plane_algo, testing=False, tested_permutations=False, points_perfect=None)[source]
          +coordination_geometry_symmetry_measures_separation_plane(coordination_geometry, separation_plane_algo, testing=False, tested_permutations=False, points_perfect=None)[source]

          Get the symmetry measures of the given coordination geometry “coordination_geometry” using separation facets to reduce the complexity of the system. Caller to the refined 2POINTS, 3POINTS and other …

          @@ -3529,7 +3526,7 @@

          Submodules
          -coordination_geometry_symmetry_measures_separation_plane_optim(coordination_geometry, separation_plane_algo, points_perfect=None, nb_set=None, optimization=None)[source]
          +coordination_geometry_symmetry_measures_separation_plane_optim(coordination_geometry, separation_plane_algo, points_perfect=None, nb_set=None, optimization=None)[source]

          Get the symmetry measures of the given coordination geometry “coordination_geometry” using separation facets to reduce the complexity of the system. Caller to the refined 2POINTS, 3POINTS and other …

          @@ -3559,7 +3556,7 @@

          Submodules
          -coordination_geometry_symmetry_measures_sepplane_optim(coordination_geometry, points_perfect=None, nb_set=None, optimization=None)[source]
          +coordination_geometry_symmetry_measures_sepplane_optim(coordination_geometry, points_perfect=None, nb_set=None, optimization=None)[source]

          Get the symmetry measures of a given coordination_geometry for a set of permutations depending on the permutation setup. Depending on the parameters of the LocalGeometryFinder and on the coordination geometry, different methods are called.

          @@ -3578,7 +3575,7 @@

          Submodules
          -coordination_geometry_symmetry_measures_standard(coordination_geometry, algo, points_perfect=None, optimization=None)[source]
          +coordination_geometry_symmetry_measures_standard(coordination_geometry, algo, points_perfect=None, optimization=None)[source]

          Get the symmetry measures for a set of permutations (whose setup depends on the coordination geometry) for the coordination geometry “coordination_geometry”. Standard implementation looking for the symmetry measures of each permutation.

          @@ -3594,7 +3591,7 @@

          Submodules
          -get_coordination_symmetry_measures(only_minimum=True, all_csms=True, optimization=None)[source]
          +get_coordination_symmetry_measures(only_minimum=True, all_csms=True, optimization=None)[source]

          Get the continuous symmetry measures of the current local geometry in a dictionary.

          Returns:
          @@ -3605,7 +3602,7 @@

          Submodules
          -get_coordination_symmetry_measures_optim(only_minimum=True, all_csms=True, nb_set=None, optimization=None)[source]
          +get_coordination_symmetry_measures_optim(only_minimum=True, all_csms=True, nb_set=None, optimization=None)[source]

          Get the continuous symmetry measures of the current local geometry in a dictionary.

          Returns:
          @@ -3616,7 +3613,7 @@

          Submodules
          -get_structure()[source]
          +get_structure()[source]

          Get the pymatgen Structure that has been setup for the identification of geometries (the initial one might have been refined/symmetrized using the SpaceGroupAnalyzer).

          @@ -3629,7 +3626,7 @@

          Submodules
          -set_structure(lattice: Lattice, species, coords, coords_are_cartesian)[source]
          +set_structure(lattice: Lattice, species, coords, coords_are_cartesian)[source]

          Set up the pymatgen structure for which the coordination geometries have to be identified starting from the lattice, the species and the coordinates.

          @@ -3646,7 +3643,7 @@

          Submodules
          -setup_explicit_indices_local_geometry(explicit_indices)[source]
          +setup_explicit_indices_local_geometry(explicit_indices)[source]

          Set up explicit indices for the local geometry, for testing purposes.

          Parameters:
          @@ -3658,7 +3655,7 @@

          Submodules
          -setup_local_geometry(isite, coords, optimization=None)[source]
          +setup_local_geometry(isite, coords, optimization=None)[source]

          Set up the AbstractGeometry for the local geometry of site with index isite.

          Parameters:
          @@ -3672,7 +3669,7 @@

          Submodules
          -setup_ordered_indices_local_geometry(coordination)[source]
          +setup_ordered_indices_local_geometry(coordination)[source]

          Set up ordered indices for the local geometry, for testing purposes.

          Parameters:
          @@ -3683,7 +3680,7 @@

          Submodules
          -setup_parameter(parameter, value)[source]
          +setup_parameter(parameter, value)[source]

          Setup of one specific parameter to the given value. The other parameters are unchanged. See setup_parameters method for the list of possible parameters.

          @@ -3698,7 +3695,7 @@

          Submodules
          -setup_parameters(centering_type='standard', include_central_site_in_centroid=False, bva_distance_scale_factor=None, structure_refinement='refined', spg_analyzer_options=None)[source]
          +setup_parameters(centering_type='standard', include_central_site_in_centroid=False, bva_distance_scale_factor=None, structure_refinement='refined', spg_analyzer_options=None)[source]

          Setup of the parameters for the coordination geometry finder. A reference point for the geometries has to be chosen. This can be the centroid of the structure (including or excluding the atom for which the coordination geometry is looked for) or the atom itself. In the ‘standard’ centering_type, the reference point is the central @@ -3722,7 +3719,7 @@

          Submodules
          -setup_random_indices_local_geometry(coordination)[source]
          +setup_random_indices_local_geometry(coordination)[source]

          Set up random indices for the local geometry, for testing purposes.

          Parameters:
          @@ -3733,7 +3730,7 @@

          Submodules
          -setup_random_structure(coordination)[source]
          +setup_random_structure(coordination)[source]

          Set up a purely random structure with a given coordination.

          Parameters:
          @@ -3744,7 +3741,7 @@

          Submodules
          -setup_structure(structure: Structure)[source]
          +setup_structure(structure: Structure)[source]

          Set up the structure for which the coordination geometries have to be identified. The structure is analyzed with the space group analyzer and a refined structure is used.

          @@ -3756,7 +3753,7 @@

          Submodules
          -setup_test_perfect_environment(symbol, randomness=False, max_random_dist=0.1, symbol_type='mp_symbol', indices='RANDOM', random_translation='NONE', random_rotation='NONE', random_scale='NONE', points=None)[source]
          +setup_test_perfect_environment(symbol, randomness=False, max_random_dist=0.1, symbol_type='mp_symbol', indices='RANDOM', random_translation='NONE', random_rotation='NONE', random_scale='NONE', points=None)[source]
          Parameters:
            @@ -3776,7 +3773,7 @@

            Submodules
            -update_nb_set_environments(se, isite, cn, inb_set, nb_set, recompute=False, optimization=None)[source]
            +update_nb_set_environments(se, isite, cn, inb_set, nb_set, recompute=False, optimization=None)[source]
            Parameters:
              @@ -3796,7 +3793,7 @@

              Submodules
              -find_rotation(points_distorted, points_perfect)[source]
              +find_rotation(points_distorted, points_perfect)[source]

              This finds the rotation matrix that aligns the (distorted) set of points “points_distorted” with respect to the (perfect) set of points “points_perfect” in a least-square sense.

              @@ -3815,7 +3812,7 @@

              Submodules
              -find_scaling_factor(points_distorted, points_perfect, rot)[source]
              +find_scaling_factor(points_distorted, points_perfect, rot)[source]

              This finds the scaling factor between the (distorted) set of points “points_distorted” and the (perfect) set of points “points_perfect” in a least-square sense.

              @@ -3835,7 +3832,7 @@

              Submodules
              -symmetry_measure(points_distorted, points_perfect)[source]
              +symmetry_measure(points_distorted, points_perfect)[source]

              Computes the continuous symmetry measure of the (distorted) set of points “points_distorted” with respect to the (perfect) set of points “points_perfect”.

              @@ -3863,7 +3860,7 @@

              Submodules
              -class ChemicalEnvironments(coord_geoms=None)[source]
              +class ChemicalEnvironments(coord_geoms=None)[source]

              Bases: MSONable

              Store all the information about the chemical environment of a given site for a given list of coordinated neighbors (internally called “cn_map”).

              @@ -3876,7 +3873,7 @@

              Submodules
              -add_coord_geom(mp_symbol, symmetry_measure, algo='UNKNOWN', permutation=None, override=False, local2perfect_map=None, perfect2local_map=None, detailed_voronoi_index=None, other_symmetry_measures=None, rotation_matrix=None, scaling_factor=None)[source]
              +add_coord_geom(mp_symbol, symmetry_measure, algo='UNKNOWN', permutation=None, override=False, local2perfect_map=None, perfect2local_map=None, detailed_voronoi_index=None, other_symmetry_measures=None, rotation_matrix=None, scaling_factor=None)[source]

              Adds a coordination geometry to the ChemicalEnvironments object.

              Parameters:
              @@ -3903,7 +3900,7 @@

              Submodules
              -as_dict()[source]
              +as_dict()[source]

              Get a dictionary representation of the ChemicalEnvironments object.

              Returns:
              @@ -3914,7 +3911,7 @@

              Submodules
              -classmethod from_dict(dct: dict) Self[source]
              +classmethod from_dict(dct: dict) Self[source]

              Reconstructs the ChemicalEnvironments object from a dict representation of the ChemicalEnvironments created using the as_dict method.

              @@ -3929,7 +3926,7 @@

              Submodules
              -is_close_to(other, rtol=0.0, atol=1e-08) bool[source]
              +is_close_to(other, rtol=0.0, atol=1e-08) bool[source]

              Whether this ChemicalEnvironments object is close to another one.

              Parameters:
              @@ -3950,7 +3947,7 @@

              Submodules
              -minimum_geometries(n=None, symmetry_measure_type=None, max_csm=None)[source]
              +minimum_geometries(n=None, symmetry_measure_type=None, max_csm=None)[source]

              Get a list of geometries with increasing continuous symmetry measure in this ChemicalEnvironments object.

              Parameters:
              @@ -3967,7 +3964,7 @@

              Submodules
              -minimum_geometry(symmetry_measure_type=None, max_csm=None)[source]
              +minimum_geometry(symmetry_measure_type=None, max_csm=None)[source]

              Get the geometry with the minimum continuous symmetry measure of this ChemicalEnvironments.

              Returns:
              @@ -3984,7 +3981,7 @@

              Submodules
              -class LightStructureEnvironments(strategy, coordination_environments=None, all_nbs_sites=None, neighbors_sets=None, structure=None, valences=None, valences_origin=None)[source]
              +class LightStructureEnvironments(strategy, coordination_environments=None, all_nbs_sites=None, neighbors_sets=None, structure=None, valences=None, valences_origin=None)[source]

              Bases: MSONable

              Store the chemical environments of a given structure obtained from a given ChemenvStrategy. Currently, only strategies leading to the determination of a unique environment for each site is allowed @@ -4007,17 +4004,17 @@

              Submodules
              -DEFAULT_STATISTICS_FIELDS = ('anion_list', 'anion_atom_list', 'cation_list', 'cation_atom_list', 'neutral_list', 'neutral_atom_list', 'atom_coordination_environments_present', 'ion_coordination_environments_present', 'fraction_atom_coordination_environments_present', 'fraction_ion_coordination_environments_present', 'coordination_environments_atom_present', 'coordination_environments_ion_present')[source]
              +DEFAULT_STATISTICS_FIELDS = ('anion_list', 'anion_atom_list', 'cation_list', 'cation_atom_list', 'neutral_list', 'neutral_atom_list', 'atom_coordination_environments_present', 'ion_coordination_environments_present', 'fraction_atom_coordination_environments_present', 'fraction_ion_coordination_environments_present', 'coordination_environments_atom_present', 'coordination_environments_ion_present')[source]

              -DELTA_MAX_OXIDATION_STATE = 0.1[source]
              +DELTA_MAX_OXIDATION_STATE = 0.1[source]
              -class NeighborsSet(structure: Structure, isite, all_nbs_sites, all_nbs_sites_indices)[source]
              +class NeighborsSet(structure: Structure, isite, all_nbs_sites, all_nbs_sites_indices)[source]

              Bases: object

              Class used to store a given set of neighbors of a given site (based on a list of sites, the voronoi container is not part of the LightStructureEnvironments object).

              @@ -4034,13 +4031,13 @@

              Submodules
              -as_dict()[source]
              +as_dict()[source]

              A JSON-serializable dict representation of the NeighborsSet.

              -classmethod from_dict(dct, structure: Structure, all_nbs_sites) Self[source]
              +classmethod from_dict(dct, structure: Structure, all_nbs_sites) Self[source]

              Reconstructs the NeighborsSet algorithm from its JSON-serializable dict representation, together with the structure and all the possible neighbors sites.

              As an inner (nested) class, the NeighborsSet is not supposed to be used anywhere else that inside the @@ -4062,25 +4059,25 @@

              Submodules
              -property neighb_coords[source]
              +property neighb_coords[source]

              Coordinates of neighbors for this NeighborsSet.

              -property neighb_indices_and_images: list[dict[str, int]][source]
              +property neighb_indices_and_images: list[dict[str, int]][source]

              List of indices and images with respect to the original unit cell sites for this NeighborsSet.

              -property neighb_sites[source]
              +property neighb_sites[source]

              Neighbors for this NeighborsSet as pymatgen Sites.

              -property neighb_sites_and_indices[source]
              +property neighb_sites_and_indices[source]

              List of neighbors for this NeighborsSet as pymatgen Sites and their index in the original structure.

              @@ -4088,7 +4085,7 @@

              Submodules
              -as_dict()[source]
              +as_dict()[source]
              Returns:

              Bson-serializable representation of the LightStructureEnvironments object.

              @@ -4101,7 +4098,7 @@

              Submodules
              -clear_environments(conditions=None)[source]
              +clear_environments(conditions=None)[source]

              Get the clear environments in the structure.

              Parameters:
              @@ -4118,7 +4115,7 @@

              Submodules
              -contains_only_one_anion(anion)[source]
              +contains_only_one_anion(anion)[source]

              Whether this LightStructureEnvironments concerns a structure with only one given anion type.

              Parameters:
              @@ -4135,7 +4132,7 @@

              Submodules
              -contains_only_one_anion_atom(anion_atom)[source]
              +contains_only_one_anion_atom(anion_atom)[source]

              Whether this LightStructureEnvironments concerns a structure with only one given anion atom type.

              Parameters:
              @@ -4152,7 +4149,7 @@

              Submodules
              -environments_identified()[source]
              +environments_identified()[source]

              Get the set of environments identified in this structure.

              Returns:
              @@ -4166,7 +4163,7 @@

              Submodules
              -classmethod from_dict(dct: dict) Self[source]
              +classmethod from_dict(dct: dict) Self[source]

              Reconstructs the LightStructureEnvironments object from a dict representation of the LightStructureEnvironments created using the as_dict method.

              @@ -4181,7 +4178,7 @@

              Submodules
              -classmethod from_structure_environments(strategy, structure_environments, valences=None, valences_origin=None) Self[source]
              +classmethod from_structure_environments(strategy, structure_environments, valences=None, valences_origin=None) Self[source]

              Construct a LightStructureEnvironments object from a strategy and a StructureEnvironments object.

              Parameters:
              @@ -4201,7 +4198,7 @@

              Submodules
              -get_site_info_for_specie_allces(specie, min_fraction=0)[source]
              +get_site_info_for_specie_allces(specie, min_fraction=0)[source]

              Get list of indices that have the given specie.

              Parameters:
              @@ -4225,7 +4222,7 @@

              Submodules
              -get_site_info_for_specie_ce(specie, ce_symbol)[source]
              +get_site_info_for_specie_ce(specie, ce_symbol)[source]

              Get list of indices that have the given specie with a given Coordination environment.

              Parameters:
              @@ -4250,7 +4247,7 @@

              Submodules
              -get_statistics(statistics_fields=('anion_list', 'anion_atom_list', 'cation_list', 'cation_atom_list', 'neutral_list', 'neutral_atom_list', 'atom_coordination_environments_present', 'ion_coordination_environments_present', 'fraction_atom_coordination_environments_present', 'fraction_ion_coordination_environments_present', 'coordination_environments_atom_present', 'coordination_environments_ion_present'), bson_compatible=False)[source]
              +get_statistics(statistics_fields=('anion_list', 'anion_atom_list', 'cation_list', 'cation_atom_list', 'neutral_list', 'neutral_atom_list', 'atom_coordination_environments_present', 'ion_coordination_environments_present', 'fraction_atom_coordination_environments_present', 'fraction_ion_coordination_environments_present', 'coordination_environments_atom_present', 'coordination_environments_ion_present'), bson_compatible=False)[source]

              Get the statistics of environments for this structure.

              Parameters:
              @@ -4270,13 +4267,13 @@

              Submodules
              -setup_statistic_lists()[source]
              +setup_statistic_lists()[source]

              Set up the statistics of environments for this LightStructureEnvironments.

              -site_contains_environment(isite, ce_symbol)[source]
              +site_contains_environment(isite, ce_symbol)[source]

              Whether a given site contains a given coordination environment.

              Parameters:
              @@ -4296,7 +4293,7 @@

              Submodules
              -site_has_clear_environment(isite, conditions=None)[source]
              +site_has_clear_environment(isite, conditions=None)[source]

              Whether a given site has a “clear” environments.

              A “clear” environment is somewhat arbitrary. You can pass (multiple) conditions, e.g. the environment should have a continuous symmetry measure lower than this, a fraction higher than that, …

              @@ -4318,7 +4315,7 @@

              Submodules
              -structure_contains_atom_environment(atom_symbol, ce_symbol)[source]
              +structure_contains_atom_environment(atom_symbol, ce_symbol)[source]

              Checks whether the structure contains a given atom in a given environment.

              Parameters:
              @@ -4338,7 +4335,7 @@

              Submodules
              -structure_has_clear_environments(conditions=None, skip_none=True, skip_empty=False)[source]
              +structure_has_clear_environments(conditions=None, skip_none=True, skip_empty=False)[source]

              Whether all sites in a structure have “clear” environments.

              Parameters:
              @@ -4359,7 +4356,7 @@

              Submodules
              -property uniquely_determines_coordination_environments[source]
              +property uniquely_determines_coordination_environments[source]

              True if the coordination environments are uniquely determined.

              @@ -4367,7 +4364,7 @@

              Submodules
              -class StructureEnvironments(voronoi, valences, sites_map, equivalent_sites, ce_list, structure, neighbors_sets=None, info=None)[source]
              +class StructureEnvironments(voronoi, valences, sites_map, equivalent_sites, ce_list, structure, neighbors_sets=None, info=None)[source]

              Bases: MSONable

              Store the chemical environments of a given structure.

              Constructor for the StructureEnvironments object.

              @@ -4387,12 +4384,12 @@

              Submodules
              -AC = <pymatgen.analysis.chemenv.utils.defs_utils.AdditionalConditions object>[source]
              +AC = <pymatgen.analysis.chemenv.utils.defs_utils.AdditionalConditions object>[source]

              -class NeighborsSet(structure: Structure, isite, detailed_voronoi, site_voronoi_indices, sources=None)[source]
              +class NeighborsSet(structure: Structure, isite, detailed_voronoi, site_voronoi_indices, sources=None)[source]

              Bases: object

              Store a given set of neighbors of a given site (based on the detailed_voronoi).

              Constructor for NeighborsSet.

              @@ -4411,7 +4408,7 @@

              Submodules
              -add_source(source)[source]
              +add_source(source)[source]

              Add a source to this NeighborsSet.

              Parameters:
              @@ -4422,43 +4419,43 @@

              Submodules
              -angle_plateau()[source]
              +angle_plateau()[source]

              Get the angles plateau’s for this NeighborsSet.

              -property angles[source]
              +property angles[source]

              Angles for each neighbor in this NeighborsSet.

              -as_dict()[source]
              +as_dict()[source]

              A JSON-serializable dict representation of the NeighborsSet.

              -property coords[source]
              +property coords[source]

              Coordinates of the current central atom and its neighbors for this NeighborsSet.

              -distance_plateau()[source]
              +distance_plateau()[source]

              Get the distances plateau’s for this NeighborsSet.

              -property distances[source]
              +property distances[source]

              Distances to each neighbor in this NeighborsSet.

              -classmethod from_dict(dct, structure: Structure, detailed_voronoi) Self[source]
              +classmethod from_dict(dct, structure: Structure, detailed_voronoi) Self[source]

              Reconstructs the NeighborsSet algorithm from its JSON-serializable dict representation, together with the structure and the DetailedVoronoiContainer.

              As an inner (nested) class, the NeighborsSet is not supposed to be used anywhere else that inside the @@ -4481,7 +4478,7 @@

              Submodules
              -get_neighb_voronoi_indices(permutation)[source]
              +get_neighb_voronoi_indices(permutation)[source]

              Get indices in the detailed_voronoi corresponding to the current permutation.

              Parameters:
              @@ -4498,56 +4495,56 @@

              Submodules
              -property info[source]
              +property info[source]

              Summarized information about this NeighborsSet.

              -property neighb_coords[source]
              +property neighb_coords[source]

              Coordinates of neighbors for this NeighborsSet.

              -property neighb_coordsOpt[source]
              +property neighb_coordsOpt[source]

              Optimized access to the coordinates of neighbors for this NeighborsSet.

              -property neighb_sites[source]
              +property neighb_sites[source]

              Neighbors for this NeighborsSet as pymatgen Sites.

              -property neighb_sites_and_indices[source]
              +property neighb_sites_and_indices[source]

              List of neighbors for this NeighborsSet as pymatgen Sites and their index in the original structure.

              -property normalized_angles[source]
              +property normalized_angles[source]

              Normalized angles for each neighbor in this NeighborsSet.

              -property normalized_distances[source]
              +property normalized_distances[source]

              Normalized distances to each neighbor in this NeighborsSet.

              -property source[source]
              +property source[source]

              Returns the source of this NeighborsSet (how it was generated, e.g. from which Voronoi cutoffs, or from hints).

              -voronoi_grid_surface_points(additional_condition=1, other_origins='DO_NOTHING')[source]
              +voronoi_grid_surface_points(additional_condition=1, other_origins='DO_NOTHING')[source]

              Get the surface points in the Voronoi grid for this neighbor from the sources. The general shape of the points should look like a staircase such as in the following figure :

              @@ -4596,7 +4593,7 @@

              Submodules
              -add_neighbors_set(isite, nb_set)[source]
              +add_neighbors_set(isite, nb_set)[source]

              Adds a neighbor set to the list of neighbors sets for this site.

              Parameters:
              @@ -4610,7 +4607,7 @@

              Submodules
              -as_dict()[source]
              +as_dict()[source]

              Bson-serializable dict representation of the StructureEnvironments object.

              Returns:
              @@ -4621,7 +4618,7 @@

              Submodules
              -differences_wrt(other)[source]
              +differences_wrt(other)[source]

              Get differences found in the current StructureEnvironments with respect to another StructureEnvironments.

              Parameters:
              @@ -4635,7 +4632,7 @@

              Submodules
              -classmethod from_dict(dct: dict) Self[source]
              +classmethod from_dict(dct: dict) Self[source]

              Reconstructs the StructureEnvironments object from a dict representation of the StructureEnvironments created using the as_dict method.

              @@ -4650,7 +4647,7 @@

              Submodules
              -get_coordination_environments(isite, cn, nb_set)[source]
              +get_coordination_environments(isite, cn, nb_set)[source]

              Get the ChemicalEnvironments for a given site, coordination and neighbors set.

              Parameters:
              @@ -4668,7 +4665,7 @@

              Submodules
              -get_csm(isite, mp_symbol)[source]
              +get_csm(isite, mp_symbol)[source]

              Get the continuous symmetry measure for a given site in the given coordination environment.

              Parameters:
              @@ -4685,7 +4682,7 @@

              Submodules
              -get_csm_and_maps(isite, max_csm=8.0, figsize=None, symmetry_measure_type=None) tuple[Figure, Axes] | None[source]
              +get_csm_and_maps(isite, max_csm=8.0, figsize=None, symmetry_measure_type=None) tuple[Figure, Axes] | None[source]

              Plotting of the coordination numbers of a given site for all the distfactor/angfactor parameters. If the chemical environments are given, a color map is added to the plot, with the lowest continuous symmetry measure as the value for the color of that distfactor/angfactor set.

              @@ -4706,7 +4703,7 @@

              Submodules
              -get_csms(isite, mp_symbol) list[source]
              +get_csms(isite, mp_symbol) list[source]

              Get the continuous symmetry measure(s) of site with index isite with respect to the perfect coordination environment with mp_symbol. For some environments, a given mp_symbol might not be available (if there is no voronoi parameters leading to a number of neighbors corresponding to @@ -4731,7 +4728,7 @@

              Submodules
              -get_environments_figure(isite, plot_type=None, title='Coordination numbers', max_dist=2.0, colormap=None, figsize=None, strategy=None)[source]
              +get_environments_figure(isite, plot_type=None, title='Coordination numbers', max_dist=2.0, colormap=None, figsize=None, strategy=None)[source]

              Plotting of the coordination environments of a given site for all the distfactor/angfactor regions. The chemical environments with the lowest continuous symmetry measure is shown for each distfactor/angfactor region as the value for the color of that distfactor/angfactor region (using a colormap).

              @@ -4761,7 +4758,7 @@

              Submodules
              -init_neighbors_sets(isite, additional_conditions=None, valences=None)[source]
              +init_neighbors_sets(isite, additional_conditions=None, valences=None)[source]

              Initialize the list of neighbors sets for the current site.

              Parameters:
              @@ -4778,7 +4775,7 @@

              Submodules
              -plot_csm_and_maps(isite, max_csm=8.0)[source]
              +plot_csm_and_maps(isite, max_csm=8.0)[source]

              Plotting of the coordination numbers of a given site for all the distfactor/angfactor parameters. If the chemical environments are given, a color map is added to the plot, with the lowest continuous symmetry measure as the value for the color of that distfactor/angfactor set.

              @@ -4794,7 +4791,7 @@

              Submodules
              -plot_environments(isite, plot_type=None, title='Coordination numbers', max_dist=2.0, figsize=None, strategy=None)[source]
              +plot_environments(isite, plot_type=None, title='Coordination numbers', max_dist=2.0, figsize=None, strategy=None)[source]

              Plotting of the coordination numbers of a given site for all the distfactor/angfactor parameters. If the chemical environments are given, a color map is added to the plot, with the lowest continuous symmetry measure as the value for the color of that distfactor/angfactor set.

              @@ -4817,7 +4814,7 @@

              Submodules
              -save_environments_figure(isite, imagename='image.png', plot_type=None, title='Coordination numbers', max_dist=2.0, figsize=None)[source]
              +save_environments_figure(isite, imagename='image.png', plot_type=None, title='Coordination numbers', max_dist=2.0, figsize=None)[source]

              Save the environments figure to a given file.

              Parameters:
              @@ -4838,7 +4835,7 @@

              Submodules
              -update_coordination_environments(isite, cn, nb_set, ce)[source]
              +update_coordination_environments(isite, cn, nb_set, ce)[source]

              Updates the coordination environment for this site, coordination and neighbor set.

              Parameters:
              @@ -4854,7 +4851,7 @@

              Submodules
              -update_site_info(isite, info_dict)[source]
              +update_site_info(isite, info_dict)[source]

              Update information about this site.

              Parameters:
              @@ -4874,7 +4871,7 @@

              Submodules
              -class DetailedVoronoiContainer(structure=None, voronoi_list2=None, voronoi_cutoff=10.0, isites=None, normalized_distance_tolerance=1e-05, normalized_angle_tolerance=0.001, additional_conditions=None, valences=None, maximum_distance_factor=None, minimum_angle_factor=None)[source]
              +class DetailedVoronoiContainer(structure=None, voronoi_list2=None, voronoi_cutoff=10.0, isites=None, normalized_distance_tolerance=1e-05, normalized_angle_tolerance=0.001, additional_conditions=None, valences=None, maximum_distance_factor=None, minimum_angle_factor=None)[source]

              Bases: MSONable

              Store the full Voronoi of a given structure.

              Constructor for the VoronoiContainer object. Either a structure is given, in which case the Voronoi is @@ -4900,12 +4897,12 @@

              Submodules
              -AC = <pymatgen.analysis.chemenv.utils.defs_utils.AdditionalConditions object>[source]
              +AC = <pymatgen.analysis.chemenv.utils.defs_utils.AdditionalConditions object>[source]

              -as_dict()[source]
              +as_dict()[source]

              Bson-serializable dict representation of the VoronoiContainer.

              Returns:
              @@ -4916,22 +4913,22 @@

              Submodules
              -default_normalized_angle_tolerance = 0.001[source]
              +default_normalized_angle_tolerance = 0.001[source]

              -default_normalized_distance_tolerance = 1e-05[source]
              +default_normalized_distance_tolerance = 1e-05[source]
              -default_voronoi_cutoff = 10.0[source]
              +default_voronoi_cutoff = 10.0[source]
              -classmethod from_dict(dct: dict) Self[source]
              +classmethod from_dict(dct: dict) Self[source]

              Reconstructs the VoronoiContainer object from a dict representation of the VoronoiContainer created using the as_dict method.

              @@ -4946,7 +4943,7 @@

              Submodules
              -get_rdf_figure(isite, normalized=True, figsize=None, step_function=None)[source]
              +get_rdf_figure(isite, normalized=True, figsize=None, step_function=None)[source]

              Get the Radial Distribution Figure for a given site.

              Parameters:
              @@ -4968,7 +4965,7 @@

              Submodules
              -get_sadf_figure(isite, normalized=True, figsize=None, step_function=None)[source]
              +get_sadf_figure(isite, normalized=True, figsize=None, step_function=None)[source]

              Get the Solid Angle Distribution Figure for a given site.

              Parameters:
              @@ -4990,7 +4987,7 @@

              Submodules
              -is_close_to(other, rtol=0.0, atol=1e-08) bool[source]
              +is_close_to(other, rtol=0.0, atol=1e-08) bool[source]

              Whether two DetailedVoronoiContainer objects are close to each other.

              Parameters:
              @@ -5011,7 +5008,7 @@

              Submodules
              -maps_and_surfaces(isite, surface_calculation_type=None, max_dist=2.0, additional_conditions=None)[source]
              +maps_and_surfaces(isite, surface_calculation_type=None, max_dist=2.0, additional_conditions=None)[source]

              Get the different surfaces and their cn_map corresponding to the different distance-angle cutoffs for a given site.

              @@ -5031,7 +5028,7 @@

              Submodules
              -maps_and_surfaces_bounded(isite, surface_calculation_options=None, additional_conditions=None)[source]
              +maps_and_surfaces_bounded(isite, surface_calculation_options=None, additional_conditions=None)[source]

              Get the different surfaces (using boundaries) and their cn_map corresponding to the different distance-angle cutoffs for a given site.

              @@ -5050,7 +5047,7 @@

              Submodules
              -neighbors(isite, distfactor, angfactor, additional_condition=None)[source]
              +neighbors(isite, distfactor, angfactor, additional_condition=None)[source]

              Get the neighbors of a given site corresponding to a given distance and angle factor.

              Parameters:
              @@ -5069,7 +5066,7 @@

              Submodules
              -neighbors_surfaces(isite, surface_calculation_type=None, max_dist=2.0)[source]
              +neighbors_surfaces(isite, surface_calculation_type=None, max_dist=2.0)[source]

              Get the different surfaces corresponding to the different distance-angle cutoffs for a given site.

              Parameters:
              @@ -5087,7 +5084,7 @@

              Submodules
              -neighbors_surfaces_bounded(isite, surface_calculation_options=None)[source]
              +neighbors_surfaces_bounded(isite, surface_calculation_options=None)[source]

              Get the different surfaces (using boundaries) corresponding to the different distance-angle cutoffs for a given site.

              @@ -5105,7 +5102,7 @@

              Submodules
              -setup_neighbors_distances_and_angles(indices)[source]
              +setup_neighbors_distances_and_angles(indices)[source]

              Initialize the angle and distance separations.

              Parameters:
              @@ -5116,7 +5113,7 @@

              Submodules
              -setup_voronoi_list(indices, voronoi_cutoff)[source]
              +setup_voronoi_list(indices, voronoi_cutoff)[source]

              Set up of the voronoi list of neighbors by calling qhull.

              Parameters:
              @@ -5133,7 +5130,7 @@

              Submodules
              -to_bson_voronoi_list2()[source]
              +to_bson_voronoi_list2()[source]

              Transforms the voronoi_list into a vlist + bson_nb_voro_list, that are BSON-encodable.

              Returns:
              @@ -5144,7 +5141,7 @@

              Submodules
              -voronoi_parameters_bounds_and_limits(isite, plot_type, max_dist)[source]
              +voronoi_parameters_bounds_and_limits(isite, plot_type, max_dist)[source]

              Get the different boundaries and limits of the distance and angle factors for the given site.

              Parameters:
              @@ -5164,7 +5161,7 @@

              Submodules
              -from_bson_voronoi_list2(bson_nb_voro_list2: list[PeriodicSite], structure: Structure)[source]
              +from_bson_voronoi_list2(bson_nb_voro_list2: list[PeriodicSite], structure: Structure)[source]

              Get the voronoi_list needed for the VoronoiContainer object from a BSON-encoded voronoi_list.

              Parameters:
              diff --git a/docs/pymatgen.analysis.chemenv.html b/docs/pymatgen.analysis.chemenv.html index 06cd0d31b58..fab7b0ea6c3 100644 --- a/docs/pymatgen.analysis.chemenv.html +++ b/docs/pymatgen.analysis.chemenv.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.chemenv package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.chemenv package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
              - 2024.10.27 -
              diff --git a/docs/pymatgen.analysis.chemenv.utils.html b/docs/pymatgen.analysis.chemenv.utils.html index 5c29e8f6199..ae43584d5b4 100644 --- a/docs/pymatgen.analysis.chemenv.utils.html +++ b/docs/pymatgen.analysis.chemenv.utils.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.chemenv.utils package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.chemenv.utils package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
              - 2024.10.27 -
              @@ -276,7 +273,7 @@

              Submodules
              -class ChemEnvConfig(package_options=None)[source]
              +class ChemEnvConfig(package_options=None)[source]

              Bases: object

              Store the configuration of the chemenv package: - Materials project access @@ -289,12 +286,12 @@

              Submodules
              -DEFAULT_PACKAGE_OPTIONS: ClassVar = {'default_max_distance_factor': 1.5, 'default_strategy': {'strategy': 'SimplestChemenvStrategy', 'strategy_options': {'additional_condition': 1, 'angle_cutoff': 0.3, 'continuous_symmetry_measure_cutoff': 10, 'distance_cutoff': 1.4}}}[source]
              +DEFAULT_PACKAGE_OPTIONS: ClassVar = {'default_max_distance_factor': 1.5, 'default_strategy': {'strategy': 'SimplestChemenvStrategy', 'strategy_options': {'additional_condition': 1, 'angle_cutoff': 0.3, 'continuous_symmetry_measure_cutoff': 10, 'distance_cutoff': 1.4}}}[source]

              -classmethod auto_load(root_dir=None)[source]
              +classmethod auto_load(root_dir=None)[source]

              Autoload options.

              Parameters:
              @@ -305,19 +302,19 @@

              Submodules
              -property has_materials_project_access[source]
              +property has_materials_project_access[source]

              Whether MP access is enabled.

              -package_options_description()[source]
              +package_options_description()[source]

              Describe package options.

              -save(root_dir=None)[source]
              +save(root_dir=None)[source]

              Save the options.

              Parameters:
              @@ -328,13 +325,13 @@

              Submodules
              -setup()[source]
              +setup()[source]

              Setup the class.

              -setup_package_options()[source]
              +setup_package_options()[source]

              Setup the package options.

              @@ -346,7 +343,7 @@

              Submodules
              -exception AbstractChemenvError(cls, method, msg)[source]
              +exception AbstractChemenvError(cls, method, msg)[source]

              Bases: Exception

              Abstract class for Chemenv errors.

              @@ -362,7 +359,7 @@

              Submodules
              -exception ChemenvError(cls: str, method: str, msg: str)[source]
              +exception ChemenvError(cls: str, method: str, msg: str)[source]

              Bases: Exception

              Chemenv error.

              @@ -378,7 +375,7 @@

              Submodules
              -exception EquivalentSiteSearchError(site)[source]
              +exception EquivalentSiteSearchError(site)[source]

              Bases: AbstractChemenvError

              Equivalent site search error.

              @@ -390,7 +387,7 @@

              Submodules
              -exception NeighborsNotComputedChemenvError(site)[source]
              +exception NeighborsNotComputedChemenvError(site)[source]

              Bases: AbstractChemenvError

              Neighbors not computed error.

              @@ -402,7 +399,7 @@

              Submodules
              -exception SolidAngleError(cosinus)[source]
              +exception SolidAngleError(cosinus)[source]

              Bases: AbstractChemenvError

              Solid angle error.

              @@ -418,7 +415,7 @@

              Submodules
              -class Plane(coefficients, p1=None, p2=None, p3=None)[source]
              +class Plane(coefficients, p1=None, p2=None, p3=None)[source]

              Bases: object

              Describe a plane.

              Initialize a plane from the 4 coefficients a, b, c and d of ax + by + cz + d = 0.

              @@ -429,60 +426,60 @@

              Submodules
              -TEST_2D_POINTS = (array([0., 0.]), array([1., 0.]), array([0., 1.]), array([-1.,  0.]), array([ 0., -1.]), array([0., 2.]), array([2., 0.]), array([ 0., -2.]), array([-2.,  0.]), array([1., 1.]), array([2., 2.]), array([-1., -1.]), array([-2., -2.]), array([1., 2.]), array([ 1., -2.]), array([-1.,  2.]), array([-1., -2.]), array([2., 1.]), array([ 2., -1.]), array([-2.,  1.]), array([-2., -1.]))[source]
              +TEST_2D_POINTS = (array([0., 0.]), array([1., 0.]), array([0., 1.]), array([-1.,  0.]), array([ 0., -1.]), array([0., 2.]), array([2., 0.]), array([ 0., -2.]), array([-2.,  0.]), array([1., 1.]), array([2., 2.]), array([-1., -1.]), array([-2., -2.]), array([1., 2.]), array([ 1., -2.]), array([-1.,  2.]), array([-1., -2.]), array([2., 1.]), array([ 2., -1.]), array([-2.,  1.]), array([-2., -1.]))[source]

              -property a[source]
              +property a[source]

              Coefficient a of the plane.

              -property abcd[source]
              +property abcd[source]

              A tuple with the plane coefficients.

              -property b[source]
              +property b[source]

              Coefficient b of the plane.

              -property c[source]
              +property c[source]

              Coefficient c of the plane.

              -property coefficients[source]
              +property coefficients[source]

              A copy of the plane coefficients as a numpy array.

              -property crosses_origin[source]
              +property crosses_origin[source]

              Whether this plane crosses the origin (i.e. coefficient d is 0.0).

              -property d[source]
              +property d[source]

              Coefficient d of the plane.

              -property distance_to_origin[source]
              +property distance_to_origin[source]

              Distance of the plane to the origin.

              -distance_to_point(point)[source]
              +distance_to_point(point)[source]

              Compute the absolute distance from the plane to the point.

              Parameters:
              @@ -496,7 +493,7 @@

              Submodules
              -distances(points)[source]
              +distances(points)[source]

              Compute the distances from the plane to each of the points. Positive distances are on the side of the normal of the plane while negative distances are on the other side.

              @@ -512,7 +509,7 @@

              Submodules
              -distances_indices_groups(points, delta=None, delta_factor=0.05, sign=False)[source]
              +distances_indices_groups(points, delta=None, delta_factor=0.05, sign=False)[source]

              Compute the distances from the plane to each of the points. Positive distances are on the side of the normal of the plane while negative distances are on the other side. Indices sorting the points from closest to furthest is also computed. Grouped indices are also given, for which indices of the distances that are @@ -539,7 +536,7 @@

              Submodules
              -distances_indices_sorted(points, sign=False)[source]
              +distances_indices_sorted(points, sign=False)[source]

              Compute the distances from the plane to each of the points. Positive distances are on the side of the normal of the plane while negative distances are on the other side. Indices sorting the points from closest to furthest is also computed.

              @@ -560,7 +557,7 @@

              Submodules
              -fit_error(points, fit='least_square_distance')[source]
              +fit_error(points, fit='least_square_distance')[source]

              Evaluate the error for a list of points with respect to this plane.

              Parameters:
              @@ -577,7 +574,7 @@

              Submodules
              -fit_least_square_distance_error(points)[source]
              +fit_least_square_distance_error(points)[source]

              Evaluate the sum of squared distances error for a list of points with respect to this plane.

              Parameters:
              @@ -591,7 +588,7 @@

              Submodules
              -fit_maximum_distance_error(points)[source]
              +fit_maximum_distance_error(points)[source]

              Evaluate the max distance error for a list of points with respect to this plane.

              Parameters:
              @@ -605,7 +602,7 @@

              Submodules
              -classmethod from_2points_and_origin(p1, p2) Self[source]
              +classmethod from_2points_and_origin(p1, p2) Self[source]

              Initialize plane from two points and the origin.

              Parameters:
              @@ -622,7 +619,7 @@

              Submodules
              -classmethod from_3points(p1, p2, p3) Self[source]
              +classmethod from_3points(p1, p2, p3) Self[source]

              Initialize plane from three points.

              Parameters:
              @@ -640,7 +637,7 @@

              Submodules
              -classmethod from_coefficients(a, b, c, d) Self[source]
              +classmethod from_coefficients(a, b, c, d) Self[source]

              Initialize plane from its coefficients.

              Parameters:
              @@ -659,7 +656,7 @@

              Submodules
              -classmethod from_npoints(points, best_fit='least_square_distance') Self[source]
              +classmethod from_npoints(points, best_fit='least_square_distance') Self[source]

              Initialize plane from a list of points.

              If the number of points is larger than 3, will use a least square fitting or max distance fitting.

              @@ -677,7 +674,7 @@

              Submodules
              -classmethod from_npoints_least_square_distance(points) Self[source]
              +classmethod from_npoints_least_square_distance(points) Self[source]

              Initialize plane from a list of points using a least square fitting procedure.

              Parameters:
              @@ -691,7 +688,7 @@

              Submodules
              -classmethod from_npoints_maximum_distance(points) Self[source]
              +classmethod from_npoints_maximum_distance(points) Self[source]

              Initialize plane from a list of points using a max distance fitting procedure.

              Parameters:
              @@ -705,7 +702,7 @@

              Submodules
              -indices_separate(points, dist_tolerance)[source]
              +indices_separate(points, dist_tolerance)[source]

              Get three lists containing the indices of the points lying on one side of the plane, on the plane and on the other side of the plane. The dist_tolerance parameter controls the tolerance to which a point is considered to lie on the plane or not (distance to the plane).

              @@ -726,7 +723,7 @@

              Submodules
              -init_3points(non_zeros, zeros)[source]
              +init_3points(non_zeros, zeros)[source]

              Initialize three random points on this plane.

              Parameters:
              @@ -740,7 +737,7 @@

              Submodules
              -is_in_list(plane_list) bool[source]
              +is_in_list(plane_list) bool[source]

              Checks whether the plane is identical to one of the Planes in the plane_list list of Planes.

              Parameters:
              @@ -757,7 +754,7 @@

              Submodules
              -is_in_plane(pp, dist_tolerance) bool[source]
              +is_in_plane(pp, dist_tolerance) bool[source]

              Determines if point pp is in the plane within the tolerance dist_tolerance.

              Parameters:
              @@ -777,7 +774,7 @@

              Submodules
              -is_same_plane_as(plane) bool[source]
              +is_same_plane_as(plane) bool[source]

              Checks whether the plane is identical to another Plane “plane”.

              Parameters:
              @@ -794,7 +791,7 @@

              Submodules
              -orthonormal_vectors()[source]
              +orthonormal_vectors()[source]

              Get a list of three orthogonal vectors, the two first being parallel to the plane and the third one is the normal vector of the plane.

              @@ -809,7 +806,7 @@

              Submodules
              -classmethod perpendicular_bisector(p1, p2) Self[source]
              +classmethod perpendicular_bisector(p1, p2) Self[source]

              Initialize a plane from the perpendicular bisector of two points.

              The perpendicular bisector of two points is the plane perpendicular to the vector joining these two points and passing through the middle of the segment joining the two points.

              @@ -828,7 +825,7 @@

              Submodules
              -project_and_to2dim(pps, plane_center)[source]
              +project_and_to2dim(pps, plane_center)[source]

              Projects the list of points pps to the plane and changes the basis from 3D to the 2D basis of the plane.

              Parameters:
              @@ -842,7 +839,7 @@

              Submodules
              -project_and_to2dim_ordered_indices(pps, plane_center='mean')[source]
              +project_and_to2dim_ordered_indices(pps, plane_center='mean')[source]

              Projects each points in the point list pps on plane and returns the indices that would sort the list of projected points in anticlockwise order.

              @@ -857,7 +854,7 @@

              Submodules
              -projectionpoints(pps)[source]
              +projectionpoints(pps)[source]

              Projects each points in the point list pps on plane and returns the list of projected points.

              Parameters:
              @@ -873,7 +870,7 @@

              Submodules
              -anticlockwise_sort(pps)[source]
              +anticlockwise_sort(pps)[source]

              Sort a list of 2D points in anticlockwise order.

              Parameters:
              @@ -887,7 +884,7 @@

              Submodules
              -anticlockwise_sort_indices(pps)[source]
              +anticlockwise_sort_indices(pps)[source]

              Get the indices that would sort a list of 2D points in anticlockwise order.

              Parameters:
              @@ -901,7 +898,7 @@

              Submodules
              -changebasis(uu, vv, nn, pps)[source]
              +changebasis(uu, vv, nn, pps)[source]

              For a list of points given in standard coordinates (in terms of e1, e2 and e3), returns the same list expressed in the basis (uu, vv, nn), which is supposed to be orthonormal.

              @@ -921,7 +918,7 @@

              Submodules
              -collinear(p1, p2, p3=None, tolerance=0.25)[source]
              +collinear(p1, p2, p3=None, tolerance=0.25)[source]

              Checks if the three points p1, p2 and p3 are collinear or not within a given tolerance. The collinearity is checked by computing the area of the triangle defined by the three points p1, p2 and p3. If the area of this triangle is less than (tolerance x largest_triangle), then the three points are considered collinear. The @@ -949,7 +946,7 @@

              Submodules
              -diamond_functions(xx, yy, y_x0, x_y0)[source]
              +diamond_functions(xx, yy, y_x0, x_y0)[source]

              Method that creates two upper and lower functions based on points xx and yy as well as intercepts defined by y_x0 and x_y0. The resulting functions form kind of a distorted diamond-like structure aligned from @@ -999,7 +996,7 @@

              Submodules
              -function_comparison(f1, f2, x1, x2, numpoints_check=500)[source]
              +function_comparison(f1, f2, x1, x2, numpoints_check=500)[source]

              Method that compares two functions.

              Parameters:
              @@ -1028,7 +1025,7 @@

              Submodules
              -get_lower_and_upper_f(surface_calculation_options)[source]
              +get_lower_and_upper_f(surface_calculation_options)[source]

              Get the lower and upper functions defining a surface in the distance-angle space of neighbors.

              Parameters:
              @@ -1042,7 +1039,7 @@

              Submodules
              -is_anion_cation_bond(valences, ii, jj) bool[source]
              +is_anion_cation_bond(valences, ii, jj) bool[source]

              Checks if two given sites are an anion and a cation.

              Parameters:
              @@ -1063,7 +1060,7 @@

              Submodules
              -matrixTimesVector(MM, aa)[source]
              +matrixTimesVector(MM, aa)[source]
              Parameters:
                @@ -1079,7 +1076,7 @@

                Submodules
                -quarter_ellipsis_functions(xx: ArrayLike, yy: ArrayLike) dict[str, Callable][source]
                +quarter_ellipsis_functions(xx: ArrayLike, yy: ArrayLike) dict[str, Callable][source]

                Method that creates two quarter-ellipse functions based on points xx and yy. The ellipsis is supposed to be aligned with the axes. The two ellipsis pass through the two points xx and yy.

                @@ -1097,7 +1094,7 @@

                Submodules
                -rectangle_surface_intersection(rectangle, f_lower, f_upper, bounds_lower=None, bounds_upper=None, check=True, numpoints_check=500)[source]
                +rectangle_surface_intersection(rectangle, f_lower, f_upper, bounds_lower=None, bounds_upper=None, check=True, numpoints_check=500)[source]

                Method to calculate the surface of the intersection of a rectangle (aligned with axes) and another surface defined by two functions f_lower and f_upper.

                @@ -1120,7 +1117,7 @@

                Submodules
                -rotateCoords(coords, R)[source]
                +rotateCoords(coords, R)[source]

                Rotate the list of points using rotation matrix R.

                Parameters:
                @@ -1137,7 +1134,7 @@

                Submodules
                -rotateCoordsOpt(coords, R)[source]
                +rotateCoordsOpt(coords, R)[source]

                Rotate the list of points using rotation matrix R.

                Parameters:
                @@ -1154,7 +1151,7 @@

                Submodules
                -separation_in_list(separation_indices, separation_indices_list)[source]
                +separation_in_list(separation_indices, separation_indices_list)[source]

                Checks if the separation indices of a plane are already in the list.

                Parameters:
                @@ -1174,7 +1171,7 @@

                Submodules
                -solid_angle(center, coords)[source]
                +solid_angle(center, coords)[source]

                Helper method to calculate the solid angle of a set of coords from the center.

                Parameters:
                @@ -1191,7 +1188,7 @@

                Submodules
                -sort_separation(separation)[source]
                +sort_separation(separation)[source]

                Sort a separation.

                Parameters:
                @@ -1205,7 +1202,7 @@

                Submodules
                -sort_separation_tuple(separation)[source]
                +sort_separation_tuple(separation)[source]

                Sort a separation.

                Parameters:
                @@ -1219,7 +1216,7 @@

                Submodules
                -spline_functions(lower_points, upper_points, degree=3)[source]
                +spline_functions(lower_points, upper_points, degree=3)[source]

                Method that creates two (upper and lower) spline functions based on points lower_points and upper_points.

                Parameters:
                @@ -1237,7 +1234,7 @@

                Submodules
                -vectorsToMatrix(aa, bb)[source]
                +vectorsToMatrix(aa, bb)[source]

                Performs the vector multiplication of the elements of two vectors, constructing the 3x3 matrix.

                Parameters:
                @@ -1261,77 +1258,77 @@

                Submodules
                -class AdditionalConditions[source]
                +class AdditionalConditions[source]

                Bases: object

                Additional conditions that can be used to filter coordination environments.

                -ALL = (0, 1, 2, 3, 4)[source]
                +ALL = (0, 1, 2, 3, 4)[source]
                -CONDITION_DESCRIPTION: ClassVar = {0: 'No additional condition', 1: 'Only anion-cation bonds', 2: 'No element-element bonds (same elements)', 3: 'Only anion-cation bonds and no element-element bonds (same elements)', 4: 'Only element-oxygen bonds'}[source]
                +CONDITION_DESCRIPTION: ClassVar = {0: 'No additional condition', 1: 'Only anion-cation bonds', 2: 'No element-element bonds (same elements)', 3: 'Only anion-cation bonds and no element-element bonds (same elements)', 4: 'Only element-oxygen bonds'}[source]
                -NONE = 0[source]
                +NONE = 0[source]
                -NO_AC = 0[source]
                +NO_AC = 0[source]
                -NO_ADDITIONAL_CONDITION = 0[source]
                +NO_ADDITIONAL_CONDITION = 0[source]
                -NO_E2SEB = 2[source]
                +NO_E2SEB = 2[source]
                -NO_ELEMENT_TO_SAME_ELEMENT_BONDS = 2[source]
                +NO_ELEMENT_TO_SAME_ELEMENT_BONDS = 2[source]
                -ONLY_ACB = 1[source]
                +ONLY_ACB = 1[source]
                -ONLY_ACB_AND_NO_E2SEB = 3[source]
                +ONLY_ACB_AND_NO_E2SEB = 3[source]
                -ONLY_ANION_CATION_BONDS = 1[source]
                +ONLY_ANION_CATION_BONDS = 1[source]
                -ONLY_ANION_CATION_BONDS_AND_NO_ELEMENT_TO_SAME_ELEMENT_BONDS = 3[source]
                +ONLY_ANION_CATION_BONDS_AND_NO_ELEMENT_TO_SAME_ELEMENT_BONDS = 3[source]
                -ONLY_E2OB = 4[source]
                +ONLY_E2OB = 4[source]
                -ONLY_ELEMENT_TO_OXYGEN_BONDS = 4[source]
                +ONLY_ELEMENT_TO_OXYGEN_BONDS = 4[source]
                -check_condition(condition, structure: Structure, parameters)[source]
                +check_condition(condition, structure: Structure, parameters)[source]
                Parameters:
                -evaluate(value)[source]
                +evaluate(value)[source]

                Evaluate the ratio function for the given value.

                Parameters:
                @@ -1384,7 +1381,7 @@

                Submodules
                -classmethod from_dict(dct: dict) Self[source]
                +classmethod from_dict(dct: dict) Self[source]

                Construct ratio function from dict.

                Parameters:
                @@ -1395,7 +1392,7 @@

                Submodules
                -setup_parameters(options_dict)[source]
                +setup_parameters(options_dict)[source]

                Set up the parameters for this ratio function.

                Parameters:
                @@ -1408,7 +1405,7 @@

                Submodules
                -class CSMFiniteRatioFunction(function, options_dict=None)[source]
                +class CSMFiniteRatioFunction(function, options_dict=None)[source]

                Bases: AbstractRatioFunction

                Concrete implementation of a series of ratio functions applied to the continuous symmetry measure (CSM).

                Uses “finite” ratio functions.

                @@ -1426,12 +1423,12 @@

                Submodules
                -ALLOWED_FUNCTIONS: ClassVar = {'power2_decreasing_exp': ['max_csm', 'alpha'], 'smootherstep': ['lower_csm', 'upper_csm'], 'smoothstep': ['lower_csm', 'upper_csm']}[source]
                +ALLOWED_FUNCTIONS: ClassVar = {'power2_decreasing_exp': ['max_csm', 'alpha'], 'smootherstep': ['lower_csm', 'upper_csm'], 'smoothstep': ['lower_csm', 'upper_csm']}[source]

                -fractions(data)[source]
                +fractions(data)[source]

                Get the fractions from the CSM ratio function applied to the data.

                Parameters:
                @@ -1445,7 +1442,7 @@

                Submodules
                -mean_estimator(data)[source]
                +mean_estimator(data)[source]

                Get the weighted CSM using this CSM ratio function applied to the data.

                Parameters:
                @@ -1459,7 +1456,7 @@

                Submodules
                -power2_decreasing_exp(vals)[source]
                +power2_decreasing_exp(vals)[source]

                Get the evaluation of the ratio function f(x)=exp(-a*x)*(x-1)^2.

                The CSM values (i.e. “x”), are scaled to the “max_csm” parameter. The “a” constant correspond to the “alpha” parameter.

                @@ -1475,7 +1472,7 @@

                Submodules
                -ratios(data)[source]
                +ratios(data)[source]

                Get the fractions from the CSM ratio function applied to the data.

                Parameters:
                @@ -1489,7 +1486,7 @@

                Submodules
                -smootherstep(vals)[source]
                +smootherstep(vals)[source]

                Get the evaluation of the smootherstep ratio function: f(x)=6*x^5-15*x^4+10*x^3.

                The CSM values (i.e. “x”), are scaled between the “lower_csm” and “upper_csm” parameters.

                @@ -1504,7 +1501,7 @@

                Submodules
                -smoothstep(vals)[source]
                +smoothstep(vals)[source]

                Get the evaluation of the smoothstep ratio function: f(x)=3*x^2-2*x^3.

                The CSM values (i.e. “x”), are scaled between the “lower_csm” and “upper_csm” parameters.

                @@ -1521,7 +1518,7 @@

                Submodules
                -class CSMInfiniteRatioFunction(function, options_dict=None)[source]
                +class CSMInfiniteRatioFunction(function, options_dict=None)[source]

                Bases: AbstractRatioFunction

                Concrete implementation of a series of ratio functions applied to the continuous symmetry measure (CSM).

                Uses “infinite” ratio functions.

                @@ -1539,12 +1536,12 @@

                Submodules
                -ALLOWED_FUNCTIONS: ClassVar = {'power2_inverse_decreasing': ['max_csm'], 'power2_inverse_power2_decreasing': ['max_csm']}[source]
                +ALLOWED_FUNCTIONS: ClassVar = {'power2_inverse_decreasing': ['max_csm'], 'power2_inverse_power2_decreasing': ['max_csm']}[source]

                -fractions(data)[source]
                +fractions(data)[source]

                Get the fractions from the CSM ratio function applied to the data.

                Parameters:
                @@ -1558,7 +1555,7 @@

                Submodules
                -mean_estimator(data)[source]
                +mean_estimator(data)[source]

                Get the weighted CSM using this CSM ratio function applied to the data.

                Parameters:
                @@ -1572,7 +1569,7 @@

                Submodules
                -power2_inverse_decreasing(vals)[source]
                +power2_inverse_decreasing(vals)[source]

                Get the evaluation of the ratio function f(x)=(x-1)^2 / x.

                The CSM values (i.e. “x”), are scaled to the “max_csm” parameter. The “a” constant correspond to the “alpha” parameter.

                @@ -1588,7 +1585,7 @@

                Submodules
                -power2_inverse_power2_decreasing(vals)[source]
                +power2_inverse_power2_decreasing(vals)[source]

                Get the evaluation of the ratio function f(x)=(x-1)^2 / x^2.

                The CSM values (i.e. “x”), are scaled to the “max_csm” parameter. The “a” constant correspond to the “alpha” parameter.

                @@ -1604,7 +1601,7 @@

                Submodules
                -ratios(data)[source]
                +ratios(data)[source]

                Get the fractions from the CSM ratio function applied to the data.

                Parameters:
                @@ -1620,7 +1617,7 @@

                Submodules
                -class DeltaCSMRatioFunction(function, options_dict=None)[source]
                +class DeltaCSMRatioFunction(function, options_dict=None)[source]

                Bases: AbstractRatioFunction

                Concrete implementation of a series of ratio functions applied to differences of continuous symmetry measures (DeltaCSM).

                @@ -1639,12 +1636,12 @@

                Submodules
                -ALLOWED_FUNCTIONS: ClassVar = {'smootherstep': ['delta_csm_min', 'delta_csm_max']}[source]
                +ALLOWED_FUNCTIONS: ClassVar = {'smootherstep': ['delta_csm_min', 'delta_csm_max']}[source]

                -smootherstep(vals)[source]
                +smootherstep(vals)[source]

                Get the evaluation of the smootherstep ratio function: f(x)=6*x^5-15*x^4+10*x^3.

                The DeltaCSM values (i.e. “x”), are scaled between the “delta_csm_min” and “delta_csm_max” parameters.

                @@ -1661,7 +1658,7 @@

                Submodules
                -class RatioFunction(function, options_dict=None)[source]
                +class RatioFunction(function, options_dict=None)[source]

                Bases: AbstractRatioFunction

                Concrete implementation of a series of ratio functions.

                Constructor for AbstractRatioFunction.

                @@ -1675,12 +1672,12 @@

                Submodules
                -ALLOWED_FUNCTIONS: ClassVar = {'inverse_smootherstep': ['lower', 'upper'], 'inverse_smoothstep': ['lower', 'upper'], 'power2_decreasing_exp': ['max', 'alpha'], 'power2_inverse_decreasing': ['max'], 'power2_inverse_power2_decreasing': ['max'], 'smootherstep': ['lower', 'upper'], 'smoothstep': ['lower', 'upper']}[source]
                +ALLOWED_FUNCTIONS: ClassVar = {'inverse_smootherstep': ['lower', 'upper'], 'inverse_smoothstep': ['lower', 'upper'], 'power2_decreasing_exp': ['max', 'alpha'], 'power2_inverse_decreasing': ['max'], 'power2_inverse_power2_decreasing': ['max'], 'smootherstep': ['lower', 'upper'], 'smoothstep': ['lower', 'upper']}[source]

                -inverse_smootherstep(vals)[source]
                +inverse_smootherstep(vals)[source]

                Get the evaluation of the “inverse” smootherstep ratio function: f(x)=1-(6*x^5-15*x^4+10*x^3).

                The values (i.e. “x”), are scaled between the “lower” and “upper” parameters.

                @@ -1695,7 +1692,7 @@

                Submodules
                -inverse_smoothstep(vals)[source]
                +inverse_smoothstep(vals)[source]

                Get the evaluation of the “inverse” smoothstep ratio function: f(x)=1-(3*x^2-2*x^3).

                The values (i.e. “x”), are scaled between the “lower” and “upper” parameters.

                @@ -1710,7 +1707,7 @@

                Submodules
                -power2_decreasing_exp(vals)[source]
                +power2_decreasing_exp(vals)[source]

                Get the evaluation of the ratio function f(x)=exp(-a*x)*(x-1)^2.

                The values (i.e. “x”), are scaled to the “max” parameter. The “a” constant correspond to the “alpha” parameter.

                @@ -1726,7 +1723,7 @@

                Submodules
                -power2_inverse_decreasing(vals)[source]
                +power2_inverse_decreasing(vals)[source]

                Get the evaluation of the ratio function f(x)=(x-1)^2 / x.

                The values (i.e. “x”), are scaled to the “max” parameter.

                @@ -1741,7 +1738,7 @@

                Submodules
                -power2_inverse_power2_decreasing(vals)[source]
                +power2_inverse_power2_decreasing(vals)[source]

                Get the evaluation of the ratio function f(x)=(x-1)^2 / x^2.

                The values (i.e. “x”), are scaled to the “max” parameter.

                @@ -1756,7 +1753,7 @@

                Submodules
                -smootherstep(vals)[source]
                +smootherstep(vals)[source]

                Get the evaluation of the smootherstep ratio function: f(x)=6*x^5-15*x^4+10*x^3.

                The values (i.e. “x”), are scaled between the “lower” and “upper” parameters.

                @@ -1771,7 +1768,7 @@

                Submodules
                -smoothstep(vals)[source]
                +smoothstep(vals)[source]

                Get the evaluation of the smoothstep ratio function: f(x)=3*x^2-2*x^3.

                The values (i.e. “x”), are scaled between the “lower” and “upper” parameters.

                @@ -1792,7 +1789,7 @@

                Submodules
                -class MultiGraphCycle(nodes, edge_indices, validate=True, ordered=None)[source]
                +class MultiGraphCycle(nodes, edge_indices, validate=True, ordered=None)[source]

                Bases: MSONable

                Describe a cycle in a multigraph.

                nodes are the nodes of the cycle and edge_indices are the indices of the edges in the cycle. @@ -1816,7 +1813,7 @@

                Submodules
                -order(raise_on_fail: bool = True)[source]
                +order(raise_on_fail: bool = True)[source]

                Orders the SimpleGraphCycle.

                The ordering is performed such that the first node is the “lowest” one and the second node is the lowest one of the two neighbor nodes of the @@ -1831,7 +1828,7 @@

                Submodules
                -validate(check_strict_ordering=False)[source]
                +validate(check_strict_ordering=False)[source]
                Parameters:

                check_strict_ordering

                @@ -1843,7 +1840,7 @@

                Submodules
                -class SimpleGraphCycle(nodes, validate=True, ordered=None)[source]
                +class SimpleGraphCycle(nodes, validate=True, ordered=None)[source]

                Bases: MSONable

                Describe a cycle in a simple graph (graph without multiple edges).

                Note that the convention used here is the networkx convention for which simple graphs allow @@ -1863,13 +1860,13 @@

                Submodules
                -as_dict() dict[source]
                +as_dict() dict[source]

                MSONable dict.

                -classmethod from_dict(dct: dict, validate: bool = False) Self[source]
                +classmethod from_dict(dct: dict, validate: bool = False) Self[source]

                Serialize from dict.

                Parameters:
                @@ -1883,7 +1880,7 @@

                Submodules
                -classmethod from_edges(edges, edges_are_ordered: bool = True) Self[source]
                +classmethod from_edges(edges, edges_are_ordered: bool = True) Self[source]

                Construct SimpleGraphCycle from a list edges.

                By default, the edges list is supposed to be ordered as it will be much faster to construct the cycle. If edges_are_ordered is set to @@ -1893,7 +1890,7 @@

                Submodules
                -order(raise_on_fail=True)[source]
                +order(raise_on_fail=True)[source]

                Orders the SimpleGraphCycle.

                The ordering is performed such that the first node is the “lowest” one and the second node is the lowest one of the two neighbor nodes of the first node. If @@ -1907,7 +1904,7 @@

                Submodules
                -validate(check_strict_ordering=False)[source]
                +validate(check_strict_ordering=False)[source]
                Parameters:

                check_strict_ordering

                @@ -1919,7 +1916,7 @@

                Submodules
                -get_all_elementary_cycles(graph)[source]
                +get_all_elementary_cycles(graph)[source]
                Parameters:

                graph

                @@ -1929,7 +1926,7 @@

                Submodules
                -get_all_simple_paths_edges(graph, source, target, cutoff=None, data=True)[source]
                +get_all_simple_paths_edges(graph, source, target, cutoff=None, data=True)[source]

                Get all the simple path and edges.

                Parameters:
                @@ -1946,7 +1943,7 @@

                Submodules
                -get_delta(node1, node2, edge_data)[source]
                +get_delta(node1, node2, edge_data)[source]

                Get the delta.

                Parameters:
                @@ -1965,7 +1962,7 @@

                Submodules
                -cosinus_step(xx, edges=None, inverse=False)[source]
                +cosinus_step(xx, edges=None, inverse=False)[source]
                Parameters:
                  @@ -1979,7 +1976,7 @@

                  Submodules
                  -divisors(n)[source]
                  +divisors(n)[source]

                  From a given natural integer, returns the list of divisors in ascending order.

                  Parameters:
                  @@ -1993,7 +1990,7 @@

                  Submodules
                  -get_center_of_arc(p1, p2, radius)[source]
                  +get_center_of_arc(p1, p2, radius)[source]
                  Parameters:
                    @@ -2007,7 +2004,7 @@

                    Submodules
                    -get_linearly_independent_vectors(vectors: list[ArrayLike]) list[np.ndarray][source]
                    +get_linearly_independent_vectors(vectors: list[ArrayLike]) list[np.ndarray][source]
                    Parameters:

                    vectors (list[ArrayLike]) – List of vectors.

                    @@ -2017,7 +2014,7 @@

                    Submodules
                    -normal_cdf_step(xx, mean, scale)[source]
                    +normal_cdf_step(xx, mean, scale)[source]
                    Parameters:
                      @@ -2031,7 +2028,7 @@

                      Submodules
                      -power2_decreasing_exp(xx, edges=None, alpha=1.0)[source]
                      +power2_decreasing_exp(xx, edges=None, alpha=1.0)[source]
                      Parameters:
                        @@ -2045,7 +2042,7 @@

                        Submodules
                        -power2_inverse_decreasing(xx, edges=None, prefactor=None)[source]
                        +power2_inverse_decreasing(xx, edges=None, prefactor=None)[source]
                        Parameters:
                          @@ -2059,7 +2056,7 @@

                          Submodules
                          -power2_inverse_power2_decreasing(xx, edges=None, prefactor=None)[source]
                          +power2_inverse_power2_decreasing(xx, edges=None, prefactor=None)[source]
                          Parameters:
                            @@ -2073,7 +2070,7 @@

                            Submodules
                            -power2_inverse_powern_decreasing(xx, edges=None, prefactor=None, powern=2.0)[source]
                            +power2_inverse_powern_decreasing(xx, edges=None, prefactor=None, powern=2.0)[source]
                            Parameters:
                              @@ -2088,7 +2085,7 @@

                              Submodules
                              -power2_tangent_decreasing(xx, edges=None, prefactor=None)[source]
                              +power2_tangent_decreasing(xx, edges=None, prefactor=None)[source]
                              Parameters:
                                @@ -2102,7 +2099,7 @@

                                Submodules
                                -power3_step(xx, edges=None, inverse=False)[source]
                                +power3_step(xx, edges=None, inverse=False)[source]
                                Parameters:
                                  @@ -2116,7 +2113,7 @@

                                  Submodules
                                  -powern_decreasing(xx, edges=None, nn=2)[source]
                                  +powern_decreasing(xx, edges=None, nn=2)[source]
                                  Parameters:
                                    @@ -2130,7 +2127,7 @@

                                    Submodules
                                    -powern_parts_step(xx, edges=None, inverse=False, nn=2)[source]
                                    +powern_parts_step(xx, edges=None, inverse=False, nn=2)[source]
                                    Parameters:
                                      @@ -2145,7 +2142,7 @@

                                      Submodules
                                      -prime_factors(n: int) list[int][source]
                                      +prime_factors(n: int) list[int][source]

                                      Lists prime factors of a given natural integer, from greatest to smallest.

                                      Parameters:
                                      @@ -2159,7 +2156,7 @@

                                      Submodules
                                      -scale_and_clamp(xx, edge0, edge1, clamp0, clamp1)[source]
                                      +scale_and_clamp(xx, edge0, edge1, clamp0, clamp1)[source]
                                      Parameters:
                                        @@ -2175,7 +2172,7 @@

                                        Submodules
                                        -smootherstep(xx, edges=None, inverse=False)[source]
                                        +smootherstep(xx, edges=None, inverse=False)[source]
                                        Parameters:
                                          @@ -2189,7 +2186,7 @@

                                          Submodules
                                          -smoothstep(xx, edges=None, inverse=False)[source]
                                          +smoothstep(xx, edges=None, inverse=False)[source]
                                          Parameters:
                                            @@ -2207,7 +2204,7 @@

                                            Submodules
                                            -compute_environments(chemenv_configuration)[source]
                                            +compute_environments(chemenv_configuration)[source]

                                            Compute the environments.

                                            Parameters:
                                            @@ -2218,7 +2215,7 @@

                                            Submodules
                                            -draw_cg(vis, site, neighbors, cg=None, perm=None, perfect2local_map=None, show_perfect=False, csm_info=None, symmetry_measure_type='csm_wcs_ctwcc', perfect_radius=0.1, show_distorted=True, faces_color_override=None)[source]
                                            +draw_cg(vis, site, neighbors, cg=None, perm=None, perfect2local_map=None, show_perfect=False, csm_info=None, symmetry_measure_type='csm_wcs_ctwcc', perfect_radius=0.1, show_distorted=True, faces_color_override=None)[source]

                                            Draw cg.

                                            Parameters:
                                            @@ -2242,7 +2239,7 @@

                                            Submodules
                                            -visualize(cg, zoom=None, vis=None, factor=1.0, view_index=True, faces_color_override=None)[source]
                                            +visualize(cg, zoom=None, vis=None, factor=1.0, view_index=True, faces_color_override=None)[source]

                                            Visualizing a coordination geometry :param cg: :param zoom: diff --git a/docs/pymatgen.analysis.diffraction.html b/docs/pymatgen.analysis.diffraction.html index 20879c14733..166accb751d 100644 --- a/docs/pymatgen.analysis.diffraction.html +++ b/docs/pymatgen.analysis.diffraction.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.diffraction package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.diffraction package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -

                                            - 2024.10.27 -
                                            @@ -147,22 +144,22 @@

                                            Submodules
                                            -class AbstractDiffractionPatternCalculator[source]
                                            +class AbstractDiffractionPatternCalculator[source]

                                            Bases: ABC

                                            Abstract base class for computing the diffraction pattern of a crystal.

                                            -SCALED_INTENSITY_TOL = 0.001[source]
                                            +SCALED_INTENSITY_TOL = 0.001[source]
                                            -TWO_THETA_TOL = 1e-05[source]
                                            +TWO_THETA_TOL = 1e-05[source]
                                            -abstract get_pattern(structure: Structure, scaled=True, two_theta_range=(0, 90))[source]
                                            +abstract get_pattern(structure: Structure, scaled=True, two_theta_range=(0, 90))[source]

                                            Calculates the diffraction pattern for a structure.

                                            Parameters:
                                            @@ -185,7 +182,7 @@

                                            Submodules
                                            -get_plot(structure: Structure, two_theta_range: tuple[float, float] = (0, 90), annotate_peaks='compact', ax: plt.Axes = None, with_labels=True, fontsize=16) plt.Axes[source]
                                            +get_plot(structure: Structure, two_theta_range: tuple[float, float] = (0, 90), annotate_peaks='compact', ax: plt.Axes = None, with_labels=True, fontsize=16) plt.Axes[source]

                                            Get the diffraction plot as a matplotlib Axes.

                                            Parameters:
                                            @@ -215,7 +212,7 @@

                                            Submodules
                                            -plot_structures(structures, fontsize=6, **kwargs)[source]
                                            +plot_structures(structures, fontsize=6, **kwargs)[source]

                                            Plot diffraction patterns for multiple structures on the same figure.

                                            Parameters:
                                            @@ -274,7 +271,7 @@

                                            Submodules
                                            -show_plot(structure: Structure, **kwargs)[source]
                                            +show_plot(structure: Structure, **kwargs)[source]

                                            Show the diffraction plot.

                                            Parameters:
                                            @@ -297,7 +294,7 @@

                                            Submodules
                                            -class DiffractionPattern(x, y, hkls, d_hkls)[source]
                                            +class DiffractionPattern(x, y, hkls, d_hkls)[source]

                                            Bases: Spectrum

                                            A representation of a diffraction pattern.

                                            @@ -316,19 +313,19 @@

                                            Submodules
                                            -XLABEL = '$2\\Theta$'[source]
                                            +XLABEL = '$2\\Theta$'[source]

                                            -YLABEL = 'Intensity'[source]
                                            +YLABEL = 'Intensity'[source]

                                            -get_unique_families(hkls)[source]
                                            +get_unique_families(hkls)[source]

                                            Get unique families of Miller indices. Families must be permutations of each other.

                                            @@ -350,7 +347,7 @@

                                            Submodules
                                            -class NDCalculator(wavelength=1.54184, symprec: float = 0, debye_waller_factors=None)[source]
                                            +class NDCalculator(wavelength=1.54184, symprec: float = 0, debye_waller_factors=None)[source]

                                            Bases: AbstractDiffractionPatternCalculator

                                            Computes the powder neutron diffraction pattern of a crystal structure. This code is a slight modification of XRDCalculator in @@ -380,7 +377,7 @@

                                            Submodules
                                            -get_pattern(structure: Structure, scaled=True, two_theta_range=(0, 90))[source]
                                            +get_pattern(structure: Structure, scaled=True, two_theta_range=(0, 90))[source]

                                            Calculates the powder neutron diffraction pattern for a structure.

                                            Parameters:
                                            @@ -412,7 +409,7 @@

                                            Submodules
                                            -class TEMCalculator(symprec: float | None = None, voltage: float = 200, beam_direction: tuple[int, int, int] = (0, 0, 1), camera_length: int = 160, debye_waller_factors: dict[str, float] | None = None, cs: float = 1)[source]
                                            +class TEMCalculator(symprec: float | None = None, voltage: float = 200, beam_direction: tuple[int, int, int] = (0, 0, 1), camera_length: int = 160, debye_waller_factors: dict[str, float] | None = None, cs: float = 1)[source]

                                            Bases: AbstractDiffractionPatternCalculator

                                            Compute the TEM pattern of a crystal structure for multiple Laue zones. Code partially inspired from XRD calculation implementation. X-ray factor to electron factor

                                            @@ -445,7 +442,7 @@

                                            Submodules
                                            -bragg_angles(interplanar_spacings: dict[tuple[int, int, int], float]) dict[tuple[int, int, int], float][source]
                                            +bragg_angles(interplanar_spacings: dict[tuple[int, int, int], float]) dict[tuple[int, int, int], float][source]

                                            Get the Bragg angles for every hkl point passed in (where n = 1).

                                            Parameters:
                                            @@ -462,7 +459,7 @@

                                            Submodules
                                            -cell_intensity(structure: Structure, bragg_angles: dict[Tuple3Ints, float]) dict[Tuple3Ints, float][source]
                                            +cell_intensity(structure: Structure, bragg_angles: dict[Tuple3Ints, float]) dict[Tuple3Ints, float][source]

                                            Calculates cell intensity for each hkl plane. For simplicity’s sake, take I = |F|**2.

                                            Parameters:
                                            @@ -479,7 +476,7 @@

                                            Submodules
                                            -cell_scattering_factors(structure: Structure, bragg_angles: dict[Tuple3Ints, float]) dict[Tuple3Ints, int][source]
                                            +cell_scattering_factors(structure: Structure, bragg_angles: dict[Tuple3Ints, float]) dict[Tuple3Ints, int][source]

                                            Calculates the scattering factor for the whole cell.

                                            Parameters:
                                            @@ -496,7 +493,7 @@

                                            Submodules
                                            -electron_scattering_factors(structure: Structure, bragg_angles: dict[Tuple3Ints, float]) dict[str, dict[Tuple3Ints, float]][source]
                                            +electron_scattering_factors(structure: Structure, bragg_angles: dict[Tuple3Ints, float]) dict[str, dict[Tuple3Ints, float]][source]

                                            Calculates atomic scattering factors for electrons using the Mott-Bethe formula (1st order Born approximation).

                                            Parameters:
                                            @@ -513,7 +510,7 @@

                                            Submodules
                                            -static generate_points(coord_left: int = -10, coord_right: int = 10) ndarray[source]
                                            +static generate_points(coord_left: int = -10, coord_right: int = 10) ndarray[source]

                                            Generate a bunch of 3D points that span a cube.

                                            Parameters:
                                            @@ -533,7 +530,7 @@

                                            Submodules
                                            -get_first_point(structure: Structure, points: list) dict[Tuple3Ints, float][source]
                                            +get_first_point(structure: Structure, points: list) dict[Tuple3Ints, float][source]

                                            Get the first point to be plotted in the 2D DP, corresponding to maximum d/minimum R.

                                            Parameters:
                                            @@ -550,7 +547,7 @@

                                            Submodules
                                            -static get_interplanar_angle(structure: Structure, p1: Tuple3Ints, p2: Tuple3Ints) float[source]
                                            +static get_interplanar_angle(structure: Structure, p1: Tuple3Ints, p2: Tuple3Ints) float[source]

                                            Get the interplanar angle (in degrees) between the normal of two crystal planes. Formulas from International Tables for Crystallography Volume C pp. 2-9.

                                            @@ -569,7 +566,7 @@

                                            Submodules
                                            -get_interplanar_spacings(structure: Structure, points: list[Tuple3Ints] | np.ndarray) dict[Tuple3Ints, float][source]
                                            +get_interplanar_spacings(structure: Structure, points: list[Tuple3Ints] | np.ndarray) dict[Tuple3Ints, float][source]
                                            Parameters:
                                            @@ -2421,6 +2418,7 @@

                                            SubpackagesXAS.edge
                                          • XAS.spectrum_type
                                          • XAS.absorbing_index
                                          • +
                                          • XAS.zero_negative_intensity
                                          • XAS.XLABEL
                                          • XAS.YLABEL
                                          • XAS.stitch()
                                          • @@ -2443,7 +2441,7 @@

                                            Submodules
                                            -class AdsorbateSiteFinder(slab: Slab, selective_dynamics: bool = False, height: float = 0.9, mi_vec: ArrayLike | None = None)[source]
                                            +class AdsorbateSiteFinder(slab: Slab, selective_dynamics: bool = False, height: float = 0.9, mi_vec: ArrayLike | None = None)[source]

                                            Bases: object

                                            This class finds adsorbate sites on slabs and generates adsorbate structures according to user-defined criteria.

                                            @@ -2491,7 +2489,7 @@

                                            Submodules
                                            -add_adsorbate(molecule: Molecule, ads_coord, repeat=None, translate=True, reorient=True)[source]
                                            +add_adsorbate(molecule: Molecule, ads_coord, repeat=None, translate=True, reorient=True)[source]

                                            Add an adsorbate at a particular coordinate. Adsorbate represented by a Molecule object and is translated to (0, 0, 0) if translate is True, or positioned relative to the input adsorbate coordinate if @@ -2514,7 +2512,7 @@

                                            Submodules
                                            -adsorb_both_surfaces(molecule, repeat=None, min_lw=5.0, translate=True, reorient=True, find_args=None)[source]
                                            +adsorb_both_surfaces(molecule, repeat=None, min_lw=5.0, translate=True, reorient=True, find_args=None)[source]

                                            Generate all adsorption structures for a given molecular adsorbate on both surfaces of a slab. This is useful for calculating surface energy where both surfaces need to be equivalent or @@ -2537,7 +2535,7 @@

                                            Submodules
                                            -classmethod assign_selective_dynamics(slab)[source]
                                            +classmethod assign_selective_dynamics(slab)[source]

                                            Helper function to assign selective dynamics site_properties based on surface, subsurface site properties.

                                            @@ -2549,13 +2547,13 @@

                                            Submodules
                                            -assign_site_properties(slab: Slab, height=0.9)[source]
                                            +assign_site_properties(slab: Slab, height=0.9)[source]

                                            Assign site properties.

                                            -classmethod ensemble_center(site_list, indices, cartesian=True)[source]
                                            +classmethod ensemble_center(site_list, indices, cartesian=True)[source]

                                            Find the center of an ensemble of sites selected from a list of sites. Helper method for the find_adsorption_sites algorithm.

                                            @@ -2573,7 +2571,7 @@

                                            Submodules
                                            -find_adsorption_sites(distance=2.0, put_inside=True, symm_reduce=0.01, near_reduce=0.01, positions=('ontop', 'bridge', 'hollow'), no_obtuse_hollow=True)[source]
                                            +find_adsorption_sites(distance=2.0, put_inside=True, symm_reduce=0.01, near_reduce=0.01, positions=('ontop', 'bridge', 'hollow'), no_obtuse_hollow=True)[source]

                                            Find surface sites according to the above algorithm. Returns a list of corresponding Cartesian coordinates.

                                            @@ -2603,7 +2601,7 @@

                                            Submodules
                                            -find_surface_sites_by_height(slab: Slab, height=0.9, xy_tol=0.05)[source]
                                            +find_surface_sites_by_height(slab: Slab, height=0.9, xy_tol=0.05)[source]

                                            Find surface sites by determining which sites are within a threshold value in height from the topmost site in a list of sites.

                                            @@ -2626,7 +2624,7 @@

                                            Submodules
                                            -classmethod from_bulk_and_miller(structure, miller_index, min_slab_size=8.0, min_vacuum_size=10.0, max_normal_search=None, center_slab=True, selective_dynamics=False, undercoord_threshold=0.09) Self[source]
                                            +classmethod from_bulk_and_miller(structure, miller_index, min_slab_size=8.0, min_vacuum_size=10.0, max_normal_search=None, center_slab=True, selective_dynamics=False, undercoord_threshold=0.09) Self[source]

                                            Construct the adsorbate site finder from a bulk structure and a miller index, which allows the surface sites to be determined from the difference in bulk and slab coordination, as @@ -2654,7 +2652,7 @@

                                            Submodules
                                            -generate_adsorption_structures(molecule, repeat=None, min_lw=5.0, translate=True, reorient=True, find_args=None)[source]
                                            +generate_adsorption_structures(molecule, repeat=None, min_lw=5.0, translate=True, reorient=True, find_args=None)[source]

                                            Generate all adsorption structures for a given molecular adsorbate. Can take repeat argument or minimum length/width of precursor slab as an input.

                                            @@ -2678,7 +2676,7 @@

                                            Submodules
                                            -generate_substitution_structures(atom, target_species=None, sub_both_sides=False, range_tol=0.01, dist_from_surf=0)[source]
                                            +generate_substitution_structures(atom, target_species=None, sub_both_sides=False, range_tol=0.01, dist_from_surf=0)[source]

                                            Perform substitution-type doping on the surface and returns all possible configurations where one dopant is substituted per surface. Can substitute one surface or both.

                                            @@ -2700,7 +2698,7 @@

                                            Submodules
                                            -get_extended_surface_mesh(repeat=(5, 5, 1))[source]
                                            +get_extended_surface_mesh(repeat=(5, 5, 1))[source]

                                            Get an extended surface mesh for to use for adsorption site finding by constructing supercell of surface sites.

                                            @@ -2712,7 +2710,7 @@

                                            Submodules
                                            -near_reduce(coords_set, threshold=0.0001)[source]
                                            +near_reduce(coords_set, threshold=0.0001)[source]

                                            Prune coordinate set for coordinates that are within threshold.

                                            Parameters:
                                            @@ -2726,19 +2724,19 @@

                                            Submodules
                                            -subsurface_sites()[source]
                                            +subsurface_sites()[source]

                                            Convenience method to return list of subsurface sites.

                                            -property surface_sites[source]
                                            +property surface_sites[source]

                                            Convenience method to return a list of surface sites.

                                            -symm_reduce(coords_set, threshold=1e-06)[source]
                                            +symm_reduce(coords_set, threshold=1e-06)[source]

                                            Reduce the set of adsorbate sites by finding removing symmetrically equivalent duplicates.

                                            @@ -2756,20 +2754,20 @@

                                            Submodules
                                            -get_mi_vec(slab)[source]
                                            +get_mi_vec(slab)[source]

                                            Convenience function which returns the unit vector aligned with the miller index.

                                            -get_rot(slab: Slab) SymmOp[source]
                                            +get_rot(slab: Slab) SymmOp[source]

                                            Get the transformation to rotate the z axis into the miller index.

                                            -plot_slab(slab: Slab, ax: plt.Axes, scale=0.8, repeat=5, window=1.5, draw_unit_cell=True, decay=0.2, adsorption_sites=True, inverse=False)[source]
                                            +plot_slab(slab: Slab, ax: plt.Axes, scale=0.8, repeat=5, window=1.5, draw_unit_cell=True, decay=0.2, adsorption_sites=True, inverse=False)[source]

                                            Help visualize the slab in a 2-D plot, for convenient viewing of output of AdsorbateSiteFinder.

                                            Parameters:
                                            @@ -2790,13 +2788,13 @@

                                            Submodules
                                            -put_coord_inside(lattice, cart_coordinate)[source]
                                            +put_coord_inside(lattice, cart_coordinate)[source]

                                            Convert a Cartesian coordinate such that it is inside the unit cell.

                                            -reorient_z(structure)[source]
                                            +reorient_z(structure)[source]

                                            Reorient a structure such that the z axis is concurrent with the normal to the A-B plane.

                                            @@ -2807,14 +2805,14 @@

                                            Submodules
                                            -class BondDissociationEnergies(molecule_entry: dict[str, str | dict[str, str | int]], fragment_entries: list[dict[str, str | dict[str, str | int]]], allow_additional_charge_separation: bool = False, multibreak: bool = False)[source]
                                            +class BondDissociationEnergies(molecule_entry: dict[str, str | dict[str, str | int]], fragment_entries: list[dict[str, str | dict[str, str | int]]], allow_additional_charge_separation: bool = False, multibreak: bool = False)[source]

                                            Bases: MSONable

                                            Standard constructor for bond dissociation energies. All bonds in the principle molecule are looped through and their dissociation energies are calculated given the energies of the resulting fragments, or, in the case of a ring bond, from the energy of the molecule obtained from breaking the bond and opening the ring. This class should only be called after the energies of the optimized principle molecule and all relevant optimized fragments have been determined, either from quantum -chemistry or elsewhere. It was written to provide the analysis after running an Atomate fragmentation +chemistry or elsewhere. It was written to provide the analysis after running an atomate fragmentation workflow.

                                            The provided entries must have the following keys: formula_pretty, initial_molecule, final_molecule. If a PCM is present, all entries should also have a pcm_dielectric key.

                                            @@ -2832,7 +2830,7 @@

                                            Submodules
                                            -build_new_entry(frags: list, bonds: list) list[source]
                                            +build_new_entry(frags: list, bonds: list) list[source]

                                            Build a new entry for bond dissociation that will be returned to the user.

                                            Parameters:
                                            @@ -2852,7 +2850,7 @@

                                            Submodules
                                            -filter_fragment_entries(fragment_entries: list) None[source]
                                            +filter_fragment_entries(fragment_entries: list) None[source]

                                            Filter the fragment entries.

                                            Parameters:
                                            @@ -2863,7 +2861,7 @@

                                            Submodules
                                            -fragment_and_process(bonds)[source]
                                            +fragment_and_process(bonds)[source]

                                            Fragment and process bonds.

                                            Parameters:
                                            @@ -2874,7 +2872,7 @@

                                            Submodules
                                            -search_fragment_entries(frag) list[source]
                                            +search_fragment_entries(frag) list[source]

                                            Search all fragment entries for those isomorphic to the given fragment. We distinguish between entries where both initial and final MoleculeGraphs are isomorphic to the given fragment (entries) vs those where only the initial MoleculeGraph is isomorphic to the given @@ -2894,7 +2892,7 @@

                                            Submodules
                                            -class BVAnalyzer(symm_tol=0.1, max_radius=4, max_permutations=100000, distance_scale_factor=1.015, charge_neutrality_tolerance=1e-05, forbidden_species=None)[source]
                                            +class BVAnalyzer(symm_tol=0.1, max_radius=4, max_permutations=100000, distance_scale_factor=1.015, charge_neutrality_tolerance=1e-05, forbidden_species=None)[source]

                                            Bases: object

                                            This class implements a maximum a posteriori (MAP) estimation method to determine oxidation states in a structure. The algorithm is as follows: @@ -2934,12 +2932,12 @@

                                            Submodules
                                            -CHARGE_NEUTRALITY_TOLERANCE = 1e-05[source]
                                            +CHARGE_NEUTRALITY_TOLERANCE = 1e-05[source]

                                            -get_oxi_state_decorated_structure(structure: Structure) Structure[source]
                                            +get_oxi_state_decorated_structure(structure: Structure) Structure[source]

                                            Get an oxidation state decorated structure. This currently works only for ordered structures only.

                                            @@ -2960,7 +2958,7 @@

                                            Submodules
                                            -get_valences(structure: Structure)[source]
                                            +get_valences(structure: Structure)[source]

                                            Get a list of valences for each site in the structure.

                                            Parameters:
                                            @@ -2982,7 +2980,7 @@

                                            Submodules
                                            -add_oxidation_state_by_site_fraction(structure: Structure, oxidation_states: list[list[int]]) Structure[source]
                                            +add_oxidation_state_by_site_fraction(structure: Structure, oxidation_states: list[list[int]]) Structure[source]

                                            Add oxidation states to a structure by fractional site.

                                            Parameters:
                                            @@ -2995,7 +2993,7 @@

                                            Submodules
                                            -calculate_bv_sum(site, nn_list, scale_factor=1.0)[source]
                                            +calculate_bv_sum(site, nn_list, scale_factor=1.0)[source]

                                            Calculate the BV sum of a site.

                                            Parameters:
                                            @@ -3013,7 +3011,7 @@

                                            Submodules
                                            -calculate_bv_sum_unordered(site, nn_list, scale_factor=1)[source]
                                            +calculate_bv_sum_unordered(site, nn_list, scale_factor=1)[source]

                                            Calculate the BV sum of a site for unordered structures.

                                            Parameters:
                                            @@ -3031,7 +3029,7 @@

                                            Submodules
                                            -get_z_ordered_elmap(comp)[source]
                                            +get_z_ordered_elmap(comp)[source]

                                            Arbitrary ordered element map on the elements/species of a composition of a given site in an unordered structure. Returns a list of tuples ( element_or_specie: occupation) in the arbitrary order.

                                            @@ -3067,7 +3065,7 @@

                                            Submodules
                                            -class ChemicalPotentialDiagram(entries: list[PDEntry], limits: dict[Element, tuple[float, float]] | None = None, default_min_limit: float = -50.0, formal_chempots: bool = True)[source]
                                            +class ChemicalPotentialDiagram(entries: list[PDEntry], limits: dict[Element, tuple[float, float]] | None = None, default_min_limit: float = -50.0, formal_chempots: bool = True)[source]

                                            Bases: MSONable

                                            The chemical potential diagram is the mathematical dual to the compositional phase diagram. To create the diagram, convex minimization is @@ -3105,37 +3103,37 @@

                                            Submodules
                                            -property border_hyperplanes: ndarray[source]
                                            +property border_hyperplanes: ndarray[source]

                                            Bordering hyperplanes.

                                            -property chemical_system: str[source]
                                            +property chemical_system: str[source]

                                            The chemical system (A-B-C-…) of diagram object.

                                            -property domains: dict[str, ndarray][source]
                                            +property domains: dict[str, ndarray][source]

                                            Mapping of formulas to array of domain boundary points.

                                            -property el_refs: dict[Element, PDEntry][source]
                                            +property el_refs: dict[Element, PDEntry][source]

                                            A dictionary of elements and reference entries.

                                            -property entry_dict: dict[str, ComputedEntry][source]
                                            +property entry_dict: dict[str, ComputedEntry][source]

                                            Mapping between reduced formula and ComputedEntry.

                                            -get_plot(elements: list[Element | str] | None = None, label_stable: bool | None = True, formulas_to_draw: list[str] | None = None, draw_formula_meshes: bool | None = True, draw_formula_lines: bool | None = True, formula_colors: list[str] = ['rgb(27,158,119)', 'rgb(217,95,2)', 'rgb(117,112,179)', 'rgb(231,41,138)', 'rgb(102,166,30)', 'rgb(230,171,2)', 'rgb(166,118,29)', 'rgb(102,102,102)'], element_padding: float | None = 1.0) Figure[source]
                                            +get_plot(elements: list[Element | str] | None = None, label_stable: bool | None = True, formulas_to_draw: list[str] | None = None, draw_formula_meshes: bool | None = True, draw_formula_lines: bool | None = True, formula_colors: list[str] = ['rgb(27,158,119)', 'rgb(217,95,2)', 'rgb(117,112,179)', 'rgb(231,41,138)', 'rgb(102,166,30)', 'rgb(230,171,2)', 'rgb(166,118,29)', 'rgb(102,102,102)'], element_padding: float | None = 1.0) Figure[source]

                                            Plot the 2-dimensional or 3-dimensional chemical potential diagram using an interactive Plotly interface.

                                            Elemental axes can be specified; if none provided, will automatically default @@ -3174,19 +3172,19 @@

                                            Submodules
                                            -property hyperplane_entries: list[PDEntry][source]
                                            +property hyperplane_entries: list[PDEntry][source]

                                            List of entries corresponding to hyperplanes.

                                            -property hyperplanes: ndarray[source]
                                            +property hyperplanes: ndarray[source]

                                            Array of hyperplane data.

                                            -property lims: ndarray[source]
                                            +property lims: ndarray[source]

                                            Array of limits used in constructing hyperplanes.

                                            @@ -3194,7 +3192,7 @@

                                            Submodules
                                            -get_2d_orthonormal_vector(line_pts: ndarray) ndarray[source]
                                            +get_2d_orthonormal_vector(line_pts: ndarray) ndarray[source]

                                            Calculates a vector that is orthonormal to a line given by a set of points. Used for determining the location of an annotation on a 2-d chemical potential diagram.

                                            @@ -3213,7 +3211,7 @@

                                            Submodules
                                            -get_centroid_2d(vertices: ndarray) ndarray[source]
                                            +get_centroid_2d(vertices: ndarray) ndarray[source]

                                            A bare-bones implementation of the formula for calculating the centroid of a 2D polygon. Useful for calculating the location of an annotation on a chemical potential domain within a 3D chemical potential diagram.

                                            @@ -3234,7 +3232,7 @@

                                            Submodules
                                            -simple_pca(data: ndarray, k: int = 2) tuple[ndarray, ndarray, ndarray][source]
                                            +simple_pca(data: ndarray, k: int = 2) tuple[ndarray, ndarray, ndarray][source]

                                            A bare-bones implementation of principal component analysis (PCA) used in the ChemicalPotentialDiagram class for plotting.

                                            @@ -3263,7 +3261,7 @@

                                            Submodules
                                            -class CostAnalyzer(costdb: CostDB)[source]
                                            +class CostAnalyzer(costdb: CostDB)[source]

                                            Bases: object

                                            Given a CostDB, figures out the minimum cost solutions via convex hull.

                                            @@ -3273,7 +3271,7 @@

                                            Submodules
                                            -get_cost_per_kg(comp)[source]
                                            +get_cost_per_kg(comp)[source]

                                            Get best estimate of minimum cost/kg based on known data.

                                            Parameters:
                                            @@ -3290,7 +3288,7 @@

                                            Submodules
                                            -get_cost_per_mol(comp: CompositionLike) float[source]
                                            +get_cost_per_mol(comp: CompositionLike) float[source]

                                            Get best estimate of minimum cost/mol based on known data.

                                            Parameters:
                                            @@ -3307,7 +3305,7 @@

                                            Submodules
                                            -get_lowest_decomposition(composition)[source]
                                            +get_lowest_decomposition(composition)[source]

                                            Get the decomposition leading to lowest cost.

                                            Parameters:
                                            @@ -3326,13 +3324,13 @@

                                            Submodules
                                            -class CostDB[source]
                                            +class CostDB[source]

                                            Bases: ABC

                                            Abstract class for representing a Cost database. Can be extended, e.g. for file-based or REST-based databases.

                                            -abstract get_entries(chemsys)[source]
                                            +abstract get_entries(chemsys)[source]

                                            For a given chemical system, return an array of CostEntries.

                                            Parameters:
                                            @@ -3348,7 +3346,7 @@

                                            Submodules
                                            -class CostDBCSV(filename)[source]
                                            +class CostDBCSV(filename)[source]

                                            Bases: CostDB

                                            Read a CSV file to get costs. Format is formula,cost_per_kg,name,BibTeX.

                                            @@ -3358,7 +3356,7 @@

                                            Submodules
                                            -get_entries(chemsys)[source]
                                            +get_entries(chemsys)[source]

                                            For a given chemical system, return an array of CostEntries.

                                            Parameters:
                                            @@ -3374,7 +3372,7 @@

                                            Submodules
                                            -class CostEntry(composition, cost, name, reference)[source]
                                            +class CostEntry(composition, cost, name, reference)[source]

                                            Bases: PDEntry

                                            Extends PDEntry to include a BibTeX reference and include language about cost.

                                            @@ -3418,7 +3416,7 @@

                                            Submodules
                                            -calculate_dimensionality_of_site(bonded_structure, site_index, inc_vertices=False)[source]
                                            +calculate_dimensionality_of_site(bonded_structure, site_index, inc_vertices=False)[source]

                                            Calculate the dimensionality of the component containing the given site.

                                            Implements directly the modified breadth-first-search algorithm described in Algorithm 1 of:

                                            @@ -3453,7 +3451,7 @@

                                            Submodules
                                            -find_clusters(struct, connected_matrix)[source]
                                            +find_clusters(struct, connected_matrix)[source]

                                            Find bonded clusters of atoms in the structure with periodic boundary conditions.

                                            If there are atoms that are not bonded to anything, returns [0,1,0]. (For @@ -3482,7 +3480,7 @@

                                            Submodules
                                            -find_connected_atoms(struct, tolerance=0.45, ldict=None)[source]
                                            +find_connected_atoms(struct, tolerance=0.45, ldict=None)[source]

                                            Find bonded atoms and returns a adjacency matrix of bonded atoms.

                                            Author: “Gowoon Cheon” Email: “gcheon@stanford.edu

                                            @@ -3514,7 +3512,7 @@

                                            Submodules
                                            -get_dimensionality_cheon(structure_raw, tolerance=0.45, ldict=None, standardize=True, larger_cell=False)[source]
                                            +get_dimensionality_cheon(structure_raw, tolerance=0.45, ldict=None, standardize=True, larger_cell=False)[source]

                                            Algorithm for finding the dimensions of connected subunits in a structure. This method finds the dimensionality of the material even when the material is not layered along low-index planes, or does not have flat @@ -3560,7 +3558,7 @@

                                            Submodules
                                            -get_dimensionality_gorai(structure, max_hkl=2, el_radius_updates=None, min_slab_size=5, min_vacuum_size=5, standardize=True, bonds=None)[source]
                                            +get_dimensionality_gorai(structure, max_hkl=2, el_radius_updates=None, min_slab_size=5, min_vacuum_size=5, standardize=True, bonds=None)[source]

                                            This method returns whether a structure is 3D, 2D (layered), or 1D (linear chains or molecules) according to the algorithm published in Gorai, P., Toberer, E. & Stevanovic, V. Computational Identification of Promising @@ -3603,7 +3601,7 @@

                                            Submodules
                                            -get_dimensionality_larsen(bonded_structure)[source]
                                            +get_dimensionality_larsen(bonded_structure)[source]

                                            Gets the dimensionality of a bonded structure.

                                            The dimensionality of the structure is the highest dimensionality of all structure components. This method is very robust and can handle @@ -3635,7 +3633,7 @@

                                            Submodules
                                            -get_structure_components(bonded_structure, inc_orientation=False, inc_site_ids=False, inc_molecule_graph=False)[source]
                                            +get_structure_components(bonded_structure, inc_orientation=False, inc_site_ids=False, inc_molecule_graph=False)[source]

                                            Gets information on the components in a bonded structure.

                                            Correctly determines the dimensionality of all structures, regardless of structure type or improper connections due to periodic boundary conditions.

                                            @@ -3705,7 +3703,7 @@

                                            Submodules
                                            -zero_d_graph_to_molecule_graph(bonded_structure, graph)[source]
                                            +zero_d_graph_to_molecule_graph(bonded_structure, graph)[source]

                                            Converts a zero-dimensional networkx Graph object into a MoleculeGraph.

                                            Implements a similar breadth-first search to that in calculate_dimensionality_of_site().

                                            @@ -3734,7 +3732,7 @@

                                            Submodules
                                            -get_warren_cowley_parameters(structure: Structure, r: float, dr: float) dict[tuple, float][source]
                                            +get_warren_cowley_parameters(structure: Structure, r: float, dr: float) dict[tuple, float][source]

                                            Warren-Crowley parameters.

                                            Parameters:
                                            @@ -3761,12 +3759,12 @@

                                            Submodules
                                            -class EnergyModel[source]
                                            +class EnergyModel[source]

                                            Bases: MSONable, ABC

                                            Abstract structure filter class.

                                            -classmethod from_dict(dct: dict) Self[source]
                                            +classmethod from_dict(dct: dict) Self[source]
                                            Parameters:

                                            dct (dict) – Dict representation.

                                            @@ -3779,7 +3777,7 @@

                                            Submodules
                                            -abstract get_energy(structure) float[source]
                                            +abstract get_energy(structure) float[source]
                                            Parameters:

                                            structure – Structure.

                                            @@ -3794,7 +3792,7 @@

                                            Submodules
                                            -class EwaldElectrostaticModel(real_space_cut=None, recip_space_cut=None, eta=None, acc_factor=8.0)[source]
                                            +class EwaldElectrostaticModel(real_space_cut=None, recip_space_cut=None, eta=None, acc_factor=8.0)[source]

                                            Bases: EnergyModel

                                            Wrapper around EwaldSum to calculate the electrostatic energy.

                                            Initialize the model. Args have the same definitions as in @@ -3818,13 +3816,13 @@

                                            Submodules
                                            -as_dict()[source]
                                            +as_dict()[source]

                                            MSONable dict.

                                            -get_energy(structure: Structure)[source]
                                            +get_energy(structure: Structure)[source]
                                            Parameters:

                                            structure – Structure.

                                            @@ -3839,7 +3837,7 @@

                                            Submodules
                                            -class IsingModel(j, max_radius)[source]
                                            +class IsingModel(j, max_radius)[source]

                                            Bases: EnergyModel

                                            A very simple Ising model, with r^2 decay.

                                            @@ -3852,13 +3850,13 @@

                                            Submodules
                                            -as_dict()[source]
                                            +as_dict()[source]

                                            MSONable dict.

                                            -get_energy(structure: Structure)[source]
                                            +get_energy(structure: Structure)[source]
                                            Parameters:

                                            structure – Structure.

                                            @@ -3873,20 +3871,20 @@

                                            Submodules
                                            -class NsitesModel[source]
                                            +class NsitesModel[source]

                                            Bases: EnergyModel

                                            Sets the energy to the number of sites. More sites => higher “energy”. Used to rank structures from smallest number of sites to largest number of sites after enumeration.

                                            -as_dict()[source]
                                            +as_dict()[source]

                                            MSONable dict.

                                            -get_energy(structure: Structure)[source]
                                            +get_energy(structure: Structure)[source]
                                            Parameters:

                                            structure – Structure.

                                            @@ -3901,7 +3899,7 @@

                                            Submodules
                                            -class SymmetryModel(symprec: float = 0.1, angle_tolerance=5)[source]
                                            +class SymmetryModel(symprec: float = 0.1, angle_tolerance=5)[source]

                                            Bases: EnergyModel

                                            Sets the energy to the negative of the spacegroup number. Higher symmetry => lower “energy”.

                                            @@ -3916,13 +3914,13 @@

                                            Submodules
                                            -as_dict()[source]
                                            +as_dict()[source]

                                            MSONable dict.

                                            -get_energy(structure: Structure)[source]
                                            +get_energy(structure: Structure)[source]
                                            Parameters:

                                            structure – Structure.

                                            @@ -3943,7 +3941,7 @@

                                            Submodules
                                            -class Birch(volumes, energies)[source]
                                            +class Birch(volumes, energies)[source]

                                            Bases: EOSBase

                                            Birch EOS.

                                            @@ -3958,7 +3956,7 @@

                                            Submodules
                                            -class BirchMurnaghan(volumes, energies)[source]
                                            +class BirchMurnaghan(volumes, energies)[source]

                                            Bases: EOSBase

                                            BirchMurnaghan EOS.

                                            @@ -3973,7 +3971,7 @@

                                            Submodules
                                            -class DeltaFactor(volumes, energies)[source]
                                            +class DeltaFactor(volumes, energies)[source]

                                            Bases: PolynomialEOS

                                            Fitting a polynomial EOS using delta factor.

                                            @@ -3986,7 +3984,7 @@

                                            Submodules
                                            -fit(order=3)[source]
                                            +fit(order=3)[source]

                                            Overridden since this eos works with volume**(2/3) instead of volume.

                                            @@ -3994,7 +3992,7 @@

                                            Submodules
                                            -class EOS(eos_name='murnaghan')[source]
                                            +class EOS(eos_name='murnaghan')[source]

                                            Bases: object

                                            Convenient wrapper. Retained in its original state to ensure backward compatibility.

                                            @@ -4025,12 +4023,12 @@

                                            Submodules
                                            -MODELS: ClassVar = {'birch': <class 'pymatgen.analysis.eos.Birch'>, 'birch_murnaghan': <class 'pymatgen.analysis.eos.BirchMurnaghan'>, 'deltafactor': <class 'pymatgen.analysis.eos.DeltaFactor'>, 'murnaghan': <class 'pymatgen.analysis.eos.Murnaghan'>, 'numerical_eos': <class 'pymatgen.analysis.eos.NumericalEOS'>, 'pourier_tarantola': <class 'pymatgen.analysis.eos.PourierTarantola'>, 'vinet': <class 'pymatgen.analysis.eos.Vinet'>}[source]
                                            +MODELS: ClassVar = {'birch': <class 'pymatgen.analysis.eos.Birch'>, 'birch_murnaghan': <class 'pymatgen.analysis.eos.BirchMurnaghan'>, 'deltafactor': <class 'pymatgen.analysis.eos.DeltaFactor'>, 'murnaghan': <class 'pymatgen.analysis.eos.Murnaghan'>, 'numerical_eos': <class 'pymatgen.analysis.eos.NumericalEOS'>, 'pourier_tarantola': <class 'pymatgen.analysis.eos.PourierTarantola'>, 'vinet': <class 'pymatgen.analysis.eos.Vinet'>}[source]

                                            -fit(volumes, energies)[source]
                                            +fit(volumes, energies)[source]

                                            Fit energies as function of volumes.

                                            Parameters:
                                            @@ -4052,7 +4050,7 @@

                                            Submodules
                                            -class EOSBase(volumes, energies)[source]
                                            +class EOSBase(volumes, energies)[source]

                                            Bases: ABC

                                            Abstract class that must be subclassed by all equation of state implementations.

                                            @@ -4066,38 +4064,38 @@

                                            Submodules
                                            -property b0: float[source]
                                            +property b0: float[source]

                                            The bulk modulus in units of energy/unit of volume^3.

                                            -property b0_GPa: FloatWithUnit[source]
                                            +property b0_GPa: FloatWithUnit[source]

                                            The bulk modulus in GPa. This assumes the energy and volumes are in eV and Ang^3.

                                            -property b1[source]
                                            +property b1[source]

                                            The derivative of bulk modulus w.r.t. pressure(dimensionless).

                                            -property e0: float[source]
                                            +property e0: float[source]

                                            The min energy.

                                            -fit()[source]
                                            +fit()[source]

                                            Do the fitting. Does least square fitting. If you want to use custom fitting, must override this.

                                            -func(volume)[source]
                                            +func(volume)[source]

                                            The equation of state function with the parameters other than volume set to the ones obtained from fitting.

                                            @@ -4112,7 +4110,7 @@

                                            Submodules
                                            -plot(width=8, height=None, ax: plt.Axes = None, dpi=None, **kwargs)[source]
                                            +plot(width=8, height=None, ax: plt.Axes = None, dpi=None, **kwargs)[source]

                                            Plot the equation of state.

                                            Parameters:
                                            @@ -4138,7 +4136,7 @@

                                            Submodules
                                            -plot_ax(ax: plt.Axes = None, fontsize=12, **kwargs)[source]
                                            +plot_ax(ax: plt.Axes = None, fontsize=12, **kwargs)[source]

                                            Plot the equation of state on axis ax.

                                            Parameters:
                                            @@ -4198,13 +4196,13 @@

                                            Submodules
                                            -property results[source]
                                            +property results[source]

                                            A summary dict.

                                            -property v0[source]
                                            +property v0[source]

                                            The minimum or the reference volume in Ang^3.

                                            @@ -4212,14 +4210,14 @@

                                            Submodules
                                            -exception EOSError[source]
                                            +exception EOSError[source]

                                            Bases: Exception

                                            Error class for EOS fitting.

                                            -class Murnaghan(volumes, energies)[source]
                                            +class Murnaghan(volumes, energies)[source]

                                            Bases: EOSBase

                                            Murnaghan EOS.

                                            @@ -4234,7 +4232,7 @@

                                            Submodules
                                            -class NumericalEOS(volumes, energies)[source]
                                            +class NumericalEOS(volumes, energies)[source]

                                            Bases: PolynomialEOS

                                            A numerical EOS.

                                            @@ -4247,7 +4245,7 @@

                                            Submodules
                                            -fit(min_ndata_factor=3, max_poly_order_factor=5, min_poly_order=2)[source]
                                            +fit(min_ndata_factor=3, max_poly_order_factor=5, min_poly_order=2)[source]

                                            Fit the input data to the ‘numerical eos’, the equation of state employed in the quasiharmonic Debye model described in the paper: 10.1103/PhysRevB.90.174107.

                                            @@ -4273,7 +4271,7 @@

                                            Submodules
                                            -class PolynomialEOS(volumes, energies)[source]
                                            +class PolynomialEOS(volumes, energies)[source]

                                            Bases: EOSBase

                                            Derives from EOSBase. Polynomial based equations of states must subclass this.

                                            @@ -4287,7 +4285,7 @@

                                            Submodules
                                            -fit(order)[source]
                                            +fit(order)[source]

                                            Do polynomial fitting and set the parameters. Uses numpy polyfit.

                                            Parameters:
                                            @@ -4300,7 +4298,7 @@

                                            Submodules
                                            -class PourierTarantola(volumes, energies)[source]
                                            +class PourierTarantola(volumes, energies)[source]

                                            Bases: EOSBase

                                            Pourier-Tarantola EOS.

                                            @@ -4315,7 +4313,7 @@

                                            Submodules
                                            -class Vinet(volumes, energies)[source]
                                            +class Vinet(volumes, energies)[source]

                                            Bases: EOSBase

                                            Vinet EOS.

                                            @@ -4334,7 +4332,7 @@

                                            Submodules
                                            -class EwaldMinimizer(matrix, m_list, num_to_return=1, algo=0)[source]
                                            +class EwaldMinimizer(matrix, m_list, num_to_return=1, algo=0)[source]

                                            Bases: object

                                            This class determines the manipulations that will minimize an Ewald matrix, given a list of possible manipulations. This class does not perform the @@ -4369,34 +4367,34 @@

                                            Submodules
                                            -ALGO_BEST_FIRST = 2[source]
                                            +ALGO_BEST_FIRST = 2[source]

                                            -ALGO_COMPLETE = 1[source]
                                            +ALGO_COMPLETE = 1[source]
                                            -ALGO_FAST = 0[source]
                                            +ALGO_FAST = 0[source]
                                            -ALGO_TIME_LIMIT = 3[source]
                                            +ALGO_TIME_LIMIT = 3[source]
                                            -add_m_list(matrix_sum, m_list)[source]
                                            +add_m_list(matrix_sum, m_list)[source]

                                            Add an m_list to the output_lists and updates the current minimum if the list is full.

                                            -best_case(matrix, m_list, indices_left)[source]
                                            +best_case(matrix, m_list, indices_left)[source]

                                            Compute a best case given a matrix and manipulation list.

                                            Parameters:
                                            @@ -4414,33 +4412,33 @@

                                            Submodules
                                            -property best_m_list[source]
                                            +property best_m_list[source]

                                            The best manipulation list found.

                                            -classmethod get_next_index(matrix, manipulation, indices_left)[source]
                                            +classmethod get_next_index(matrix, manipulation, indices_left)[source]

                                            Get an index that should have the most negative effect on the matrix sum.

                                            -minimize_matrix()[source]
                                            +minimize_matrix()[source]

                                            Get the permutations that produce the lowest Ewald sum calls recursive function to iterate through permutations.

                                            -property minimized_sum[source]
                                            +property minimized_sum[source]

                                            The minimized Ewald sum.

                                            -property output_lists[source]
                                            +property output_lists[source]

                                            Output lists.

                                            @@ -4448,7 +4446,7 @@

                                            Submodules
                                            -class EwaldSummation(structure, real_space_cut=None, recip_space_cut=None, eta=None, acc_factor=12.0, w=0.7071067811865475, compute_forces=False)[source]
                                            +class EwaldSummation(structure, real_space_cut=None, recip_space_cut=None, eta=None, acc_factor=12.0, w=0.7071067811865475, compute_forces=False)[source]

                                            Bases: MSONable

                                            Calculates the electrostatic energy of a periodic array of charges using the Ewald technique.

                                            @@ -4496,12 +4494,12 @@

                                            Submodules
                                            -CONV_FACT = 14.39964547842567[source]
                                            +CONV_FACT = 14.39964547842567[source]

                                            -as_dict(verbosity: int = 0) dict[source]
                                            +as_dict(verbosity: int = 0) dict[source]

                                            JSON-serialization dict representation of EwaldSummation.

                                            Parameters:
                                            @@ -4513,13 +4511,13 @@

                                            Submodules
                                            -compute_partial_energy(removed_indices)[source]
                                            +compute_partial_energy(removed_indices)[source]

                                            Get total Ewald energy for certain sites being removed, i.e. zeroed out.

                                            -compute_sub_structure(sub_structure, tol: float = 0.001)[source]
                                            +compute_sub_structure(sub_structure, tol: float = 0.001)[source]

                                            Get total Ewald energy for an sub structure in the same lattice. The sub_structure must be a subset of the original structure, with possible different charges.

                                            @@ -4538,19 +4536,19 @@

                                            Submodules
                                            -property eta[source]
                                            +property eta[source]

                                            Eta value used in Ewald summation.

                                            -property forces[source]
                                            +property forces[source]

                                            The forces on each site as a Nx3 matrix. Each row corresponds to a site.

                                            -classmethod from_dict(dct: dict[str, Any], fmt: str | None = None, **kwargs) Self[source]
                                            +classmethod from_dict(dct: dict[str, Any], fmt: str | None = None, **kwargs) Self[source]

                                            Create an EwaldSummation instance from JSON-serialized dictionary.

                                            Parameters:
                                            @@ -4570,7 +4568,7 @@

                                            Submodules
                                            -get_site_energy(site_index)[source]
                                            +get_site_energy(site_index)[source]

                                            Compute the energy for a single site in the structure.

                                            Parameters:
                                            @@ -4587,39 +4585,39 @@

                                            Submodules
                                            -property point_energy[source]
                                            +property point_energy[source]

                                            The point energy.

                                            -property point_energy_matrix[source]
                                            +property point_energy_matrix[source]

                                            The point space matrix. A diagonal matrix with the point terms for each site in the diagonal elements.

                                            -property real_space_energy[source]
                                            +property real_space_energy[source]

                                            The real space energy.

                                            -property real_space_energy_matrix[source]
                                            +property real_space_energy_matrix[source]

                                            The real space energy matrix. Each matrix element (i, j) corresponds to the interaction energy between site i and site j in real space.

                                            -property reciprocal_space_energy[source]
                                            +property reciprocal_space_energy[source]

                                            The reciprocal space energy.

                                            -property reciprocal_space_energy_matrix[source]
                                            +property reciprocal_space_energy_matrix[source]

                                            The reciprocal space energy matrix. Each matrix element (i, j) corresponds to the interaction energy between site i and site j in reciprocal space.

                                            @@ -4627,13 +4625,13 @@

                                            Submodules
                                            -property total_energy[source]
                                            +property total_energy[source]

                                            The total energy.

                                            -property total_energy_matrix[source]
                                            +property total_energy_matrix[source]

                                            The total energy matrix. Each matrix element (i, j) corresponds to the total interaction energy between site i and site j.

                                            Note that this does not include the charged-cell energy, which is only important @@ -4644,7 +4642,7 @@

                                            Submodules
                                            -compute_average_oxidation_state(site)[source]
                                            +compute_average_oxidation_state(site)[source]

                                            Calculates the average oxidation state of a site.

                                            Parameters:
                                            @@ -4662,12 +4660,12 @@

                                            Submodules
                                            -class ExcitationSpectrum(x, y)[source]
                                            +class ExcitationSpectrum(x, y)[source]

                                            Bases: Spectrum

                                            Basic excitation spectrum object.

                                            -x[source]
                                            +x[source]

                                            The sequence of energies.

                                            Type:
                                            @@ -4678,7 +4676,7 @@

                                            Submodules
                                            -y[source]
                                            +y[source]

                                            The sequence of mu(E).

                                            Type:
                                            @@ -4697,12 +4695,12 @@

                                            Submodules
                                            -XLABEL = 'Energy (eV)'[source]
                                            +XLABEL = 'Energy (eV)'[source]

                                            -YLABEL = 'Intensity'[source]
                                            +YLABEL = 'Intensity'[source]

                                            @@ -4713,7 +4711,7 @@

                                            Submodules
                                            -class Fragmenter(molecule: Molecule, edges: list | None = None, depth: int = 1, open_rings: bool = False, use_metal_edge_extender: bool = False, opt_steps: int = 10000, prev_unique_frag_dict: dict | None = None, assume_previous_thoroughness: bool = True)[source]
                                            +class Fragmenter(molecule: Molecule, edges: list | None = None, depth: int = 1, open_rings: bool = False, use_metal_edge_extender: bool = False, opt_steps: int = 10000, prev_unique_frag_dict: dict | None = None, assume_previous_thoroughness: bool = True)[source]

                                            Bases: MSONable

                                            Molecule fragmenter class.

                                            Standard constructor for molecule fragmentation.

                                            @@ -4757,7 +4755,7 @@

                                            Submodules
                                            -open_ring(mol_graph: MoleculeGraph, bond: list, opt_steps: int) MoleculeGraph[source]
                                            +open_ring(mol_graph: MoleculeGraph, bond: list, opt_steps: int) MoleculeGraph[source]

                                            Open a ring using OpenBabel’s local opt. Given a molecule graph and a bond, convert the molecule graph into an OpenBabel molecule, remove the given bond, perform the local opt with the number of steps determined by @@ -4771,7 +4769,7 @@

                                            Submodules
                                            -class FunctionalGroupExtractor(molecule, optimize=False)[source]
                                            +class FunctionalGroupExtractor(molecule, optimize=False)[source]

                                            Bases: object

                                            This class is used to algorithmically parse a molecule (represented by an instance of pymatgen.analysis.graphs.MoleculeGraph) and determine arbitrary @@ -4789,7 +4787,7 @@

                                            Submodules
                                            -categorize_functional_groups(groups)[source]
                                            +categorize_functional_groups(groups)[source]

                                            Determine classes of functional groups present in a set.

                                            Parameters:
                                            @@ -4805,7 +4803,7 @@

                                            Submodules
                                            -get_all_functional_groups(elements=None, func_groups=None, catch_basic=True)[source]
                                            +get_all_functional_groups(elements=None, func_groups=None, catch_basic=True)[source]

                                            Identify all functional groups (or all within a certain subset) in the molecule, combining the methods described above.

                                            @@ -4829,7 +4827,7 @@

                                            Submodules
                                            -get_basic_functional_groups(func_groups=None)[source]
                                            +get_basic_functional_groups(func_groups=None)[source]

                                            Identify functional groups that cannot be identified by the Ertl method of get_special_carbon and get_heteroatoms, such as benzene rings, methyl groups, and ethyl groups.

                                            @@ -4849,7 +4847,7 @@

                                            Submodules
                                            -get_heteroatoms(elements=None)[source]
                                            +get_heteroatoms(elements=None)[source]

                                            Identify non-H, non-C atoms in the MoleculeGraph, returning a list of their node indices.

                                            @@ -4867,7 +4865,7 @@

                                            Submodules
                                            -get_special_carbon(elements=None)[source]
                                            +get_special_carbon(elements=None)[source]

                                            Identify Carbon atoms in the MoleculeGraph that fit the characteristics defined Ertl (2017), returning a list of their node indices.

                                            @@ -4893,7 +4891,7 @@

                                            Submodules +link_marked_atoms(atoms)[source]

                                            Take a list of marked “interesting” atoms (heteroatoms, special carbons) and attempt to connect them, returning a list of disjoint groups of special atoms (and their connected hydrogens).

                                            @@ -4916,36 +4914,36 @@

                                            Submodules
                                            -class ConnectedSite(site, jimage, index, weight, dist)[source]
                                            +class ConnectedSite(site, jimage, index, weight, dist)[source]

                                            Bases: NamedTuple

                                            Create new instance of ConnectedSite(site, jimage, index, weight, dist)

                                            -dist: float[source]
                                            +dist: float[source]

                                            Alias for field number 4

                                            -index: Any[source]
                                            +index: Any[source]

                                            Alias for field number 2

                                            -jimage: Tuple3Ints[source]
                                            +jimage: Tuple3Ints[source]

                                            Alias for field number 1

                                            -site: PeriodicSite[source]
                                            +site: PeriodicSite[source]

                                            Alias for field number 0

                                            -weight: float[source]
                                            +weight: float[source]

                                            Alias for field number 3

                                            @@ -4953,7 +4951,7 @@

                                            Submodules
                                            -exception MolGraphSplitError[source]
                                            +exception MolGraphSplitError[source]

                                            Bases: Exception

                                            Raised when a molecule graph is failed to split into two disconnected subgraphs.

                                            @@ -4961,7 +4959,7 @@

                                            Submodules
                                            -class MoleculeGraph(molecule, graph_data=None)[source]
                                            +class MoleculeGraph(molecule, graph_data=None)[source]

                                            Bases: MSONable

                                            This is a class for annotating a Molecule with bond information, stored in the form of a graph. A “bond” does @@ -4990,7 +4988,7 @@

                                            Submodules
                                            -add_edge(from_index, to_index, weight=None, warn_duplicates=True, edge_properties=None)[source]
                                            +add_edge(from_index, to_index, weight=None, warn_duplicates=True, edge_properties=None)[source]

                                            Add edge to graph.

                                            Since physically a ‘bond’ (or other connection between sites) doesn’t have a direction, from_index, @@ -5015,7 +5013,7 @@

                                            Submodules
                                            -alter_edge(from_index, to_index, new_weight=None, new_edge_properties=None)[source]
                                            +alter_edge(from_index, to_index, new_weight=None, new_edge_properties=None)[source]

                                            Alters either the weight or the edge_properties of an edge in the MoleculeGraph.

                                            @@ -5038,7 +5036,7 @@

                                            Submodules
                                            -as_dict()[source]
                                            +as_dict()[source]

                                            As in pymatgen.core.Molecule except with using to_dict_of_dicts from NetworkX to store graph information.

                                            @@ -5046,7 +5044,7 @@

                                            Submodules
                                            -break_edge(from_index, to_index, allow_reverse=False)[source]
                                            +break_edge(from_index, to_index, allow_reverse=False)[source]

                                            Remove an edge from the MoleculeGraph.

                                            Parameters:
                                            @@ -5063,14 +5061,14 @@

                                            Submodules
                                            -build_unique_fragments()[source]
                                            +build_unique_fragments()[source]

                                            Find all possible fragment combinations of the MoleculeGraphs (in other words, all connected induced subgraphs).

                                            -diff(other, strict=True)[source]
                                            +diff(other, strict=True)[source]

                                            Compares two MoleculeGraphs. Returns dict with keys ‘self’, ‘other’, ‘both’ with edges that are present in only one MoleculeGraph (‘self’ and @@ -5100,7 +5098,7 @@

                                            Submodules
                                            -draw_graph_to_file(filename='graph', diff=None, hide_unconnected_nodes=False, hide_image_edges=True, edge_colors=False, node_labels=False, weight_labels=False, image_labels=False, color_scheme='VESTA', keep_dot=False, algo='fdp')[source]
                                            +draw_graph_to_file(filename='graph', diff=None, hide_unconnected_nodes=False, hide_image_edges=True, edge_colors=False, node_labels=False, weight_labels=False, image_labels=False, color_scheme='VESTA', keep_dot=False, algo='fdp')[source]

                                            Draws graph using GraphViz.

                                            The networkx graph object itself can also be drawn with networkx’s in-built graph drawing methods, but @@ -5140,19 +5138,19 @@

                                            Submodules
                                            -property edge_weight_name[source]
                                            +property edge_weight_name[source]

                                            Name of the edge weight property of graph.

                                            -property edge_weight_unit[source]
                                            +property edge_weight_unit[source]

                                            Units of the edge weight property of graph.

                                            -find_rings(including=None) list[list[tuple[int, int]]][source]
                                            +find_rings(including=None) list[list[tuple[int, int]]][source]

                                            Find ring structures in the MoleculeGraph.

                                            Parameters:
                                            @@ -5180,7 +5178,7 @@

                                            Submodules
                                            -classmethod from_dict(dct: dict) Self[source]
                                            +classmethod from_dict(dct: dict) Self[source]

                                            As in pymatgen.core.Molecule except restoring graphs using from_dict_of_dicts from NetworkX to restore graph information.

                                            @@ -5188,7 +5186,7 @@

                                            Submodules
                                            -classmethod from_edges(molecule: Molecule, edges: dict[tuple[int, int], None | dict]) Self[source]
                                            +classmethod from_edges(molecule: Molecule, edges: dict[tuple[int, int], None | dict]) Self[source]

                                            Constructor for MoleculeGraph, using pre-existing or pre-defined edges with optional edge parameters.

                                            @@ -5209,7 +5207,7 @@

                                            Submodules
                                            -classmethod from_empty_graph(molecule, name='bonds', edge_weight_name=None, edge_weight_units=None) Self[source]
                                            +classmethod from_empty_graph(molecule, name='bonds', edge_weight_name=None, edge_weight_units=None) Self[source]

                                            Constructor for MoleculeGraph, returns a MoleculeGraph object with an empty graph (no edges, only nodes defined that correspond to Sites in Molecule).

                                            @@ -5232,7 +5230,7 @@

                                            Submodules
                                            -classmethod from_local_env_strategy(molecule, strategy) Self[source]
                                            +classmethod from_local_env_strategy(molecule, strategy) Self[source]

                                            Constructor for MoleculeGraph, using a strategy from pymatgen.analysis.local_env.

                                            @@ -5251,7 +5249,7 @@

                                            Submodules
                                            -get_connected_sites(n)[source]
                                            +get_connected_sites(n)[source]

                                            Get a named tuple of neighbors of site n: periodic_site, jimage, index, weight. Index is the index of the corresponding site @@ -5273,7 +5271,7 @@

                                            Submodules
                                            -get_coordination_of_site(n) int[source]
                                            +get_coordination_of_site(n) int[source]

                                            Get the number of neighbors of site n. In graph terms, simply returns degree of node corresponding to site n.

                                            @@ -5292,7 +5290,7 @@

                                            Submodules
                                            -get_disconnected_fragments(return_index_map: bool = False)[source]
                                            +get_disconnected_fragments(return_index_map: bool = False)[source]

                                            Determine if the MoleculeGraph is connected. If it is not, separate the MoleculeGraph into different MoleculeGraphs, where each resulting MoleculeGraph is a disconnected subgraph of the original. Currently, this function naively assigns @@ -5318,7 +5316,7 @@

                                            Submodules
                                            -insert_node(idx, species, coords, validate_proximity=False, site_properties=None, edges=None)[source]
                                            +insert_node(idx, species, coords, validate_proximity=False, site_properties=None, edges=None)[source]

                                            A wrapper around Molecule.insert(), which also incorporates the new site into the MoleculeGraph.

                                            @@ -5344,7 +5342,7 @@

                                            Submodules
                                            -isomorphic_to(other: MoleculeGraph) bool[source]
                                            +isomorphic_to(other: MoleculeGraph) bool[source]

                                            Checks if the graphs of two MoleculeGraphs are isomorphic to one another. In order to prevent problems with misdirected edges, both graphs are converted into undirected nx.Graph objects.

                                            @@ -5360,13 +5358,13 @@

                                            Submodules
                                            -property name[source]
                                            +property name[source]

                                            Name of graph.

                                            -remove_nodes(indices: list[int]) None[source]
                                            +remove_nodes(indices: list[int]) None[source]

                                            A wrapper for Molecule.remove_sites().

                                            Parameters:
                                            @@ -5377,7 +5375,7 @@

                                            Submodules
                                            -replace_group(index, func_grp, strategy, bond_order=1, graph_dict=None, strategy_params=None)[source]
                                            +replace_group(index, func_grp, strategy, bond_order=1, graph_dict=None, strategy_params=None)[source]

                                            Builds off of Molecule.substitute and MoleculeGraph.substitute_group to replace a functional group in self.molecule with a functional group. This method also amends self.graph to incorporate the new functional @@ -5418,14 +5416,14 @@

                                            Submodules
                                            -set_node_attributes()[source]
                                            +set_node_attributes()[source]

                                            Replicates molecule site properties (specie, coords, etc.) in the MoleculeGraph.

                                            -sort(key: Callable[[Molecule], float] | None = None, reverse: bool = False) None[source]
                                            +sort(key: Callable[[Molecule], float] | None = None, reverse: bool = False) None[source]

                                            Same as Molecule.sort(). Also remaps nodes in graph.

                                            Parameters:
                                            @@ -5439,7 +5437,7 @@

                                            Submodules
                                            -split_molecule_subgraphs(bonds, allow_reverse=False, alterations=None)[source]
                                            +split_molecule_subgraphs(bonds, allow_reverse=False, alterations=None)[source]

                                            Split MoleculeGraph into two or more MoleculeGraphs by breaking a set of bonds. This function uses MoleculeGraph.break_edge repeatedly to create @@ -5478,7 +5476,7 @@

                                            Submodules
                                            -substitute_group(index, func_grp, strategy, bond_order=1, graph_dict=None, strategy_params=None)[source]
                                            +substitute_group(index, func_grp, strategy, bond_order=1, graph_dict=None, strategy_params=None)[source]

                                            Builds off of Molecule.substitute to replace an atom in self.molecule with a functional group. This method also amends self.graph to incorporate the new functional group.

                                            @@ -5527,24 +5525,24 @@

                                            Submodules
                                            -classmethod with_edges(*args, **kwargs)[source]
                                            +classmethod with_edges(*args, **kwargs)[source]

                                            -classmethod with_empty_graph(*args, **kwargs)[source]
                                            +classmethod with_empty_graph(*args, **kwargs)[source]
                                            -classmethod with_local_env_strategy(*args, **kwargs)[source]
                                            +classmethod with_local_env_strategy(*args, **kwargs)[source]
                                            -class StructureGraph(structure: Structure, graph_data: dict | None = None)[source]
                                            +class StructureGraph(structure: Structure, graph_data: dict | None = None)[source]

                                            Bases: MSONable

                                            This is a class for annotating a Structure with bond information, stored in the form of a graph. A “bond” does not necessarily have to be a chemical bond, but can store @@ -5572,7 +5570,7 @@

                                            Submodules
                                            -add_edge(from_index: int, to_index: int, from_jimage: Tuple3Ints = (0, 0, 0), to_jimage: Tuple3Ints | None = None, weight: float | None = None, warn_duplicates: bool = True, edge_properties: dict | None = None) None[source]
                                            +add_edge(from_index: int, to_index: int, from_jimage: Tuple3Ints = (0, 0, 0), to_jimage: Tuple3Ints | None = None, weight: float | None = None, warn_duplicates: bool = True, edge_properties: dict | None = None) None[source]

                                            Add edge to graph.

                                            Since physically a ‘bond’ (or other connection between sites) doesn’t have a direction, from_index, @@ -5600,7 +5598,7 @@

                                            Submodules
                                            -alter_edge(from_index: int, to_index: int, to_jimage: tuple | None = None, new_weight: float | None = None, new_edge_properties: dict | None = None)[source]
                                            +alter_edge(from_index: int, to_index: int, to_jimage: tuple | None = None, new_weight: float | None = None, new_edge_properties: dict | None = None)[source]

                                            Alters either the weight or the edge_properties of an edge in the StructureGraph.

                                            @@ -5624,7 +5622,7 @@

                                            Submodules
                                            -as_dict() dict[source]
                                            +as_dict() dict[source]

                                            As in pymatgen.core.Structure except with using to_dict_of_dicts from NetworkX to store graph information.

                                            @@ -5632,7 +5630,7 @@

                                            Submodules
                                            -break_edge(from_index: int, to_index: int, to_jimage: tuple | None = None, allow_reverse: bool = False) None[source]
                                            +break_edge(from_index: int, to_index: int, to_jimage: tuple | None = None, allow_reverse: bool = False) None[source]

                                            Remove an edge from the StructureGraph. If no image is given, this method will fail.

                                            Parameters:
                                            @@ -5650,7 +5648,7 @@

                                            Submodules
                                            -diff(other: StructureGraph, strict: bool = True) dict[source]
                                            +diff(other: StructureGraph, strict: bool = True) dict[source]

                                            Compares two StructureGraphs. Returns dict with keys ‘self’, ‘other’, ‘both’ with edges that are present in only one StructureGraph (‘self’ and @@ -5681,7 +5679,7 @@

                                            Submodules
                                            -draw_graph_to_file(filename: str = 'graph', diff: StructureGraph = None, hide_unconnected_nodes: bool = False, hide_image_edges: bool = True, edge_colors: bool = False, node_labels: bool = False, weight_labels: bool = False, image_labels: bool = False, color_scheme: str = 'VESTA', keep_dot: bool = False, algo: str = 'fdp')[source]
                                            +draw_graph_to_file(filename: str = 'graph', diff: StructureGraph = None, hide_unconnected_nodes: bool = False, hide_image_edges: bool = True, edge_colors: bool = False, node_labels: bool = False, weight_labels: bool = False, image_labels: bool = False, color_scheme: str = 'VESTA', keep_dot: bool = False, algo: str = 'fdp')[source]

                                            Draws graph using GraphViz.

                                            The networkx graph object itself can also be drawn with networkx’s in-built graph drawing methods, but @@ -5720,26 +5718,26 @@

                                            Submodules
                                            -property edge_weight_name: str[source]
                                            +property edge_weight_name: str[source]

                                            Name of the edge weight property of graph.

                                            -property edge_weight_unit[source]
                                            +property edge_weight_unit[source]

                                            Units of the edge weight property of graph.

                                            -classmethod from_dict(dct: dict) Self[source]
                                            +classmethod from_dict(dct: dict) Self[source]

                                            As in pymatgen.core.Structure except restoring graphs using from_dict_of_dicts from NetworkX to restore graph information.

                                            -classmethod from_edges(structure: Structure, edges: dict) Self[source]
                                            +classmethod from_edges(structure: Structure, edges: dict) Self[source]

                                            Constructor for MoleculeGraph, using pre-existing or pre-defined edges with optional edge parameters.

                                            @@ -5761,7 +5759,7 @@

                                            Submodules
                                            -classmethod from_empty_graph(structure: Structure, name: str = 'bonds', edge_weight_name: str | None = None, edge_weight_units: str | None = None) Self[source]
                                            +classmethod from_empty_graph(structure: Structure, name: str = 'bonds', edge_weight_name: str | None = None, edge_weight_units: str | None = None) Self[source]

                                            Constructor for an empty StructureGraph, i.e. no edges, containing only nodes corresponding to sites in Structure.

                                            @@ -5788,7 +5786,7 @@

                                            Submodules
                                            -classmethod from_local_env_strategy(structure: Structure, strategy: NearNeighbors, weights: bool = False, edge_properties: bool = False) Self[source]
                                            +classmethod from_local_env_strategy(structure: Structure, strategy: NearNeighbors, weights: bool = False, edge_properties: bool = False) Self[source]

                                            Constructor for StructureGraph, using a strategy from pymatgen.analysis.local_env.

                                            @@ -5805,7 +5803,7 @@

                                            Submodules
                                            -get_connected_sites(n: int, jimage: Tuple3Ints = (0, 0, 0)) list[ConnectedSite][source]
                                            +get_connected_sites(n: int, jimage: Tuple3Ints = (0, 0, 0)) list[ConnectedSite][source]

                                            Get a named tuple of neighbors of site n: periodic_site, jimage, index, weight. Index is the index of the corresponding site @@ -5827,7 +5825,7 @@

                                            Submodules
                                            -get_coordination_of_site(n: int) int[source]
                                            +get_coordination_of_site(n: int) int[source]

                                            Get the number of neighbors of site n. In graph terms, simply returns degree of node corresponding to site n.

                                            @@ -5845,7 +5843,7 @@

                                            Submodules
                                            -get_subgraphs_as_molecules(use_weights: bool = False) list[Molecule][source]
                                            +get_subgraphs_as_molecules(use_weights: bool = False) list[Molecule][source]

                                            Retrieve subgraphs as molecules, useful for extracting molecules from periodic crystals.

                                            Will only return unique molecules, not any duplicates @@ -5868,7 +5866,7 @@

                                            Submodules
                                            -insert_node(idx: int, species: Species, coords: ArrayLike, coords_are_cartesian: bool = False, validate_proximity: bool = False, site_properties: dict | None = None, edges: list | dict | None = None) None[source]
                                            +insert_node(idx: int, species: Species, coords: ArrayLike, coords_are_cartesian: bool = False, validate_proximity: bool = False, site_properties: dict | None = None, edges: list | dict | None = None) None[source]

                                            A wrapper around Molecule.insert(), which also incorporates the new site into the MoleculeGraph.

                                            @@ -5899,13 +5897,13 @@

                                            Submodules
                                            -property name: str[source]
                                            +property name: str[source]

                                            Name of graph.

                                            -remove_nodes(indices: Sequence[int | None]) None[source]
                                            +remove_nodes(indices: Sequence[int | None]) None[source]

                                            A wrapper for Molecule.remove_sites().

                                            Parameters:
                                            @@ -5917,14 +5915,14 @@

                                            Submodules
                                            -set_node_attributes() None[source]
                                            +set_node_attributes() None[source]

                                            Get each node a “specie” and a “coords” attribute, updated with the current species and coordinates.

                                            -sort(key=None, reverse: bool = False) None[source]
                                            +sort(key=None, reverse: bool = False) None[source]

                                            Same as Structure.sort(). Also remaps nodes in graph.

                                            Parameters:
                                            @@ -5938,7 +5936,7 @@

                                            Submodules
                                            -substitute_group(index: int, func_grp: Molecule | str, strategy: Any, bond_order: int = 1, graph_dict: dict | None = None, strategy_params: dict | None = None)[source]
                                            +substitute_group(index: int, func_grp: Molecule | str, strategy: Any, bond_order: int = 1, graph_dict: dict | None = None, strategy_params: dict | None = None)[source]

                                            Builds off of Structure.substitute to replace an atom in self.structure with a functional group. This method also amends self.graph to incorporate the new functional group.

                                            @@ -5987,7 +5985,7 @@

                                            Submodules
                                            -property types_and_weights_of_connections: dict[source]
                                            +property types_and_weights_of_connections: dict[source]

                                            Extract a dictionary summarizing the types and weights of edges in the graph.

                                            @@ -6002,7 +6000,7 @@

                                            Submodules
                                            -types_of_coordination_environments(anonymous: bool = False) list[str][source]
                                            +types_of_coordination_environments(anonymous: bool = False) list[str][source]

                                            Extract information on the different co-ordination environments present in the graph.

                                            @@ -6017,7 +6015,7 @@

                                            Submodules
                                            -property weight_statistics: dict[source]
                                            +property weight_statistics: dict[source]

                                            Extract a statistical summary of edge weights present in the graph.

                                            @@ -6030,17 +6028,17 @@

                                            Submodules
                                            -classmethod with_edges(*args, **kwargs)[source]
                                            +classmethod with_edges(*args, **kwargs)[source]

                                            -classmethod with_empty_graph(*args, **kwargs)[source]
                                            +classmethod with_empty_graph(*args, **kwargs)[source]
                                            -classmethod with_local_env_strategy(*args, **kwargs)[source]
                                            +classmethod with_local_env_strategy(*args, **kwargs)[source]

                                            @@ -6062,7 +6060,7 @@

                                            Submodules
                                            -class GrandPotentialInterfacialReactivity(c1: Composition, c2: Composition, grand_pd: GrandPotentialPhaseDiagram, pd_non_grand: PhaseDiagram, include_no_mixing_energy: bool = False, norm: bool = True, use_hull_energy: bool = True)[source]
                                            +class GrandPotentialInterfacialReactivity(c1: Composition, c2: Composition, grand_pd: GrandPotentialPhaseDiagram, pd_non_grand: PhaseDiagram, include_no_mixing_energy: bool = False, norm: bool = True, use_hull_energy: bool = True)[source]

                                            Bases: InterfacialReactivity

                                            Extends upon InterfacialReactivity to allow for modelling possible reactions at the interface between two solids in the presence of an open element. The @@ -6096,7 +6094,7 @@

                                            Submodules
                                            -get_no_mixing_energy()[source]
                                            +get_no_mixing_energy()[source]

                                            Generate the opposite number of energy above grand potential convex hull for both reactants.

                                            @@ -6110,7 +6108,7 @@

                                            Submodules
                                            -class InterfacialReactivity(c1: Composition, c2: Composition, pd: PhaseDiagram, norm: bool = True, use_hull_energy: bool = False, **kwargs)[source]
                                            +class InterfacialReactivity(c1: Composition, c2: Composition, pd: PhaseDiagram, norm: bool = True, use_hull_energy: bool = False, **kwargs)[source]

                                            Bases: MSONable

                                            Model an interface between two solids and its possible reactions. The two reactants are provided as Composition objects (c1 and c2), along with the @@ -6146,12 +6144,12 @@

                                            Submodules
                                            -EV_TO_KJ_PER_MOL = 96.4853[source]
                                            +EV_TO_KJ_PER_MOL = 96.4853[source]

                                            -classmethod get_chempot_correction(element: str, temp: float, pres: float)[source]
                                            +classmethod get_chempot_correction(element: str, temp: float, pres: float)[source]

                                            Get the normalized correction term Δμ for chemical potential of a gas phase consisting of element at given temperature and pressure, referenced to that in the standard state (T_std = 298.15 K, @@ -6163,7 +6161,7 @@

                                            Submodules
                                            • element – The string representing the element.

                                            • temp – The temperature of the gas phase in Kelvin.

                                            • -
                                            • pres – The pressure of the gas phase in Pa.

                                            • +
                                            • pres – The pressure of the gas phase in Pa. # codespell:ignore pres

                                            Returns:
                                            @@ -6175,7 +6173,7 @@

                                            Submodules
                                            -get_critical_original_kink_ratio()[source]
                                            +get_critical_original_kink_ratio()[source]

                                            Get a list of molar mixing ratio for each kink between ORIGINAL (instead of processed) reactant compositions. This is the same list as mixing ratio obtained from get_kinks method @@ -6190,14 +6188,14 @@

                                            Submodules
                                            -get_dataframe() DataFrame[source]
                                            +get_dataframe() DataFrame[source]

                                            Get a pandas DataFrame representation of the data produced by the get_kinks() method.

                                            -get_kinks() list[tuple[int, float, float, Reaction, float]][source]
                                            +get_kinks() list[tuple[int, float, float, Reaction, float]][source]

                                            Find all the kinks in mixing ratio where reaction products changes along the tie-line of composition self.c1 and composition self.c2.

                                            @@ -6213,7 +6211,7 @@

                                            Submodules
                                            -property labels[source]
                                            +property labels[source]

                                            A dictionary containing kink information: {index: ‘x= mixing_ratio energy= reaction_energy reaction_equation’}. e.g. {1: ‘x= 0 energy = 0 Mn -> Mn’,

                                            @@ -6225,14 +6223,14 @@

                                            Submodules
                                            -property minimum[source]
                                            +property minimum[source]

                                            The minimum reaction energy E_min and corresponding mixing ratio x_min as tuple[float, float]: (x_min, E_min).

                                            -plot(backend: Literal['plotly', 'matplotlib'] = 'plotly') Figure | plt.Figure[source]
                                            +plot(backend: Literal['plotly', 'matplotlib'] = 'plotly') Figure | plt.Figure[source]

                                            Plots reaction energy as a function of mixing ratio x in self.c1 - self.c2 tie line.

                                            Parameters:
                                            @@ -6247,7 +6245,7 @@

                                            Submodules
                                            -property products[source]
                                            +property products[source]

                                            List of formulas of potential products. e.g. [‘Li’,’O2’,’Mn’].

                                            @@ -6261,7 +6259,7 @@

                                            Submodules
                                            -class BrunnerNNReal(tol: float = 0.0001, cutoff=8.0)[source]
                                            +class BrunnerNNReal(tol: float = 0.0001, cutoff=8.0)[source]

                                            Bases: NearNeighbors

                                            Determine coordination number using Brunner’s algorithm which counts the atoms that are within the largest gap in differences in real space @@ -6279,7 +6277,7 @@

                                            Submodules
                                            -get_nn_info(structure: Structure, n: int)[source]
                                            +get_nn_info(structure: Structure, n: int)[source]

                                            Get all near-neighbor sites as well as the associated image locations and weights of the site with index n in structure.

                                            @@ -6305,7 +6303,7 @@

                                            Submodules
                                            -property molecules_allowed: bool[source]
                                            +property molecules_allowed: bool[source]

                                            can this NearNeighbors class be used with Molecule objects?

                                            @@ -6317,7 +6315,7 @@

                                            Submodules
                                            -property structures_allowed: bool[source]
                                            +property structures_allowed: bool[source]

                                            can this NearNeighbors class be used with Structure objects?

                                            @@ -6331,7 +6329,7 @@

                                            Submodules
                                            -class BrunnerNNReciprocal(tol: float = 0.0001, cutoff=8.0)[source]
                                            +class BrunnerNNReciprocal(tol: float = 0.0001, cutoff=8.0)[source]

                                            Bases: NearNeighbors

                                            Determine coordination number using Brunner’s algorithm which counts the atoms that are within the largest gap in differences in real space @@ -6349,7 +6347,7 @@

                                            Submodules
                                            -get_nn_info(structure: Structure, n: int)[source]
                                            +get_nn_info(structure: Structure, n: int)[source]

                                            Get all near-neighbor sites as well as the associated image locations and weights of the site with index n in structure.

                                            @@ -6374,7 +6372,7 @@

                                            Submodules
                                            -property molecules_allowed: bool[source]
                                            +property molecules_allowed: bool[source]

                                            can this NearNeighbors class be used with Molecule objects?

                                            @@ -6386,7 +6384,7 @@

                                            Submodules
                                            -property structures_allowed: bool[source]
                                            +property structures_allowed: bool[source]

                                            can this NearNeighbors class be used with Structure objects?

                                            @@ -6400,7 +6398,7 @@

                                            Submodules
                                            -class BrunnerNNRelative(tol: float = 0.0001, cutoff=8.0)[source]
                                            +class BrunnerNNRelative(tol: float = 0.0001, cutoff=8.0)[source]

                                            Bases: NearNeighbors

                                            Determine coordination number using Brunner’s algorithm which counts the atoms that are within the largest gap in differences in real space @@ -6418,7 +6416,7 @@

                                            Submodules
                                            -get_nn_info(structure: Structure, n: int)[source]
                                            +get_nn_info(structure: Structure, n: int)[source]

                                            Get all near-neighbor sites as well as the associated image locations and weights of the site with index n in structure.

                                            @@ -6444,7 +6442,7 @@

                                            Submodules
                                            -property molecules_allowed: bool[source]
                                            +property molecules_allowed: bool[source]

                                            can this NearNeighbors class be used with Molecule objects?

                                            @@ -6456,7 +6454,7 @@

                                            Submodules
                                            -property structures_allowed: bool[source]
                                            +property structures_allowed: bool[source]

                                            can this NearNeighbors class be used with Structure objects?

                                            @@ -6470,7 +6468,7 @@

                                            Submodules
                                            -class BrunnerNN_real(tol: float = 0.0001, cutoff=8.0)[source]
                                            +class BrunnerNN_real(tol: float = 0.0001, cutoff=8.0)[source]

                                            Bases: BrunnerNNReal

                                            Parameters:
                                            @@ -6486,7 +6484,7 @@

                                            Submodules
                                            -class BrunnerNN_reciprocal(tol: float = 0.0001, cutoff=8.0)[source]
                                            +class BrunnerNN_reciprocal(tol: float = 0.0001, cutoff=8.0)[source]

                                            Bases: BrunnerNNReciprocal

                                            Parameters:
                                            @@ -6502,7 +6500,7 @@

                                            Submodules
                                            -class BrunnerNN_relative(tol: float = 0.0001, cutoff=8.0)[source]
                                            +class BrunnerNN_relative(tol: float = 0.0001, cutoff=8.0)[source]

                                            Bases: BrunnerNNRelative

                                            Parameters:
                                            @@ -6518,7 +6516,7 @@

                                            Submodules
                                            -class CovalentBondNN(tol: float = 0.2, order=True)[source]
                                            +class CovalentBondNN(tol: float = 0.2, order=True)[source]

                                            Bases: NearNeighbors

                                            Determine near-neighbor sites and bond orders using built-in pymatgen.Molecule CovalentBond functionality.

                                            @@ -6535,7 +6533,7 @@

                                            Submodules
                                            -property extend_structure_molecules: bool[source]
                                            +property extend_structure_molecules: bool[source]

                                            Do Molecules need to be converted to Structures to use this NearNeighbors class? Note: this property is not defined for classes for which molecules_allowed is False.

                                            @@ -6548,7 +6546,7 @@

                                            Submodules
                                            -get_bonded_structure(structure: Structure, decorate: bool = False) MoleculeGraph[source]
                                            +get_bonded_structure(structure: Structure, decorate: bool = False) MoleculeGraph[source]

                                            Obtain a MoleculeGraph object using this NearNeighbor class.

                                            Parameters:
                                            @@ -6570,7 +6568,7 @@

                                            Submodules
                                            -get_nn_info(structure: Structure, n: int)[source]
                                            +get_nn_info(structure: Structure, n: int)[source]

                                            Get all near-neighbor sites and weights (orders) of bonds for a given atom.

                                            @@ -6589,7 +6587,7 @@

                                            Submodules
                                            -get_nn_shell_info(structure: Structure, site_idx, shell)[source]
                                            +get_nn_shell_info(structure: Structure, site_idx, shell)[source]

                                            Get a certain nearest neighbor shell for a certain site.

                                            Determines all non-backtracking paths through the neighbor network computed by get_nn_info. The weight is determined by multiplying @@ -6624,7 +6622,7 @@

                                            Submodules
                                            -property molecules_allowed: bool[source]
                                            +property molecules_allowed: bool[source]

                                            can this NearNeighbors class be used with Molecule objects?

                                            @@ -6636,7 +6634,7 @@

                                            Submodules
                                            -property structures_allowed: bool[source]
                                            +property structures_allowed: bool[source]

                                            can this NearNeighbors class be used with Structure objects?

                                            @@ -6650,7 +6648,7 @@

                                            Submodules
                                            -class Critic2NN[source]
                                            +class Critic2NN[source]

                                            Bases: NearNeighbors

                                            Performs a topological analysis using critic2 to obtain neighbor information, using a sum of atomic charge densities. If an actual charge density is available (e.g. from a @@ -6658,7 +6656,7 @@

                                            Submodules
                                            -property extend_structure_molecules: bool[source]
                                            +property extend_structure_molecules: bool[source]

                                            Do Molecules need to be converted to Structures to use this NearNeighbors class? Note: this property is not defined for classes for which molecules_allowed is False.

                                            @@ -6671,7 +6669,7 @@

                                            Submodules
                                            -get_bonded_structure(structure: Structure, decorate: bool = False) StructureGraph[source]
                                            +get_bonded_structure(structure: Structure, decorate: bool = False) StructureGraph[source]
                                            Parameters:
                                              @@ -6690,7 +6688,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int) list[dict][source]
                                              +get_nn_info(structure: Structure, n: int) list[dict][source]

                                              Get all near-neighbor sites as well as the associated image locations and weights of the site with index n in structure.

                                              @@ -6715,7 +6713,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -6727,7 +6725,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -6741,7 +6739,7 @@

                                              Submodules
                                              -class CrystalNN(weighted_cn=False, cation_anion=False, distance_cutoffs=(0.5, 1), x_diff_weight=3.0, porous_adjustment=True, search_cutoff=7, fingerprint_length=None)[source]
                                              +class CrystalNN(weighted_cn=False, cation_anion=False, distance_cutoffs=(0.5, 1), x_diff_weight=3.0, porous_adjustment=True, search_cutoff=7, fingerprint_length=None)[source]

                                              Bases: NearNeighbors

                                              This is a custom near-neighbor method intended for use in all kinds of periodic structures (metals, minerals, porous structures, etc). It is based on a Voronoi algorithm and uses the @@ -6794,24 +6792,24 @@

                                              Submodules
                                              -class NNData(all_nninfo, cn_weights, cn_nninfo)[source]
                                              +class NNData(all_nninfo, cn_weights, cn_nninfo)[source]

                                              Bases: NamedTuple

                                              Create new instance of NNData(all_nninfo, cn_weights, cn_nninfo)

                                              -all_nninfo: list[source]
                                              +all_nninfo: list[source]

                                              Alias for field number 0

                                              -cn_nninfo: dict[source]
                                              +cn_nninfo: dict[source]

                                              Alias for field number 2

                                              -cn_weights: dict[source]
                                              +cn_weights: dict[source]

                                              Alias for field number 1

                                              @@ -6819,7 +6817,7 @@

                                              Submodules
                                              -get_cn(structure: Structure, n: int, **kwargs) float[source]
                                              +get_cn(structure: Structure, n: int, **kwargs) float[source]

                                              Get coordination number, CN, of site with index n in structure.

                                              Parameters:
                                              @@ -6849,7 +6847,7 @@

                                              Submodules
                                              -get_cn_dict(structure: Structure, n: int, use_weights: bool = False, **kwargs)[source]
                                              +get_cn_dict(structure: Structure, n: int, use_weights: bool = False, **kwargs)[source]

                                              Get coordination number, CN, of each element bonded to site with index n in structure.

                                              Parameters:
                                              @@ -6873,7 +6871,7 @@

                                              Submodules
                                              -get_nn_data(structure: Structure, n: int, length=None)[source]
                                              +get_nn_data(structure: Structure, n: int, length=None)[source]

                                              The main logic of the method to compute near neighbor.

                                              Parameters:
                                              @@ -6899,7 +6897,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int) list[dict][source]
                                              +get_nn_info(structure: Structure, n: int) list[dict][source]

                                              Get all near-neighbor information.

                                              Parameters:
                                              @@ -6927,7 +6925,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -6939,7 +6937,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -6951,7 +6949,7 @@

                                              Submodules
                                              -static transform_to_length(nn_data, length)[source]
                                              +static transform_to_length(nn_data, length)[source]

                                              Given NNData, transforms data to the specified fingerprint length.

                                              Parameters:
                                              @@ -6967,7 +6965,7 @@

                                              Submodules
                                              -class CutOffDictNN(cut_off_dict: dict | None = None)[source]
                                              +class CutOffDictNN(cut_off_dict: dict | None = None)[source]

                                              Bases: NearNeighbors

                                              A basic NN class using a dictionary of fixed cut-off distances. Only pairs of elements listed in the cut-off dictionary are considered @@ -6994,7 +6992,7 @@

                                              Submodules
                                              -property extend_structure_molecules: bool[source]
                                              +property extend_structure_molecules: bool[source]

                                              Do Molecules need to be converted to Structures to use this NearNeighbors class? Note: this property is not defined for classes for which molecules_allowed is False.

                                              @@ -7007,7 +7005,7 @@

                                              Submodules
                                              -classmethod from_preset(preset) Self[source]
                                              +classmethod from_preset(preset) Self[source]

                                              Initialize a CutOffDictNN according to a preset set of cutoffs.

                                              Parameters:
                                              @@ -7022,7 +7020,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int) list[dict][source]
                                              +get_nn_info(structure: Structure, n: int) list[dict][source]

                                              Get all near-neighbor sites as well as the associated image locations and weights of the site with index n in structure.

                                              @@ -7047,7 +7045,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -7059,7 +7057,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -7073,7 +7071,7 @@

                                              Submodules
                                              -class EconNN(tol: float = 0.2, cutoff: float = 10.0, cation_anion: bool = False, use_fictive_radius: bool = False)[source]
                                              +class EconNN(tol: float = 0.2, cutoff: float = 10.0, cation_anion: bool = False, use_fictive_radius: bool = False)[source]

                                              Bases: NearNeighbors

                                              Determines the average effective coordination number for each cation in a given structure using Hoppe’s algorithm.

                                              @@ -7096,7 +7094,7 @@

                                              Submodules
                                              -property extend_structure_molecules: bool[source]
                                              +property extend_structure_molecules: bool[source]

                                              Do Molecules need to be converted to Structures to use this NearNeighbors class? Note: this property is not defined for classes for which molecules_allowed is False.

                                              @@ -7109,7 +7107,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int)[source]
                                              +get_nn_info(structure: Structure, n: int)[source]

                                              Get all near-neighbor sites as well as the associated image locations and weights of the site with index n in structure.

                                              @@ -7135,7 +7133,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -7147,7 +7145,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -7161,7 +7159,7 @@

                                              Submodules
                                              -class IsayevNN(tol: float = 0.25, targets: Element | list[Element] | None = None, cutoff: float = 13.0, allow_pathological: bool = False, extra_nn_info: bool = True, compute_adj_neighbors: bool = True)[source]
                                              +class IsayevNN(tol: float = 0.25, targets: Element | list[Element] | None = None, cutoff: float = 13.0, allow_pathological: bool = False, extra_nn_info: bool = True, compute_adj_neighbors: bool = True)[source]

                                              Bases: VoronoiNN

                                              Uses the algorithm defined in 10.1038/ncomms15679.

                                              Sites are considered neighbors if (i) they share a Voronoi facet and (ii) the @@ -7182,7 +7180,7 @@

                                              Submodules
                                              -get_all_nn_info(structure: Structure) list[list[dict[str, Any]]][source]
                                              +get_all_nn_info(structure: Structure) list[list[dict[str, Any]]][source]
                                              Parameters:

                                              structure (Structure) – input structure.

                                              @@ -7196,7 +7194,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int) list[dict[str, Any]][source]
                                              +get_nn_info(structure: Structure, n: int) list[dict[str, Any]][source]

                                              Get all near-neighbor site information.

                                              Gets the associated image locations and weights of the site with index n in structure using Voronoi decomposition and distance cutoff.

                                              @@ -7226,7 +7224,7 @@

                                              Submodules
                                              -class JmolNN(tol: float = 0.45, min_bond_distance: float = 0.4, el_radius_updates: dict[SpeciesLike, float] | None = None)[source]
                                              +class JmolNN(tol: float = 0.45, min_bond_distance: float = 0.4, el_radius_updates: dict[SpeciesLike, float] | None = None)[source]

                                              Bases: NearNeighbors

                                              Determine near-neighbor sites and coordination number using an emulation of Jmol’s default autoBond() algorithm. This version of the algorithm @@ -7246,7 +7244,7 @@

                                              Submodules
                                              -property extend_structure_molecules: bool[source]
                                              +property extend_structure_molecules: bool[source]

                                              Do Molecules need to be converted to Structures to use this NearNeighbors class? Note: this property is not defined for classes for which molecules_allowed is False.

                                              @@ -7259,7 +7257,7 @@

                                              Submodules
                                              -get_max_bond_distance(el1_sym, el2_sym)[source]
                                              +get_max_bond_distance(el1_sym, el2_sym)[source]

                                              Use Jmol algorithm to determine bond length from atomic parameters.

                                              Parameters:
                                              @@ -7279,7 +7277,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int)[source]
                                              +get_nn_info(structure: Structure, n: int)[source]

                                              Get all near-neighbor sites as well as the associated image locations and weights of the site with index n using the bond identification algorithm underlying Jmol.

                                              @@ -7307,7 +7305,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -7319,7 +7317,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -7333,7 +7331,7 @@

                                              Submodules
                                              -class LocalStructOrderParams(types: list[str], parameters: list[dict[str, float] | None] | None = None, cutoff: float = -10.0)[source]
                                              +class LocalStructOrderParams(types: list[str], parameters: list[dict[str, float] | None] | None = None, cutoff: float = -10.0)[source]

                                              Bases: object

                                              This class permits the calculation of various types of local structure order parameters.

                                              @@ -7468,7 +7466,7 @@

                                              Submodules
                                              -compute_trigonometric_terms(thetas, phis)[source]
                                              +compute_trigonometric_terms(thetas, phis)[source]

                                              Compute trigonometric terms that are required to calculate bond orientational order parameters using internal variables.

                                              @@ -7492,7 +7490,7 @@

                                              Submodules
                                              -get_order_parameters(structure: Structure, n: int, indices_neighs: list[int] | None = None, tol: float = 0.0, target_spec: Species | None = None)[source]
                                              +get_order_parameters(structure: Structure, n: int, indices_neighs: list[int] | None = None, tol: float = 0.0, target_spec: Species | None = None)[source]

                                              Compute all order parameters of site n.

                                              Parameters:
                                              @@ -7548,7 +7546,7 @@

                                              Submodules
                                              -get_parameters(index: int) dict[str | int, float] | None[source]
                                              +get_parameters(index: int) dict[str | int, float] | None[source]

                                              Get parameters associated with calculation of the order parameter that was defined at the index provided.

                                              Attention: the parameters do not need to equal those originally @@ -7568,7 +7566,7 @@

                                              Submodules
                                              -get_q2(thetas=None, phis=None)[source]
                                              +get_q2(thetas=None, phis=None)[source]

                                              Calculates the value of the bond orientational order parameter of weight l=2. If the function is called with non-empty lists of polar and azimuthal angles the corresponding trigonometric terms @@ -7596,7 +7594,7 @@

                                              Submodules
                                              -get_q4(thetas=None, phis=None)[source]
                                              +get_q4(thetas=None, phis=None)[source]

                                              Calculates the value of the bond orientational order parameter of weight l=4. If the function is called with non-empty lists of polar and azimuthal angles the corresponding trigonometric terms @@ -7624,7 +7622,7 @@

                                              Submodules
                                              -get_q6(thetas=None, phis=None)[source]
                                              +get_q6(thetas=None, phis=None)[source]

                                              Calculates the value of the bond orientational order parameter of weight l=6. If the function is called with non-empty lists of polar and azimuthal angles the corresponding trigonometric terms @@ -7652,7 +7650,7 @@

                                              Submodules
                                              -get_type(index)[source]
                                              +get_type(index)[source]

                                              Get type of order parameter at the index provided and represented by a short string.

                                              @@ -7671,14 +7669,14 @@

                                              Submodules
                                              -property last_nneigh[source]
                                              +property last_nneigh[source]

                                              Number of neighbors encountered during the most recent order parameter calculation. A value of -1 indicates that no such calculation has yet been performed for this instance.

                                              -property num_ops: int[source]
                                              +property num_ops: int[source]

                                              Number of different order parameters that are targeted to be calculated.

                                              @@ -7686,7 +7684,7 @@

                                              Submodules
                                              -class MinimumDistanceNN(tol: float = 0.1, cutoff=10, get_all_sites=False)[source]
                                              +class MinimumDistanceNN(tol: float = 0.1, cutoff=10, get_all_sites=False)[source]

                                              Bases: NearNeighbors

                                              Determine near-neighbor sites and coordination number using the nearest neighbor(s) at distance, d_min, plus all neighbors @@ -7706,7 +7704,7 @@

                                              Submodules
                                              -property extend_structure_molecules: bool[source]
                                              +property extend_structure_molecules: bool[source]

                                              Do Molecules need to be converted to Structures to use this NearNeighbors class? Note: this property is not defined for classes for which molecules_allowed is False.

                                              @@ -7719,7 +7717,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int) list[dict[str, Any]][source]
                                              +get_nn_info(structure: Structure, n: int) list[dict[str, Any]][source]

                                              Get all near-neighbor sites as well as the associated image locations and weights of the site with index n using the closest neighbor distance-based method.

                                              @@ -7746,7 +7744,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -7758,7 +7756,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -7772,7 +7770,7 @@

                                              Submodules
                                              -class MinimumOKeeffeNN(tol: float = 0.1, cutoff=10)[source]
                                              +class MinimumOKeeffeNN(tol: float = 0.1, cutoff=10)[source]

                                              Bases: NearNeighbors

                                              Determine near-neighbor sites and coordination number using the neighbor(s) at closest relative distance, d_min_OKeffee, plus some @@ -7791,7 +7789,7 @@

                                              Submodules
                                              -property extend_structure_molecules: bool[source]
                                              +property extend_structure_molecules: bool[source]

                                              Do Molecules need to be converted to Structures to use this NearNeighbors class? Note: this property is not defined for classes for which molecules_allowed is False.

                                              @@ -7804,7 +7802,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int)[source]
                                              +get_nn_info(structure: Structure, n: int)[source]

                                              Get all near-neighbor sites as well as the associated image locations and weights of the site with index n using the closest relative neighbor distance-based method with O’Keeffe parameters.

                                              @@ -7832,7 +7830,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -7844,7 +7842,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -7858,7 +7856,7 @@

                                              Submodules
                                              -class MinimumVIRENN(tol: float = 0.1, cutoff=10)[source]
                                              +class MinimumVIRENN(tol: float = 0.1, cutoff=10)[source]

                                              Bases: NearNeighbors

                                              Determine near-neighbor sites and coordination number using the neighbor(s) at closest relative distance, d_min_VIRE, plus some @@ -7877,7 +7875,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int)[source]
                                              +get_nn_info(structure: Structure, n: int)[source]

                                              Get all near-neighbor sites as well as the associated image locations and weights of the site with index n using the closest relative neighbor distance-based method with VIRE atomic/ionic radii.

                                              @@ -7905,7 +7903,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -7917,7 +7915,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -7931,13 +7929,13 @@

                                              Submodules
                                              -class NearNeighbors[source]
                                              +class NearNeighbors[source]

                                              Bases: object

                                              Base class to determine near neighbors that typically include nearest neighbors and others that are within some tolerable distance.

                                              -property extend_structure_molecules: bool[source]
                                              +property extend_structure_molecules: bool[source]

                                              Do Molecules need to be converted to Structures to use this NearNeighbors class? Note: this property is not defined for classes for which molecules_allowed is False.

                                              @@ -7950,7 +7948,7 @@

                                              Submodules
                                              -get_all_nn_info(structure: Structure)[source]
                                              +get_all_nn_info(structure: Structure)[source]

                                              Get a listing of all neighbors for all sites in a structure.

                                              Parameters:
                                              @@ -7968,7 +7966,7 @@

                                              Submodules
                                              -get_bonded_structure(structure: Structure, decorate: bool = False, weights: bool = True, edge_properties: bool = False, on_disorder: on_disorder_options = 'take_majority_strict') StructureGraph | MoleculeGraph[source]
                                              +get_bonded_structure(structure: Structure, decorate: bool = False, weights: bool = True, edge_properties: bool = False, on_disorder: on_disorder_options = 'take_majority_strict') StructureGraph | MoleculeGraph[source]

                                              Obtain a StructureGraph object using this NearNeighbor class. Requires pip install networkx.

                                              NOTE: The StructureGraph will not contain sites or bonds that are equivalent under lattice vector translations. For more details please see the following discussion: @@ -8000,7 +7998,7 @@

                                              Submodules
                                              -get_cn(structure: Structure, n: int, use_weights: Literal[False] = False, on_disorder: Literal['take_majority_strict', 'take_majority_drop', 'take_max_species', 'error'] = 'take_majority_strict') int[source]
                                              +get_cn(structure: Structure, n: int, use_weights: Literal[False] = False, on_disorder: Literal['take_majority_strict', 'take_majority_drop', 'take_max_species', 'error'] = 'take_majority_strict') int[source]
                                              get_cn(structure: Structure, n: int, use_weights: Literal[True] = True, on_disorder: Literal['take_majority_strict', 'take_majority_drop', 'take_max_species', 'error'] = 'take_majority_strict') float

                                              Get coordination number, CN, of site with index n in structure.

                                              @@ -8030,7 +8028,7 @@

                                              Submodules
                                              -get_cn_dict(structure: Structure, n: int, use_weights: bool = False)[source]
                                              +get_cn_dict(structure: Structure, n: int, use_weights: bool = False)[source]

                                              Get coordination number, CN, of each element bonded to site with index n in structure.

                                              Parameters:
                                              @@ -8054,7 +8052,7 @@

                                              Submodules
                                              -get_local_order_parameters(structure: Structure, n: int)[source]
                                              +get_local_order_parameters(structure: Structure, n: int)[source]

                                              Calculate those local structure order parameters for the given site whose ideal CN corresponds to the underlying motif (e.g., CN=4, then calculate the @@ -8082,7 +8080,7 @@

                                              Submodules
                                              -get_nn(structure: Structure, n: int)[source]
                                              +get_nn(structure: Structure, n: int)[source]

                                              Get near neighbors of site with index n in structure.

                                              Parameters:
                                              @@ -8103,7 +8101,7 @@

                                              Submodules
                                              -get_nn_images(structure: Structure, n: int)[source]
                                              +get_nn_images(structure: Structure, n: int)[source]

                                              Get image location of all near neighbors of site with index n in structure.

                                              @@ -8129,7 +8127,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int) list[dict][source]
                                              +get_nn_info(structure: Structure, n: int) list[dict][source]

                                              Get all near-neighbor sites as well as the associated image locations and weights of the site with index n.

                                              @@ -8159,7 +8157,7 @@

                                              Submodules
                                              -get_nn_shell_info(structure: Structure, site_idx, shell)[source]
                                              +get_nn_shell_info(structure: Structure, site_idx, shell)[source]

                                              Get a certain nearest neighbor shell for a certain site.

                                              Determines all non-backtracking paths through the neighbor network computed by get_nn_info. The weight is determined by multiplying @@ -8194,7 +8192,7 @@

                                              Submodules
                                              -get_weights_of_nn_sites(structure: Structure, n: int)[source]
                                              +get_weights_of_nn_sites(structure: Structure, n: int)[source]

                                              Get weight associated with each near neighbor of site with index n in structure.

                                              @@ -8215,7 +8213,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -8227,7 +8225,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -8241,7 +8239,7 @@

                                              Submodules
                                              -class OpenBabelNN(order=True)[source]
                                              +class OpenBabelNN(order=True)[source]

                                              Bases: NearNeighbors

                                              Determine near-neighbor sites and bond orders using OpenBabel API.

                                              NOTE: This strategy is only appropriate for molecules, and not for @@ -8256,7 +8254,7 @@

                                              Submodules
                                              -property extend_structure_molecules: bool[source]
                                              +property extend_structure_molecules: bool[source]

                                              Do Molecules need to be converted to Structures to use this NearNeighbors class? Note: this property is not defined for classes for which molecules_allowed is False.

                                              @@ -8269,7 +8267,7 @@

                                              Submodules
                                              -get_bonded_structure(structure: Structure, decorate: bool = False) StructureGraph[source]
                                              +get_bonded_structure(structure: Structure, decorate: bool = False) StructureGraph[source]

                                              Obtain a MoleculeGraph object using this NearNeighbor class. Requires the optional dependency networkx (pip install networkx).

                                              @@ -8293,7 +8291,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int)[source]
                                              +get_nn_info(structure: Structure, n: int)[source]

                                              Get all near-neighbor sites and weights (orders) of bonds for a given atom.

                                              @@ -8315,7 +8313,7 @@

                                              Submodules
                                              -get_nn_shell_info(structure: Structure, site_idx, shell)[source]
                                              +get_nn_shell_info(structure: Structure, site_idx, shell)[source]

                                              Get a certain nearest neighbor shell for a certain site.

                                              Determines all non-backtracking paths through the neighbor network computed by get_nn_info. The weight is determined by multiplying @@ -8350,7 +8348,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -8362,7 +8360,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -8376,7 +8374,7 @@

                                              Submodules
                                              -class ValenceIonicRadiusEvaluator(structure: Structure)[source]
                                              +class ValenceIonicRadiusEvaluator(structure: Structure)[source]

                                              Bases: object

                                              Computes site valences and ionic radii for a structure using bond valence analyzer.

                                              @@ -8387,19 +8385,19 @@

                                              Submodules
                                              -property radii[source]
                                              +property radii[source]

                                              List of ionic radii of elements in the order of sites.

                                              -property structure[source]
                                              +property structure[source]

                                              Oxidation state decorated structure.

                                              -property valences[source]
                                              +property valences[source]

                                              List of oxidation states of elements in the order of sites.

                                              @@ -8407,7 +8405,7 @@

                                              Submodules
                                              -class VoronoiNN(tol=0, targets=None, cutoff=13.0, allow_pathological=False, weight='solid_angle', extra_nn_info=True, compute_adj_neighbors=True)[source]
                                              +class VoronoiNN(tol=0, targets=None, cutoff=13.0, allow_pathological=False, weight='solid_angle', extra_nn_info=True, compute_adj_neighbors=True)[source]

                                              Bases: NearNeighbors

                                              Uses a Voronoi algorithm to determine near neighbors for each site in a structure.

                                              @@ -8430,7 +8428,7 @@

                                              Submodules
                                              -get_all_nn_info(structure: Structure)[source]
                                              +get_all_nn_info(structure: Structure)[source]
                                              Parameters:

                                              structure (Structure) – input structure.

                                              @@ -8443,7 +8441,7 @@

                                              Submodules
                                              -get_all_voronoi_polyhedra(structure: Structure)[source]
                                              +get_all_voronoi_polyhedra(structure: Structure)[source]

                                              Get the Voronoi polyhedra for all site in a simulation cell.

                                              Parameters:
                                              @@ -8473,7 +8471,7 @@

                                              Submodules
                                              -get_nn_info(structure: Structure, n: int)[source]
                                              +get_nn_info(structure: Structure, n: int)[source]

                                              Get all near-neighbor sites as well as the associated image locations and weights of the site with index n in structure using Voronoi decomposition.

                                              @@ -8500,7 +8498,7 @@

                                              Submodules
                                              -get_voronoi_polyhedra(structure: Structure, n: int)[source]
                                              +get_voronoi_polyhedra(structure: Structure, n: int)[source]

                                              Get a weighted polyhedra around a site.

                                              See ref: A Proposed Rigorous Definition of Coordination Number, M. O’Keeffe, Acta Cryst. (1979). A35, 772-775

                                              @@ -8536,7 +8534,7 @@

                                              Submodules
                                              -property molecules_allowed: bool[source]
                                              +property molecules_allowed: bool[source]

                                              can this NearNeighbors class be used with Molecule objects?

                                              @@ -8548,7 +8546,7 @@

                                              Submodules
                                              -property structures_allowed: bool[source]
                                              +property structures_allowed: bool[source]

                                              can this NearNeighbors class be used with Structure objects?

                                              @@ -8562,7 +8560,7 @@

                                              Submodules
                                              -get_neighbors_of_site_with_index(struct, n, approach='min_dist', delta=0.1, cutoff=10)[source]
                                              +get_neighbors_of_site_with_index(struct, n, approach='min_dist', delta=0.1, cutoff=10)[source]

                                              Get the neighbors of a given site using a specific neighbor-finding method.

                                              Parameters:
                                              @@ -8586,7 +8584,7 @@

                                              Submodules
                                              -get_okeeffe_distance_prediction(el1, el2)[source]
                                              +get_okeeffe_distance_prediction(el1, el2)[source]

                                              Get an estimate of the bond valence parameter (bond length) using the derived parameters from ‘Atoms Sizes and Bond Lengths in Molecules and Crystals’ (O’Keeffe & Brese, 1991). The estimate is based on two @@ -8609,7 +8607,7 @@

                                              Submodules
                                              -get_okeeffe_params(el_symbol)[source]
                                              +get_okeeffe_params(el_symbol)[source]

                                              Get the elemental parameters related to atom size and electronegativity which are used for estimating bond-valence parameters (bond length) of pairs of atoms on the basis of data provided in ‘Atoms Sizes and Bond Lengths in Molecules and Crystals’ @@ -8629,7 +8627,7 @@

                                              Submodules
                                              -gramschmidt(vin, uin)[source]
                                              +gramschmidt(vin, uin)[source]

                                              Get that part of the first input vector that is orthogonal to the second input vector. The output vector is not normalized.

                                              @@ -8645,7 +8643,7 @@

                                              Submodules
                                              -metal_edge_extender(mol_graph, cutoff: float = 2.5, metals: list | tuple | None = ('Li', 'Mg', 'Ca', 'Zn', 'B', 'Al'), coordinators: list | tuple = ('O', 'N', 'F', 'S', 'Cl'))[source]
                                              +metal_edge_extender(mol_graph, cutoff: float = 2.5, metals: list | tuple | None = ('Li', 'Mg', 'Ca', 'Zn', 'B', 'Al'), coordinators: list | tuple = ('O', 'N', 'F', 'S', 'Cl'))[source]

                                              Identify and add missed coordinate bond edges for metals.

                                              Parameters:
                                              @@ -8681,7 +8679,7 @@

                                              Submodules
                                              -oxygen_edge_extender(mol_graph: MoleculeGraph) MoleculeGraph[source]
                                              +oxygen_edge_extender(mol_graph: MoleculeGraph) MoleculeGraph[source]

                                              Identify and add missed O-C or O-H bonds. This is particularly important when oxygen is forming three bonds, e.g. in H3O+ or XOH2+. See https://github.com/materialsproject/pymatgen/pull/2903 for details.

                                              @@ -8700,7 +8698,7 @@

                                              Submodules
                                              -site_is_of_motif_type(struct, n, approach='min_dist', delta=0.1, cutoff=10, thresh=None)[source]
                                              +site_is_of_motif_type(struct, n, approach='min_dist', delta=0.1, cutoff=10, thresh=None)[source]

                                              Get the motif type of the site with index n in structure struct; currently featuring “tetrahedral”, “octahedral”, “bcc”, and “cp” (close-packed: fcc and hcp) as well as “square pyramidal” and @@ -8735,7 +8733,7 @@

                                              Submodules
                                              -solid_angle(center, coords)[source]
                                              +solid_angle(center, coords)[source]

                                              Helper method to calculate the solid angle of a set of coords from the center.

                                              @@ -8753,7 +8751,7 @@

                                              Submodules
                                              -vol_tetra(vt1, vt2, vt3, vt4)[source]
                                              +vol_tetra(vt1, vt2, vt3, vt4)[source]

                                              Calculate the volume of a tetrahedron, given the four vertices of vt1, vt2, vt3 and vt4.

                                              @@ -8786,14 +8784,14 @@

                                              Submoduleshttps://github.com/charnley/rmsd.

                                              -class AbstractMolAtomMapper[source]
                                              +class AbstractMolAtomMapper[source]

                                              Bases: MSONable, ABC

                                              Abstract molecular atom order mapping class. A mapping will be able to find the uniform atom order of two molecules that can pair the geometrically equivalent atoms.

                                              -classmethod from_dict(dct: dict) Self[source]
                                              +classmethod from_dict(dct: dict) Self[source]
                                              Parameters:

                                              dct (dict) – Dict representation.

                                              @@ -8806,7 +8804,7 @@

                                              Submodules
                                              -abstract get_molecule_hash(mol)[source]
                                              +abstract get_molecule_hash(mol)[source]

                                              Defines a hash for molecules. This allows molecules to be grouped efficiently for comparison.

                                              @@ -8821,7 +8819,7 @@

                                              Submodules
                                              -abstract uniform_labels(mol1, mol2)[source]
                                              +abstract uniform_labels(mol1, mol2)[source]

                                              Pair the geometrically equivalent atoms of the molecules.

                                              Parameters:
                                              @@ -8851,7 +8849,7 @@

                                              Submodules
                                              -class BruteForceOrderMatcher(target: Molecule)[source]
                                              +class BruteForceOrderMatcher(target: Molecule)[source]

                                              Bases: KabschMatcher

                                              Finding the best match between molecules by selecting molecule order with the smallest RMSD from all the possible order combinations.

                                              @@ -8866,7 +8864,7 @@

                                              Submodules
                                              -fit(p: Molecule, ignore_warning=False)[source]
                                              +fit(p: Molecule, ignore_warning=False)[source]

                                              Order, rotate and transform p molecule according to the best match.

                                              A ValueError will be raised when the total number of possible combinations become unfeasible (more than a million combinations).

                                              @@ -8889,7 +8887,7 @@

                                              Submodules
                                              -match(mol: Molecule, ignore_warning: bool = False) tuple[ndarray, ndarray, ndarray, float][source]
                                              +match(mol: Molecule, ignore_warning: bool = False) tuple[ndarray, ndarray, ndarray, float][source]

                                              Similar as KabschMatcher.match but this method also finds the order of atoms which belongs to the best match.

                                              A ValueError will be raised when the total number of possible combinations @@ -8915,7 +8913,7 @@

                                              Submodules
                                              -static permutations(atoms)[source]
                                              +static permutations(atoms)[source]

                                              Generate all the possible permutations of atom order. To achieve better performance all the cases where the atoms are different has been ignored.

                                              @@ -8924,7 +8922,7 @@

                                              Submodules
                                              -class GeneticOrderMatcher(target: Molecule, threshold: float)[source]
                                              +class GeneticOrderMatcher(target: Molecule, threshold: float)[source]

                                              Bases: KabschMatcher

                                              This method was inspired by genetic algorithms and tries to match molecules based on their already matched fragments.

                                              @@ -8953,7 +8951,7 @@

                                              Submodules
                                              -fit(p: Molecule)[source]
                                              +fit(p: Molecule)[source]

                                              Order, rotate and transform all of the matched p molecule according to the given threshold.

                                              @@ -8976,7 +8974,7 @@

                                              Submodules
                                              -match(p: Molecule)[source]
                                              +match(p: Molecule)[source]

                                              Similar as KabschMatcher.match but this method also finds all of the possible atomic orders according to the threshold.

                                              @@ -8997,7 +8995,7 @@

                                              Submodules
                                              -permutations(p: Molecule)[source]
                                              +permutations(p: Molecule)[source]

                                              Generate all of possible permutations of atom order according the threshold.

                                              Parameters:
                                              @@ -9013,7 +9011,7 @@

                                              Submodules
                                              -class HungarianOrderMatcher(target: Molecule)[source]
                                              +class HungarianOrderMatcher(target: Molecule)[source]

                                              Bases: KabschMatcher

                                              Pre-align the molecules based on their principal inertia axis and then re-orders the input atom list using the Hungarian method.

                                              @@ -9029,7 +9027,7 @@

                                              Submodules
                                              -fit(p: Molecule)[source]
                                              +fit(p: Molecule)[source]

                                              Order, rotate and transform p molecule according to the best match.

                                              Parameters:
                                              @@ -9047,7 +9045,7 @@

                                              Submodules
                                              -static get_principal_axis(coords, weights)[source]
                                              +static get_principal_axis(coords, weights)[source]

                                              Get the molecule’s principal axis.

                                              Parameters:
                                              @@ -9064,7 +9062,7 @@

                                              Submodules
                                              -match(p: Molecule)[source]
                                              +match(p: Molecule)[source]

                                              Similar as KabschMatcher.match but this method also finds the order of atoms which belongs to the best match.

                                              @@ -9085,7 +9083,7 @@

                                              Submodules
                                              -static permutations(p_atoms, p_centroid, p_weights, q_atoms, q_centroid, q_weights)[source]
                                              +static permutations(p_atoms, p_centroid, p_weights, q_atoms, q_centroid, q_weights)[source]

                                              Generate two possible permutations of atom order. This method uses the principle component of the inertia tensor to pre-align the molecules and hungarian method to determine the order. There are always two possible permutation depending on the way to pre-aligning the molecules.

                                              @@ -9108,7 +9106,7 @@

                                              Submodules
                                              -static rotation_matrix_vectors(v1, v2)[source]
                                              +static rotation_matrix_vectors(v1, v2)[source]

                                              Get the rotation matrix that rotates v1 onto v2 using Rodrigues’ rotation formula.

                                              See more: https://math.stackexchange.com/a/476311

                                              @@ -9129,7 +9127,7 @@

                                              Submodules
                                              -class InchiMolAtomMapper(angle_tolerance=10.0)[source]
                                              +class InchiMolAtomMapper(angle_tolerance=10.0)[source]

                                              Bases: AbstractMolAtomMapper

                                              Pair atoms by inchi labels.

                                              @@ -9139,13 +9137,13 @@

                                              Submodules
                                              -as_dict()[source]
                                              +as_dict()[source]

                                              Get MSONable dict.

                                              -classmethod from_dict(dct: dict) Self[source]
                                              +classmethod from_dict(dct: dict) Self[source]
                                              Parameters:

                                              dct (dict) – Dict Representation.

                                              @@ -9158,13 +9156,13 @@

                                              Submodules
                                              -get_molecule_hash(mol)[source]
                                              +get_molecule_hash(mol)[source]

                                              Return inchi as molecular hash.

                                              -uniform_labels(mol1, mol2)[source]
                                              +uniform_labels(mol1, mol2)[source]
                                              Parameters:
                                                @@ -9182,18 +9180,18 @@

                                                Submodules
                                                -class IsomorphismMolAtomMapper[source]
                                                +class IsomorphismMolAtomMapper[source]

                                                Bases: AbstractMolAtomMapper

                                                Pair atoms by isomorphism permutations in the OpenBabel::OBAlign class.

                                                -as_dict()[source]
                                                +as_dict()[source]

                                                Get MSONable dict.

                                                -classmethod from_dict(dct: dict) Self[source]
                                                +classmethod from_dict(dct: dict) Self[source]
                                                Parameters:

                                                dct (dict) – Dict representation.

                                                @@ -9206,13 +9204,13 @@

                                                Submodules
                                                -get_molecule_hash(mol)[source]
                                                +get_molecule_hash(mol)[source]

                                                Return inchi as molecular hash.

                                                -uniform_labels(mol1, mol2)[source]
                                                +uniform_labels(mol1, mol2)[source]

                                                Pair the geometrically equivalent atoms of the molecules. Calculate RMSD on all possible isomorphism mappings and return mapping with the least RMSD.

                                                @@ -9244,7 +9242,7 @@

                                                Submodules
                                                -class KabschMatcher(target: Molecule)[source]
                                                +class KabschMatcher(target: Molecule)[source]

                                                Bases: MSONable

                                                Molecule matcher using Kabsch algorithm.

                                                The Kabsch algorithm capable aligning two molecules by finding the parameters @@ -9261,7 +9259,7 @@

                                                Submodules
                                                -fit(p: Molecule)[source]
                                                +fit(p: Molecule)[source]

                                                Rotate and transform p molecule according to the best match.

                                                Parameters:
                                                @@ -9279,7 +9277,7 @@

                                                Submodules
                                                -static kabsch(P: ndarray, Q: ndarray)[source]
                                                +static kabsch(P: ndarray, Q: ndarray)[source]

                                                The Kabsch algorithm is a method for calculating the optimal rotation matrix that minimizes the root mean squared deviation (RMSD) between two paired sets of points P and Q, centered around the their centroid.

                                                @@ -9304,7 +9302,7 @@

                                                Submodules
                                                -match(p: Molecule)[source]
                                                +match(p: Molecule)[source]

                                                Using the Kabsch algorithm the alignment of two molecules (P, Q) happens in three steps: - translate the P and Q into their centroid @@ -9334,7 +9332,7 @@

                                                Submodules
                                                -class MoleculeMatcher(tolerance: float = 0.01, mapper=None)[source]
                                                +class MoleculeMatcher(tolerance: float = 0.01, mapper=None)[source]

                                                Bases: MSONable

                                                Match molecules and identify whether molecules are the same.

                                                @@ -9349,13 +9347,13 @@

                                                Submodules
                                                -as_dict()[source]
                                                +as_dict()[source]

                                                Get MSONable dict.

                                                -fit(mol1, mol2)[source]
                                                +fit(mol1, mol2)[source]

                                                Fit two molecules.

                                                Parameters:
                                                @@ -9375,7 +9373,7 @@

                                                Submodules
                                                -classmethod from_dict(dct: dict) Self[source]
                                                +classmethod from_dict(dct: dict) Self[source]
                                                Parameters:

                                                dct (dict) – Dict representation.

                                                @@ -9388,7 +9386,7 @@

                                                Submodules
                                                -get_rmsd(mol1, mol2)[source]
                                                +get_rmsd(mol1, mol2)[source]

                                                Get RMSD between two molecule with arbitrary atom order.

                                                Returns:
                                                @@ -9400,7 +9398,7 @@

                                                Submodules
                                                -group_molecules(mol_list)[source]
                                                +group_molecules(mol_list)[source]

                                                Group molecules by structural equality.

                                                Parameters:
                                                @@ -9428,20 +9426,20 @@

                                                Submodules
                                                -class CovalentRadius[source]
                                                +class CovalentRadius[source]

                                                Bases: object

                                                Covalent radius of the elements.

                                                Beatriz C. et al. Dalton Trans. 2008, 2832-2838. https://doi.org/10.1039/b801115j

                                                -radius: ClassVar = {'Ac': 2.15, 'Ag': 1.45, 'Al': 1.21, 'Am': 1.8, 'Ar': 1.06, 'As': 1.19, 'At': 1.5, 'Au': 1.36, 'B': 0.84, 'Ba': 2.15, 'Be': 0.96, 'Bi': 1.48, 'Br': 1.2, 'C': 0.73, 'Ca': 1.76, 'Cd': 1.44, 'Ce': 2.04, 'Cl': 1.02, 'Cm': 1.69, 'Co': 1.38, 'Cr': 1.39, 'Cs': 2.44, 'Cu': 1.32, 'Dy': 1.92, 'Er': 1.89, 'Eu': 1.98, 'F': 0.57, 'Fe': 1.42, 'Fr': 2.6, 'Ga': 1.22, 'Gd': 1.96, 'Ge': 1.2, 'H': 0.31, 'He': 0.28, 'Hf': 1.75, 'Hg': 1.32, 'Ho': 1.92, 'I': 1.39, 'In': 1.42, 'Ir': 1.41, 'K': 2.03, 'Kr': 1.16, 'La': 2.07, 'Li': 1.28, 'Lu': 1.87, 'Mg': 1.41, 'Mn': 1.5, 'Mo': 1.54, 'N': 0.71, 'Na': 1.66, 'Nb': 1.64, 'Nd': 2.01, 'Ne': 0.58, 'Ni': 1.24, 'Np': 1.9, 'O': 0.66, 'Os': 1.44, 'P': 1.07, 'Pa': 2, 'Pb': 1.46, 'Pd': 1.39, 'Pm': 1.99, 'Po': 1.4, 'Pr': 2.03, 'Pt': 1.36, 'Pu': 1.87, 'Ra': 2.21, 'Rb': 2.2, 'Re': 1.51, 'Rh': 1.42, 'Rn': 1.5, 'Ru': 1.46, 'S': 1.05, 'Sb': 1.39, 'Sc': 1.7, 'Se': 1.2, 'Si': 1.11, 'Sm': 1.98, 'Sn': 1.39, 'Sr': 1.95, 'Ta': 1.7, 'Tb': 1.94, 'Tc': 1.47, 'Te': 1.38, 'Th': 2.06, 'Ti': 1.6, 'Tl': 1.45, 'Tm': 1.9, 'U': 1.96, 'V': 1.53, 'W': 1.62, 'Xe': 1.4, 'Y': 1.9, 'Yb': 1.87, 'Zn': 1.22, 'Zr': 1.75}[source]
                                                +radius: ClassVar = {'Ac': 2.15, 'Ag': 1.45, 'Al': 1.21, 'Am': 1.8, 'Ar': 1.06, 'As': 1.19, 'At': 1.5, 'Au': 1.36, 'B': 0.84, 'Ba': 2.15, 'Be': 0.96, 'Bi': 1.48, 'Br': 1.2, 'C': 0.73, 'Ca': 1.76, 'Cd': 1.44, 'Ce': 2.04, 'Cl': 1.02, 'Cm': 1.69, 'Co': 1.38, 'Cr': 1.39, 'Cs': 2.44, 'Cu': 1.32, 'Dy': 1.92, 'Er': 1.89, 'Eu': 1.98, 'F': 0.57, 'Fe': 1.42, 'Fr': 2.6, 'Ga': 1.22, 'Gd': 1.96, 'Ge': 1.2, 'H': 0.31, 'He': 0.28, 'Hf': 1.75, 'Hg': 1.32, 'Ho': 1.92, 'I': 1.39, 'In': 1.42, 'Ir': 1.41, 'K': 2.03, 'Kr': 1.16, 'La': 2.07, 'Li': 1.28, 'Lu': 1.87, 'Mg': 1.41, 'Mn': 1.5, 'Mo': 1.54, 'N': 0.71, 'Na': 1.66, 'Nb': 1.64, 'Nd': 2.01, 'Ne': 0.58, 'Ni': 1.24, 'Np': 1.9, 'O': 0.66, 'Os': 1.44, 'P': 1.07, 'Pa': 2, 'Pb': 1.46, 'Pd': 1.39, 'Pm': 1.99, 'Po': 1.4, 'Pr': 2.03, 'Pt': 1.36, 'Pu': 1.87, 'Ra': 2.21, 'Rb': 2.2, 'Re': 1.51, 'Rh': 1.42, 'Rn': 1.5, 'Ru': 1.46, 'S': 1.05, 'Sb': 1.39, 'Sc': 1.7, 'Se': 1.2, 'Si': 1.11, 'Sm': 1.98, 'Sn': 1.39, 'Sr': 1.95, 'Ta': 1.7, 'Tb': 1.94, 'Tc': 1.47, 'Te': 1.38, 'Th': 2.06, 'Ti': 1.6, 'Tl': 1.45, 'Tm': 1.9, 'U': 1.96, 'V': 1.53, 'W': 1.62, 'Xe': 1.4, 'Y': 1.9, 'Yb': 1.87, 'Zn': 1.22, 'Zr': 1.75}[source]

                                                -class MoleculeStructureComparator(bond_length_cap=0.3, covalent_radius={'Ac': 2.15, 'Ag': 1.45, 'Al': 1.21, 'Am': 1.8, 'Ar': 1.06, 'As': 1.19, 'At': 1.5, 'Au': 1.36, 'B': 0.84, 'Ba': 2.15, 'Be': 0.96, 'Bi': 1.48, 'Br': 1.2, 'C': 0.73, 'Ca': 1.76, 'Cd': 1.44, 'Ce': 2.04, 'Cl': 1.02, 'Cm': 1.69, 'Co': 1.38, 'Cr': 1.39, 'Cs': 2.44, 'Cu': 1.32, 'Dy': 1.92, 'Er': 1.89, 'Eu': 1.98, 'F': 0.57, 'Fe': 1.42, 'Fr': 2.6, 'Ga': 1.22, 'Gd': 1.96, 'Ge': 1.2, 'H': 0.31, 'He': 0.28, 'Hf': 1.75, 'Hg': 1.32, 'Ho': 1.92, 'I': 1.39, 'In': 1.42, 'Ir': 1.41, 'K': 2.03, 'Kr': 1.16, 'La': 2.07, 'Li': 1.28, 'Lu': 1.87, 'Mg': 1.41, 'Mn': 1.5, 'Mo': 1.54, 'N': 0.71, 'Na': 1.66, 'Nb': 1.64, 'Nd': 2.01, 'Ne': 0.58, 'Ni': 1.24, 'Np': 1.9, 'O': 0.66, 'Os': 1.44, 'P': 1.07, 'Pa': 2, 'Pb': 1.46, 'Pd': 1.39, 'Pm': 1.99, 'Po': 1.4, 'Pr': 2.03, 'Pt': 1.36, 'Pu': 1.87, 'Ra': 2.21, 'Rb': 2.2, 'Re': 1.51, 'Rh': 1.42, 'Rn': 1.5, 'Ru': 1.46, 'S': 1.05, 'Sb': 1.39, 'Sc': 1.7, 'Se': 1.2, 'Si': 1.11, 'Sm': 1.98, 'Sn': 1.39, 'Sr': 1.95, 'Ta': 1.7, 'Tb': 1.94, 'Tc': 1.47, 'Te': 1.38, 'Th': 2.06, 'Ti': 1.6, 'Tl': 1.45, 'Tm': 1.9, 'U': 1.96, 'V': 1.53, 'W': 1.62, 'Xe': 1.4, 'Y': 1.9, 'Yb': 1.87, 'Zn': 1.22, 'Zr': 1.75}, priority_bonds=(), priority_cap=0.8, ignore_ionic_bond=True, bond_13_cap=0.05)[source]
                                                +class MoleculeStructureComparator(bond_length_cap=0.3, covalent_radius={'Ac': 2.15, 'Ag': 1.45, 'Al': 1.21, 'Am': 1.8, 'Ar': 1.06, 'As': 1.19, 'At': 1.5, 'Au': 1.36, 'B': 0.84, 'Ba': 2.15, 'Be': 0.96, 'Bi': 1.48, 'Br': 1.2, 'C': 0.73, 'Ca': 1.76, 'Cd': 1.44, 'Ce': 2.04, 'Cl': 1.02, 'Cm': 1.69, 'Co': 1.38, 'Cr': 1.39, 'Cs': 2.44, 'Cu': 1.32, 'Dy': 1.92, 'Er': 1.89, 'Eu': 1.98, 'F': 0.57, 'Fe': 1.42, 'Fr': 2.6, 'Ga': 1.22, 'Gd': 1.96, 'Ge': 1.2, 'H': 0.31, 'He': 0.28, 'Hf': 1.75, 'Hg': 1.32, 'Ho': 1.92, 'I': 1.39, 'In': 1.42, 'Ir': 1.41, 'K': 2.03, 'Kr': 1.16, 'La': 2.07, 'Li': 1.28, 'Lu': 1.87, 'Mg': 1.41, 'Mn': 1.5, 'Mo': 1.54, 'N': 0.71, 'Na': 1.66, 'Nb': 1.64, 'Nd': 2.01, 'Ne': 0.58, 'Ni': 1.24, 'Np': 1.9, 'O': 0.66, 'Os': 1.44, 'P': 1.07, 'Pa': 2, 'Pb': 1.46, 'Pd': 1.39, 'Pm': 1.99, 'Po': 1.4, 'Pr': 2.03, 'Pt': 1.36, 'Pu': 1.87, 'Ra': 2.21, 'Rb': 2.2, 'Re': 1.51, 'Rh': 1.42, 'Rn': 1.5, 'Ru': 1.46, 'S': 1.05, 'Sb': 1.39, 'Sc': 1.7, 'Se': 1.2, 'Si': 1.11, 'Sm': 1.98, 'Sn': 1.39, 'Sr': 1.95, 'Ta': 1.7, 'Tb': 1.94, 'Tc': 1.47, 'Te': 1.38, 'Th': 2.06, 'Ti': 1.6, 'Tl': 1.45, 'Tm': 1.9, 'U': 1.96, 'V': 1.53, 'W': 1.62, 'Xe': 1.4, 'Y': 1.9, 'Yb': 1.87, 'Zn': 1.22, 'Zr': 1.75}, priority_bonds=(), priority_cap=0.8, ignore_ionic_bond=True, bond_13_cap=0.05)[source]

                                                Bases: MSONable

                                                Check whether the connection tables of the two molecules are the same. The atom in the two molecule must be paired accordingly.

                                                @@ -9464,7 +9462,7 @@

                                                Submodules
                                                -are_equal(mol1, mol2) bool[source]
                                                +are_equal(mol1, mol2) bool[source]

                                                Compare the bond table of the two molecules.

                                                Parameters:
                                                @@ -9478,13 +9476,13 @@

                                                Submodules
                                                -as_dict()[source]
                                                +as_dict()[source]

                                                Get MSONable dict.

                                                -classmethod from_dict(dct: dict) Self[source]
                                                +classmethod from_dict(dct: dict) Self[source]
                                                Parameters:

                                                dct (dict) – Dict representation.

                                                @@ -9497,7 +9495,7 @@

                                                Submodules
                                                -static get_13_bonds(priority_bonds)[source]
                                                +static get_13_bonds(priority_bonds)[source]
                                                Parameters:

                                                priority_bonds (list[tuple]) – 12 bonds

                                                @@ -9513,12 +9511,12 @@

                                                Submodules
                                                -halogen_list = ('F', 'Cl', 'Br', 'I')[source]
                                                +halogen_list = ('F', 'Cl', 'Br', 'I')[source]

                                                -ionic_element_list = ('Na', 'Mg', 'Al', 'Sc', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Rb', 'Sr')[source]
                                                +ionic_element_list = ('Na', 'Mg', 'Al', 'Sc', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 'Cu', 'Zn', 'Ga', 'Rb', 'Sr')[source]

                                                @@ -9529,7 +9527,7 @@

                                                Submodules
                                                -class ChemicalShielding(cs_matrix, vscale=None)[source]
                                                +class ChemicalShielding(cs_matrix, vscale=None)[source]

                                                Bases: SquareTensor

                                                This class extends the SquareTensor to perform extra analysis unique to NMR Chemical shielding tensors.

                                                @@ -9554,30 +9552,30 @@

                                                Submodules
                                                -class HaeberlenNotation(sigma_iso, delta_sigma_iso, zeta, eta)[source]
                                                +class HaeberlenNotation(sigma_iso, delta_sigma_iso, zeta, eta)[source]

                                                Bases: NamedTuple

                                                Create new instance of HaeberlenNotation(sigma_iso, delta_sigma_iso, zeta, eta)

                                                -delta_sigma_iso: Any[source]
                                                +delta_sigma_iso: Any[source]

                                                Alias for field number 1

                                                -eta: Any[source]
                                                +eta: Any[source]

                                                Alias for field number 3

                                                -sigma_iso: Any[source]
                                                +sigma_iso: Any[source]

                                                Alias for field number 0

                                                -zeta: Any[source]
                                                +zeta: Any[source]

                                                Alias for field number 2

                                                @@ -9585,24 +9583,24 @@

                                                Submodules
                                                -class MarylandNotation(sigma_iso, omega, kappa)[source]
                                                +class MarylandNotation(sigma_iso, omega, kappa)[source]

                                                Bases: NamedTuple

                                                Create new instance of MarylandNotation(sigma_iso, omega, kappa)

                                                -kappa: Any[source]
                                                +kappa: Any[source]

                                                Alias for field number 2

                                                -omega: Any[source]
                                                +omega: Any[source]

                                                Alias for field number 1

                                                -sigma_iso: Any[source]
                                                +sigma_iso: Any[source]

                                                Alias for field number 0

                                                @@ -9610,30 +9608,30 @@

                                                Submodules
                                                -class MehringNotation(sigma_iso, sigma_11, sigma_22, sigma_33)[source]
                                                +class MehringNotation(sigma_iso, sigma_11, sigma_22, sigma_33)[source]

                                                Bases: NamedTuple

                                                Create new instance of MehringNotation(sigma_iso, sigma_11, sigma_22, sigma_33)

                                                -sigma_11: Any[source]
                                                +sigma_11: Any[source]

                                                Alias for field number 1

                                                -sigma_22: Any[source]
                                                +sigma_22: Any[source]

                                                Alias for field number 2

                                                -sigma_33: Any[source]
                                                +sigma_33: Any[source]

                                                Alias for field number 3

                                                -sigma_iso: Any[source]
                                                +sigma_iso: Any[source]

                                                Alias for field number 0

                                                @@ -9641,7 +9639,7 @@

                                                Submodules
                                                -classmethod from_maryland_notation(sigma_iso, omega, kappa) Self[source]
                                                +classmethod from_maryland_notation(sigma_iso, omega, kappa) Self[source]

                                                Initialize from Maryland notation.

                                                Parameters:
                                                @@ -9659,25 +9657,25 @@

                                                Submodules
                                                -property haeberlen_values[source]
                                                +property haeberlen_values[source]

                                                The Chemical shielding tensor in Haeberlen Notation.

                                                -property maryland_values[source]
                                                +property maryland_values[source]

                                                The Chemical shielding tensor in Maryland Notation.

                                                -property mehring_values[source]
                                                +property mehring_values[source]

                                                The Chemical shielding tensor in Mehring Notation.

                                                -property principal_axis_system[source]
                                                +property principal_axis_system[source]

                                                A chemical shielding tensor aligned to the principle axis system so that only the 3 diagonal components are non-zero.

                                                @@ -9686,7 +9684,7 @@

                                                Submodules
                                                -class ElectricFieldGradient(efg_matrix, vscale=None)[source]
                                                +class ElectricFieldGradient(efg_matrix, vscale=None)[source]

                                                Bases: SquareTensor

                                                This class extends the SquareTensor to perform extra analysis unique to NMR Electric Field Gradient tensors in units of V/Angstrom^2.

                                                @@ -9709,31 +9707,31 @@

                                                Submodules
                                                -property V_xx[source]
                                                +property V_xx[source]

                                                First diagonal element.

                                                -property V_yy[source]
                                                +property V_yy[source]

                                                Second diagonal element.

                                                -property V_zz[source]
                                                +property V_zz[source]

                                                Third diagonal element.

                                                -property asymmetry[source]
                                                +property asymmetry[source]

                                                Asymmetry of the electric field tensor defined as (V_yy - V_xx)/V_zz.

                                                -coupling_constant(specie)[source]
                                                +coupling_constant(specie)[source]

                                                Compute the coupling constant C_q as defined in:

                                                Wasylishen R E, Ashbrook S E, Wimperis S. NMR of quadrupolar nuclei @@ -9762,7 +9760,7 @@

                                                Submodules
                                                -property principal_axis_system[source]
                                                +property principal_axis_system[source]

                                                An electric field gradient tensor aligned to the principle axis system so that only the 3 diagonal components are non-zero.

                                                @@ -9775,7 +9773,7 @@

                                                Submodules
                                                -class CompoundPhaseDiagram(entries, terminal_compositions, normalize_terminal_compositions=True)[source]
                                                +class CompoundPhaseDiagram(entries, terminal_compositions, normalize_terminal_compositions=True)[source]

                                                Bases: PhaseDiagram

                                                Generates phase diagrams from compounds as terminations instead of elements.

                                                @@ -9799,18 +9797,18 @@

                                                Submodules
                                                -amount_tol = 1e-05[source]
                                                +amount_tol = 1e-05[source]

                                                -as_dict()[source]
                                                +as_dict()[source]

                                                Get MSONable dict representation of CompoundPhaseDiagram.

                                                -classmethod from_dict(dct: dict) Self[source]
                                                +classmethod from_dict(dct: dict) Self[source]
                                                Parameters:

                                                dct (dict) – dictionary representation of CompoundPhaseDiagram.

                                                @@ -9823,7 +9821,7 @@

                                                Submodules
                                                -static num2str(num)[source]
                                                +static num2str(num)[source]

                                                Convert number to a list of letter(s). First letter must be f.

                                                Parameters:
                                                @@ -9838,7 +9836,7 @@

                                                Submodules
                                                -transform_entries(entries, terminal_compositions)[source]
                                                +transform_entries(entries, terminal_compositions)[source]

                                                Method to transform all entries to the composition coordinate in the terminal compositions. If the entry does not fall within the space defined by the terminal compositions, they are excluded. For example, @@ -9861,7 +9859,7 @@

                                                Submodules
                                                -class GrandPotPDEntry(entry, chempots, name=None)[source]
                                                +class GrandPotPDEntry(entry, chempots, name=None)[source]

                                                Bases: PDEntry

                                                A grand potential pd entry object encompassing all relevant data for phase diagrams. Chemical potentials are given as a element-chemical potential @@ -9878,13 +9876,13 @@

                                                Submodules
                                                -as_dict()[source]
                                                +as_dict()[source]

                                                Get MSONable dict representation of GrandPotPDEntry.

                                                -property chemical_energy[source]
                                                +property chemical_energy[source]

                                                The chemical energy term mu*N in the grand potential.

                                                Returns:
                                                @@ -9895,7 +9893,7 @@

                                                Submodules
                                                -property composition: Composition[source]
                                                +property composition: Composition[source]

                                                The composition after removing free species.

                                                Returns:
                                                @@ -9906,13 +9904,13 @@

                                                Submodules
                                                -property energy: float[source]
                                                +property energy: float[source]

                                                Grand potential energy.

                                                -classmethod from_dict(dct: dict) Self[source]
                                                +classmethod from_dict(dct: dict) Self[source]
                                                Parameters:

                                                dct (dict) – dictionary representation of GrandPotPDEntry.

                                                @@ -9927,7 +9925,7 @@

                                                Submodules
                                                -class GrandPotentialPhaseDiagram(entries, chempots, elements=None, *, computed_data=None)[source]
                                                +class GrandPotentialPhaseDiagram(entries, chempots, elements=None, *, computed_data=None)[source]

                                                Bases: PhaseDiagram

                                                A class representing a Grand potential phase diagram. Grand potential phase diagrams are essentially phase diagrams that are open to one or more @@ -9966,13 +9964,13 @@

                                                Submodules
                                                -as_dict()[source]
                                                +as_dict()[source]

                                                Get MSONable dict representation of GrandPotentialPhaseDiagram.

                                                -classmethod from_dict(dct: dict) Self[source]
                                                +classmethod from_dict(dct: dict) Self[source]
                                                Parameters:

                                                dct (dict) – dictionary representation of GrandPotentialPhaseDiagram.

                                                @@ -9987,12 +9985,12 @@

                                                Submodules
                                                -class PDEntry(composition: Composition, energy: float, name: str | None = None, attribute: object = None)[source]
                                                +class PDEntry(composition: Composition, energy: float, name: str | None = None, attribute: object = None)[source]

                                                Bases: Entry

                                                An object encompassing all relevant data for phase diagrams.

                                                -composition[source]
                                                +composition[source]

                                                The composition associated with the PDEntry.

                                                Type:
                                                @@ -10003,7 +10001,7 @@

                                                Submodules
                                                -energy[source]
                                                +energy[source]

                                                The energy associated with the entry.

                                                Type:
                                                @@ -10014,7 +10012,7 @@

                                                Submodules
                                                -name[source]
                                                +name[source]

                                                A name for the entry. This is the string shown in the phase diagrams. By default, this is the reduced formula for the composition, but can be set to some other string for display purposes.

                                                @@ -10027,7 +10025,7 @@

                                                Submodules
                                                -attribute[source]
                                                +attribute[source]

                                                A arbitrary attribute. Can be used to specify that the entry is a newly found compound, or to specify a particular label for the entry, etc. An attribute can be anything but must be MSONable.

                                                @@ -10051,19 +10049,19 @@

                                                Submodules
                                                -as_dict()[source]
                                                +as_dict()[source]

                                                Get MSONable dict representation of PDEntry.

                                                -property energy: float[source]
                                                +property energy: float[source]

                                                The entry’s energy.

                                                -classmethod from_dict(dct: dict) Self[source]
                                                +classmethod from_dict(dct: dict) Self[source]
                                                Parameters:

                                                dct (dict) – dictionary representation of PDEntry.

                                                @@ -10078,7 +10076,7 @@

                                                Submodules
                                                -class PDPlotter(phasediagram: PhaseDiagram, show_unstable: float = 0.2, backend: Literal['plotly', 'matplotlib'] = 'plotly', ternary_style: Literal['2d', '3d'] = '2d', **plotkwargs)[source]
                                                +class PDPlotter(phasediagram: PhaseDiagram, show_unstable: float = 0.2, backend: Literal['plotly', 'matplotlib'] = 'plotly', ternary_style: Literal['2d', '3d'] = '2d', **plotkwargs)[source]

                                                Bases: object

                                                A plotting class for compositional phase diagrams.

                                                To use, initialize this class with a PhaseDiagram object containing 1-4 components @@ -10114,7 +10112,7 @@

                                                Submodules
                                                -get_chempot_range_map_plot(elements, referenced=True)[source]
                                                +get_chempot_range_map_plot(elements, referenced=True)[source]

                                                Get a plot of the chemical potential range _map. Currently works only for 3-component PDs.

                                                Note: this functionality is now included in the ChemicalPotentialDiagram @@ -10141,7 +10139,7 @@

                                                Submodules
                                                -get_contour_pd_plot()[source]
                                                +get_contour_pd_plot()[source]

                                                Plot a contour phase diagram plot, where phase triangles are colored according to degree of instability by interpolation. Currently only works for 3-component phase diagrams.

                                                @@ -10154,7 +10152,7 @@

                                                Submodules
                                                -get_plot(label_stable: bool = True, label_unstable: bool = True, ordering: Sequence[str] | None = None, energy_colormap=None, process_attributes: bool = False, ax: plt.Axes = None, label_uncertainties: bool = False, fill: bool = True, highlight_entries: Collection[PDEntry] | None = None) go.Figure | plt.Axes[source]
                                                +get_plot(label_stable: bool = True, label_unstable: bool = True, ordering: Sequence[str] | None = None, energy_colormap=None, process_attributes: bool = False, ax: plt.Axes = None, label_uncertainties: bool = False, fill: bool = True, highlight_entries: Collection[PDEntry] | None = None) go.Figure | plt.Axes[source]
                                                Parameters:
                                                  @@ -10187,7 +10185,7 @@

                                                  Submodules
                                                  -property pd_plot_data[source]
                                                  +property pd_plot_data[source]

                                                  Plotting data for phase diagram. Cached for repetitive calls.

                                                  2-comp - Full hull with energies 3/4-comp - Projection into 2D or 3D Gibbs triangles

                                                  @@ -10217,7 +10215,7 @@

                                                  Submodules
                                                  -plot_chempot_range_map(elements, referenced=True) None[source]
                                                  +plot_chempot_range_map(elements, referenced=True) None[source]

                                                  Plot the chemical potential range _map using matplotlib. Currently works only for 3-component PDs. This shows the plot but does not return it.

                                                  Note: this functionality is now included in the ChemicalPotentialDiagram @@ -10238,7 +10236,7 @@

                                                  Submodules
                                                  -plot_element_profile(element, comp, show_label_index=None, xlim=5)[source]
                                                  +plot_element_profile(element, comp, show_label_index=None, xlim=5)[source]

                                                  Draw the element profile plot for a composition varying different chemical potential of an element.

                                                  X value is the negative value of the chemical potential reference to @@ -10272,7 +10270,7 @@

                                                  Submodules
                                                  -show(*args, **kwargs) None[source]
                                                  +show(*args, **kwargs) None[source]

                                                  Draw the phase diagram with the provided arguments and display it. This shows the figure but does not return it.

                                                  @@ -10287,7 +10285,7 @@

                                                  Submodules
                                                  -write_image(stream: str | StringIO, image_format: str = 'svg', **kwargs) None[source]
                                                  +write_image(stream: str | StringIO, image_format: str = 'svg', **kwargs) None[source]

                                                  Directly save the plot to a file. This is a wrapper for calling plt.savefig() or fig.write_image(), depending on the backend. For more customization, it is recommended to call those methods directly.

                                                  @@ -10307,7 +10305,7 @@

                                                  Submodules
                                                  -class PatchedPhaseDiagram(entries: Sequence[PDEntry] | set[PDEntry], elements: Sequence[Element] | None = None, keep_all_spaces: bool = False, verbose: bool = False)[source]
                                                  +class PatchedPhaseDiagram(entries: Sequence[PDEntry] | set[PDEntry], elements: Sequence[Element] | None = None, keep_all_spaces: bool = False, verbose: bool = False)[source]

                                                  Bases: PhaseDiagram

                                                  Computing the Convex Hull of a large set of data in multiple dimensions is highly expensive. This class acts to breakdown large chemical spaces into @@ -10329,7 +10327,7 @@

                                                  Submodules
                                                  -all_entries[source]
                                                  +all_entries[source]

                                                  All entries provided for Phase Diagram construction. Note that this does not mean that all these entries are actually used in the phase diagram. For example, this includes the positive formation energy @@ -10343,7 +10341,7 @@

                                                  Submodules
                                                  -min_entries[source]
                                                  +min_entries[source]

                                                  List of the lowest energy entries for each composition in the data provided for Phase Diagram construction.

                                                  @@ -10355,7 +10353,7 @@

                                                  Submodules
                                                  -el_refs[source]
                                                  +el_refs[source]

                                                  List of elemental references for the phase diagrams. These are entries corresponding to the lowest energy element entries for simple compositional phase diagrams.

                                                  @@ -10368,7 +10366,7 @@

                                                  Submodules
                                                  -elements[source]
                                                  +elements[source]

                                                  List of elements in the phase diagram.

                                                  Type:
                                                  @@ -10395,7 +10393,7 @@

                                                  Submodules
                                                  -as_dict() dict[str, Any][source]
                                                  +as_dict() dict[str, Any][source]

                                                  Write the entries and elements used to construct the PatchedPhaseDiagram to a dictionary.

                                                  NOTE unlike PhaseDiagram the computation involved in constructing the @@ -10418,7 +10416,7 @@

                                                  Submodules
                                                  -classmethod from_dict(dct: dict) Self[source]
                                                  +classmethod from_dict(dct: dict) Self[source]

                                                  Reconstruct PatchedPhaseDiagram from dictionary serialization.

                                                  NOTE unlike PhaseDiagram the computation involved in constructing the PatchedPhaseDiagram is not saved on serialization. This is done because @@ -10440,44 +10438,44 @@

                                                  Submodules
                                                  -get_all_chempots()[source]
                                                  +get_all_chempots()[source]

                                                  Not Implemented - See PhaseDiagram.

                                                  -get_chempot_range_map()[source]
                                                  +get_chempot_range_map()[source]

                                                  Not Implemented - See PhaseDiagram.

                                                  -get_chempot_range_stability_phase()[source]
                                                  +get_chempot_range_stability_phase()[source]

                                                  Not Implemented - See PhaseDiagram.

                                                  -get_composition_chempots()[source]
                                                  +get_composition_chempots()[source]

                                                  Not Implemented - See PhaseDiagram.

                                                  -get_critical_compositions()[source]
                                                  +get_critical_compositions()[source]

                                                  Not Implemented - See PhaseDiagram.

                                                  -get_decomp_and_e_above_hull(entry: PDEntry, allow_negative: bool = False, check_stable: bool = False, on_error: Literal['raise', 'warn', 'ignore'] = 'raise') tuple[dict[PDEntry, float], float] | tuple[None, None][source]
                                                  +get_decomp_and_e_above_hull(entry: PDEntry, allow_negative: bool = False, check_stable: bool = False, on_error: Literal['raise', 'warn', 'ignore'] = 'raise') tuple[dict[PDEntry, float], float] | tuple[None, None][source]

                                                  Same as method on parent class PhaseDiagram except check_stable defaults to False for speed. See https://github.com/materialsproject/pymatgen/issues/2840 for details.

                                                  -get_decomposition(comp: Composition) dict[PDEntry, float][source]
                                                  +get_decomposition(comp: Composition) dict[PDEntry, float][source]

                                                  See PhaseDiagram.

                                                  Parameters:
                                                  @@ -10495,13 +10493,13 @@

                                                  Submodules
                                                  -get_element_profile()[source]
                                                  +get_element_profile()[source]

                                                  Not Implemented - See PhaseDiagram.

                                                  -get_equilibrium_reaction_energy(entry: Entry) float[source]
                                                  +get_equilibrium_reaction_energy(entry: Entry) float[source]

                                                  See PhaseDiagram.

                                                  NOTE this is only approximately the same as the what we would get from PhaseDiagram as we make use of the slsqp approach inside @@ -10519,7 +10517,7 @@

                                                  Submodules
                                                  -get_pd_for_entry(entry: Entry | Composition) PhaseDiagram[source]
                                                  +get_pd_for_entry(entry: Entry | Composition) PhaseDiagram[source]

                                                  Get the possible phase diagrams for an entry.

                                                  Parameters:
                                                  @@ -10539,26 +10537,26 @@

                                                  Submodules
                                                  -get_transition_chempots()[source]
                                                  +get_transition_chempots()[source]

                                                  Not Implemented - See PhaseDiagram.

                                                  -getmu_vertices_stability_phase()[source]
                                                  +getmu_vertices_stability_phase()[source]

                                                  Not Implemented - See PhaseDiagram.

                                                  -static remove_redundant_spaces(spaces, keep_all_spaces=False)[source]
                                                  +static remove_redundant_spaces(spaces, keep_all_spaces=False)[source]

                                                  -class PhaseDiagram(entries: Sequence[PDEntry] | set[PDEntry], elements: Sequence[Element] = (), *, computed_data: dict[str, Any] | None = None)[source]
                                                  +class PhaseDiagram(entries: Sequence[PDEntry] | set[PDEntry], elements: Sequence[Element] = (), *, computed_data: dict[str, Any] | None = None)[source]

                                                  Bases: MSONable

                                                  Simple phase diagram class taking in elements and entries as inputs. The algorithm is based on the work in the following papers:

                                                  @@ -10589,7 +10587,7 @@

                                                  Submodules
                                                  -dim[source]
                                                  +dim[source]

                                                  The dimensionality of the phase diagram.

                                                  Type:
                                                  @@ -10600,13 +10598,13 @@

                                                  Submodules
                                                  -elements[source]
                                                  +elements[source]

                                                  Elements in the phase diagram.

                                                  -el_refs[source]
                                                  +el_refs[source]

                                                  List of elemental references for the phase diagrams. These are entries corresponding to the lowest energy element entries for simple compositional phase diagrams.

                                                  @@ -10614,7 +10612,7 @@

                                                  Submodules
                                                  -all_entries[source]
                                                  +all_entries[source]

                                                  All entries provided for Phase Diagram construction. Note that this does not mean that all these entries are actually used in the phase diagram. For example, this includes the positive formation energy @@ -10623,21 +10621,21 @@

                                                  Submodules
                                                  -qhull_entries[source]
                                                  +qhull_entries[source]

                                                  Actual entries used in convex hull. Excludes all positive formation energy entries.

                                                  -qhull_data[source]
                                                  +qhull_data[source]

                                                  Data used in the convex hull operation. This is essentially a matrix of composition data and energy per atom values created from qhull_entries.

                                                  -facets[source]
                                                  +facets[source]

                                                  Facets of the phase diagram in the form of [[1,2,3],[4,5,6]…]. For a ternary, it is the indices (references to qhull_entries and qhull_data) for the vertices of the phase triangles. Similarly @@ -10646,7 +10644,7 @@

                                                  Submodules
                                                  -simplices[source]
                                                  +simplices[source]

                                                  The simplices of the phase diagram as a list of np.ndarray, i.e., the list of stable compositional coordinates in the phase diagram.

                                                  @@ -10671,24 +10669,24 @@

                                                  Submodules
                                                  -property all_entries_hulldata[source]
                                                  +property all_entries_hulldata[source]

                                                  The ndarray used to construct the convex hull.

                                                  -as_dict()[source]
                                                  +as_dict()[source]

                                                  Get MSONable dict representation of PhaseDiagram.

                                                  -formation_energy_tol = 1e-11[source]
                                                  +formation_energy_tol = 1e-11[source]
                                                  -classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                  +classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                  Parameters:

                                                  dct (dict) – dictionary representation of PhaseDiagram.

                                                  @@ -10701,7 +10699,7 @@

                                                  Submodules
                                                  -get_all_chempots(comp)[source]
                                                  +get_all_chempots(comp)[source]

                                                  Get chemical potentials at a given composition.

                                                  Parameters:
                                                  @@ -10715,7 +10713,7 @@

                                                  Submodules
                                                  -get_chempot_range_map(elements: Sequence[Element], referenced: bool = True, joggle: bool = True) dict[Element, list[Simplex]][source]
                                                  +get_chempot_range_map(elements: Sequence[Element], referenced: bool = True, joggle: bool = True) dict[Element, list[Simplex]][source]

                                                  Get a chemical potential range map for each stable entry.

                                                  Parameters:
                                                  @@ -10743,7 +10741,7 @@

                                                  Submodules
                                                  -get_chempot_range_stability_phase(target_comp, open_elt)[source]
                                                  +get_chempot_range_stability_phase(target_comp, open_elt)[source]

                                                  Get a set of chemical potentials corresponding to the max and min chemical potential of the open element for a given composition. It is quite common to have for instance a ternary oxide (e.g., ABO3) for @@ -10770,7 +10768,7 @@

                                                  Submodules
                                                  -get_composition_chempots(comp)[source]
                                                  +get_composition_chempots(comp)[source]

                                                  Get the chemical potentials for all elements at a given composition.

                                                  Parameters:
                                                  @@ -10784,7 +10782,7 @@

                                                  Submodules
                                                  -get_critical_compositions(comp1, comp2)[source]
                                                  +get_critical_compositions(comp1, comp2)[source]

                                                  Get the critical compositions along the tieline between two compositions. I.e. where the decomposition products change. The endpoints are also returned.

                                                  @@ -10810,7 +10808,7 @@

                                                  Submodules
                                                  -get_decomp_and_e_above_hull(entry: PDEntry, allow_negative: bool = False, check_stable: bool = True, on_error: Literal['raise', 'warn', 'ignore'] = 'raise') tuple[dict[PDEntry, float], float] | tuple[None, None][source]
                                                  +get_decomp_and_e_above_hull(entry: PDEntry, allow_negative: bool = False, check_stable: bool = True, on_error: Literal['raise', 'warn', 'ignore'] = 'raise') tuple[dict[PDEntry, float], float] | tuple[None, None][source]

                                                  Provides the decomposition and energy above convex hull for an entry. Due to caching, can be much faster if entries with the same composition are processed together.

                                                  @@ -10851,7 +10849,7 @@

                                                  Submodules
                                                  -get_decomp_and_hull_energy_per_atom(comp: Composition) tuple[dict[PDEntry, float], float][source]
                                                  +get_decomp_and_hull_energy_per_atom(comp: Composition) tuple[dict[PDEntry, float], float][source]
                                                  Parameters:

                                                  comp (Composition) – Input composition.

                                                  @@ -10864,7 +10862,7 @@

                                                  Submodules
                                                  -get_decomp_and_phase_separation_energy(entry: PDEntry, space_limit: int = 200, stable_only: bool = False, tols: Sequence[float] = (1e-08,), maxiter: int = 1000, **kwargs: Any) tuple[dict[PDEntry, float], float] | tuple[None, None][source]
                                                  +get_decomp_and_phase_separation_energy(entry: PDEntry, space_limit: int = 200, stable_only: bool = False, tols: Sequence[float] = (1e-08,), maxiter: int = 1000, **kwargs: Any) tuple[dict[PDEntry, float], float] | tuple[None, None][source]

                                                  Provides the combination of entries in the PhaseDiagram that gives the lowest formation enthalpy with the same composition as the given entry excluding entries with the same composition and the energy difference @@ -10920,7 +10918,7 @@

                                                  Submodules
                                                  -get_decomposition(comp: Composition) dict[PDEntry, float][source]
                                                  +get_decomposition(comp: Composition) dict[PDEntry, float][source]

                                                  Provides the decomposition at a particular composition.

                                                  Parameters:
                                                  @@ -10938,7 +10936,7 @@

                                                  Submodules
                                                  -get_e_above_hull(entry: PDEntry, **kwargs: Any) float | None[source]
                                                  +get_e_above_hull(entry: PDEntry, **kwargs: Any) float | None[source]

                                                  Provides the energy above convex hull for an entry.

                                                  Parameters:
                                                  @@ -10962,7 +10960,7 @@

                                                  Submodules
                                                  -get_element_profile(element, comp, comp_tol=1e-05)[source]
                                                  +get_element_profile(element, comp, comp_tol=1e-05)[source]

                                                  Provides the element evolution data for a composition. For example, can be used to analyze Li conversion voltages by varying mu_Li and looking at the phases formed. Also can be used to analyze O2 evolution by varying mu_O2.

                                                  @@ -10988,7 +10986,7 @@

                                                  Submodules
                                                  -get_equilibrium_reaction_energy(entry: PDEntry) float | None[source]
                                                  +get_equilibrium_reaction_energy(entry: PDEntry) float | None[source]

                                                  Provides the reaction energy of a stable entry from the neighboring equilibrium stable entries (also known as the inverse distance to hull).

                                                  @@ -11011,7 +11009,7 @@

                                                  Submodules
                                                  -get_form_energy(entry: PDEntry) float[source]
                                                  +get_form_energy(entry: PDEntry) float[source]

                                                  Get the formation energy for an entry (NOT normalized) from the elemental references.

                                                  @@ -11029,7 +11027,7 @@

                                                  Submodules
                                                  -get_form_energy_per_atom(entry: PDEntry) float[source]
                                                  +get_form_energy_per_atom(entry: PDEntry) float[source]

                                                  Get the formation energy per atom for an entry from the elemental references.

                                                  @@ -11044,7 +11042,7 @@

                                                  Submodules
                                                  -get_hull_energy(comp: Composition) float[source]
                                                  +get_hull_energy(comp: Composition) float[source]
                                                  Parameters:

                                                  comp (Composition) – Input composition.

                                                  @@ -11061,7 +11059,7 @@

                                                  Submodules
                                                  -get_hull_energy_per_atom(comp: Composition, **kwargs) float[source]
                                                  +get_hull_energy_per_atom(comp: Composition, **kwargs) float[source]
                                                  Parameters:

                                                  comp (Composition) – Input composition.

                                                  @@ -11074,7 +11072,7 @@

                                                  Submodules
                                                  -get_phase_separation_energy(entry, **kwargs)[source]
                                                  +get_phase_separation_energy(entry, **kwargs)[source]

                                                  Provides the energy to the convex hull for the given entry. For stable entries already in the phase diagram the algorithm provides the phase separation energy which is referred to as the decomposition enthalpy in:

                                                  @@ -11116,7 +11114,7 @@

                                                  Submodules
                                                  -get_plot(show_unstable: float = 0.2, backend: Literal['plotly', 'matplotlib'] = 'plotly', ternary_style: Literal['2d', '3d'] = '2d', label_stable: bool = True, label_unstable: bool = True, ordering: Sequence[str] | None = None, energy_colormap=None, process_attributes: bool = False, ax: plt.Axes = None, label_uncertainties: bool = False, fill: bool = True, **kwargs)[source]
                                                  +get_plot(show_unstable: float = 0.2, backend: Literal['plotly', 'matplotlib'] = 'plotly', ternary_style: Literal['2d', '3d'] = '2d', label_stable: bool = True, label_unstable: bool = True, ordering: Sequence[str] | None = None, energy_colormap=None, process_attributes: bool = False, ax: plt.Axes = None, label_uncertainties: bool = False, fill: bool = True, **kwargs)[source]

                                                  Convenient wrapper for PDPlotter. Initializes a PDPlotter object and calls get_plot() with provided combined arguments.

                                                  Plotting is only supported for phase diagrams with <=4 elements (unary, @@ -11155,7 +11153,7 @@

                                                  Submodules
                                                  -get_reference_energy(comp: Composition) float[source]
                                                  +get_reference_energy(comp: Composition) float[source]

                                                  Sum of elemental reference energies over all elements in a composition.

                                                  Parameters:
                                                  @@ -11172,7 +11170,7 @@

                                                  Submodules
                                                  -get_reference_energy_per_atom(comp: Composition) float[source]
                                                  +get_reference_energy_per_atom(comp: Composition) float[source]

                                                  Sum of elemental reference energies over all elements in a composition.

                                                  Parameters:
                                                  @@ -11189,7 +11187,7 @@

                                                  Submodules
                                                  -get_transition_chempots(element)[source]
                                                  +get_transition_chempots(element)[source]

                                                  Get the critical chemical potentials for an element in the Phase Diagram.

                                                  @@ -11205,7 +11203,7 @@

                                                  Submodules
                                                  -getmu_vertices_stability_phase(target_comp, dep_elt, tol_en=0.01)[source]
                                                  +getmu_vertices_stability_phase(target_comp, dep_elt, tol_en=0.01)[source]

                                                  Get a set of chemical potentials corresponding to the vertices of the simplex in the chemical potential phase diagram. The simplex is built using all elements in the target_composition @@ -11236,12 +11234,12 @@

                                                  Submodules
                                                  -numerical_tol = 1e-08[source]
                                                  +numerical_tol = 1e-08[source]

                                                  -pd_coords(comp: Composition) ndarray[source]
                                                  +pd_coords(comp: Composition) ndarray[source]

                                                  The phase diagram is generated in a reduced dimensional space (n_elements - 1). This function returns the coordinates in that space. These coordinates are compatible with the stored simplex objects.

                                                  @@ -11257,14 +11255,14 @@

                                                  Submodules
                                                  -property stable_entries: set[Entry][source]
                                                  +property stable_entries: set[Entry][source]

                                                  Returns: set[Entry]: of stable entries in the phase diagram.

                                                  -property unstable_entries: set[Entry][source]
                                                  +property unstable_entries: set[Entry][source]

                                                  Returns: set[Entry]: unstable entries in the phase diagram. Includes positive formation energy entries.

                                                  @@ -11273,14 +11271,14 @@

                                                  Submodules
                                                  -exception PhaseDiagramError[source]
                                                  +exception PhaseDiagramError[source]

                                                  Bases: Exception

                                                  An exception class for Phase Diagram generation.

                                                  -class ReactionDiagram(entry1, entry2, all_entries, tol: float = 0.0001, float_fmt='%.4f')[source]
                                                  +class ReactionDiagram(entry1, entry2, all_entries, tol: float = 0.0001, float_fmt='%.4f')[source]

                                                  Bases: object

                                                  Analyzes the possible reactions between a pair of compounds, e.g. an electrolyte and an electrode.

                                                  @@ -11308,7 +11306,7 @@

                                                  Submodules
                                                  -get_compound_pd()[source]
                                                  +get_compound_pd()[source]

                                                  Get the CompoundPhaseDiagram object, which can then be used for plotting.

                                                  @@ -11322,7 +11320,7 @@

                                                  Submodules
                                                  -class TransformedPDEntry(entry, sp_mapping, name=None)[source]
                                                  +class TransformedPDEntry(entry, sp_mapping, name=None)[source]

                                                  Bases: PDEntry

                                                  This class represents a TransformedPDEntry, which allows for a PDEntry to be transformed to a different composition coordinate space. It is used in the @@ -11338,18 +11336,18 @@

                                                  Submodules
                                                  -amount_tol = 1e-05[source]
                                                  +amount_tol = 1e-05[source]

                                                  -as_dict()[source]
                                                  +as_dict()[source]

                                                  Get MSONable dict representation of TransformedPDEntry.

                                                  -property composition: Composition[source]
                                                  +property composition: Composition[source]

                                                  The composition in the dummy species space.

                                                  Returns:
                                                  @@ -11360,7 +11358,7 @@

                                                  Submodules
                                                  -classmethod from_dict(dct: dict) Self[source]
                                                  +classmethod from_dict(dct: dict) Self[source]
                                                  Parameters:

                                                  dct (dict) – dictionary representation of TransformedPDEntry.

                                                  @@ -11375,14 +11373,14 @@

                                                  Submodules
                                                  -exception TransformedPDEntryError[source]
                                                  +exception TransformedPDEntryError[source]

                                                  Bases: Exception

                                                  An exception class for TransformedPDEntry.

                                                  -get_facets(qhull_data: ArrayLike, joggle: bool = False) ConvexHull[source]
                                                  +get_facets(qhull_data: ArrayLike, joggle: bool = False) ConvexHull[source]

                                                  Get the simplex facets for the Convex hull.

                                                  Parameters:
                                                  @@ -11405,7 +11403,7 @@

                                                  Submodules
                                                  -order_phase_diagram(lines, stable_entries, unstable_entries, ordering)[source]
                                                  +order_phase_diagram(lines, stable_entries, unstable_entries, ordering)[source]

                                                  Orders the entries (their coordinates) in a phase diagram plot according to the user specified ordering. Ordering should be given as [‘Up’, ‘Left’, ‘Right’], where Up, @@ -11442,7 +11440,7 @@

                                                  Submodules
                                                  -tet_coord(coord)[source]
                                                  +tet_coord(coord)[source]

                                                  Convert a 3D coordinate into a tetrahedron based coordinate system for a prettier phase diagram.

                                                  @@ -11457,7 +11455,7 @@

                                                  Submodules
                                                  -triangular_coord(coord)[source]
                                                  +triangular_coord(coord)[source]

                                                  Convert a 2D coordinate into a triangle-based coordinate system for a prettier phase diagram.

                                                  @@ -11472,7 +11470,7 @@

                                                  Submodules
                                                  -uniquelines(q)[source]
                                                  +uniquelines(q)[source]

                                                  Given all the facets, convert it into a set of unique lines. Specifically used for converting convex hull facets into line pairs of coordinates.

                                                  @@ -11495,7 +11493,7 @@

                                                  Submodules
                                                  -class PiezoTensor(input_array: ArrayLike, tol: float = 0.001)[source]
                                                  +class PiezoTensor(input_array: ArrayLike, tol: float = 0.001)[source]

                                                  Bases: Tensor

                                                  This class describes the 3x6 piezo tensor in Voigt notation.

                                                  Create an PiezoTensor object. The constructor throws an error if @@ -11511,10 +11509,10 @@

                                                  Submodules
                                                  -classmethod from_vasp_voigt(input_vasp_array: ArrayLike) Self[source]
                                                  +classmethod from_vasp_voigt(input_vasp_array: ArrayLike) Self[source]
                                                  Parameters:
                                                  -

                                                  input_vasp_array (nd.array) – Voigt form of tensor.

                                                  +

                                                  input_vasp_array (ArrayLike) – Voigt form of tensor.

                                                  Returns:

                                                  PiezoTensor

                                                  @@ -11530,7 +11528,7 @@

                                                  Submodules
                                                  -class BornEffectiveCharge(structure: Structure, bec, pointops, tol: float = 0.001)[source]
                                                  +class BornEffectiveCharge(structure: Structure, bec, pointops, tol: float = 0.001)[source]

                                                  Bases: object

                                                  This class describes the Nx3x3 born effective charge tensor.

                                                  Create an BornEffectiveChargeTensor object defined by a @@ -11545,7 +11543,7 @@

                                                  Submodules
                                                  -get_BEC_operations(eigtol=1e-05, opstol=0.001)[source]
                                                  +get_BEC_operations(eigtol=1e-05, opstol=0.001)[source]

                                                  Get the symmetry operations which maps the tensors belonging to equivalent sites onto each other in the form [site index 1, site index 2, [Symmops mapping from site @@ -11568,7 +11566,7 @@

                                                  Submodules
                                                  -get_rand_BEC(max_charge=1)[source]
                                                  +get_rand_BEC(max_charge=1)[source]

                                                  Generate a random born effective charge tensor which obeys a structure’s symmetry and the acoustic sum rule.

                                                  @@ -11585,7 +11583,7 @@

                                                  Submodules
                                                  -class ForceConstantMatrix(structure: Structure, fcm, pointops, sharedops, tol: float = 0.001)[source]
                                                  +class ForceConstantMatrix(structure: Structure, fcm, pointops, sharedops, tol: float = 0.001)[source]

                                                  Bases: object

                                                  This class describes the NxNx3x3 force constant matrix defined by a structure, point operations of the structure’s atomic sites, and the @@ -11599,7 +11597,7 @@

                                                  Submodules
                                                  -get_FCM_operations(eigtol=1e-05, opstol=1e-05)[source]
                                                  +get_FCM_operations(eigtol=1e-05, opstol=1e-05)[source]

                                                  Get the symmetry operations which maps the tensors belonging to equivalent sites onto each other in the form [site index 1a, site index 1b, site index 2a, site index 2b, @@ -11622,7 +11620,7 @@

                                                  Submodules
                                                  -get_asum_FCM(fcm: ndarray, numiter: int = 15)[source]
                                                  +get_asum_FCM(fcm: ndarray, numiter: int = 15)[source]

                                                  Generate a symmetrized force constant matrix that obeys the objects symmetry constraints and obeys the acoustic sum rule through an iterative procedure.

                                                  @@ -11641,7 +11639,7 @@

                                                  Submodules
                                                  -get_rand_FCM(asum=15, force=10)[source]
                                                  +get_rand_FCM(asum=15, force=10)[source]

                                                  Generate a symmetrized force constant matrix from an unsymmetrized matrix that has no unstable modes and also obeys the acoustic sum rule through an iterative procedure.

                                                  @@ -11661,7 +11659,7 @@

                                                  Submodules
                                                  -get_stable_FCM(fcm, fcmasum=10)[source]
                                                  +get_stable_FCM(fcm, fcmasum=10)[source]

                                                  Generate a symmetrized force constant matrix that obeys the objects symmetry constraints, has no unstable modes and also obeys the acoustic sum rule through an iterative procedure.

                                                  @@ -11681,7 +11679,7 @@

                                                  Submodules
                                                  -get_symmetrized_FCM(unsymmetrized_fcm, max_force=1)[source]
                                                  +get_symmetrized_FCM(unsymmetrized_fcm, max_force=1)[source]

                                                  Generate a symmetrized force constant matrix from an unsymmetrized matrix.

                                                  Parameters:
                                                  @@ -11698,7 +11696,7 @@

                                                  Submodules
                                                  -get_unstable_FCM(max_force=1)[source]
                                                  +get_unstable_FCM(max_force=1)[source]

                                                  Generate an unsymmetrized force constant matrix.

                                                  Parameters:
                                                  @@ -11714,7 +11712,7 @@

                                                  Submodules
                                                  -class InternalStrainTensor(structure: Structure, ist, pointops, tol: float = 0.001)[source]
                                                  +class InternalStrainTensor(structure: Structure, ist, pointops, tol: float = 0.001)[source]

                                                  Bases: object

                                                  This class describes the Nx3x3x3 internal tensor defined by a structure, point operations of the structure’s atomic sites.

                                                  @@ -11727,7 +11725,7 @@

                                                  Submodules
                                                  -get_IST_operations(opstol=0.001) list[list[list]][source]
                                                  +get_IST_operations(opstol=0.001) list[list[list]][source]

                                                  Get the symmetry operations which maps the tensors belonging to equivalent sites onto each other in the form [site index 1, site index 2, [SymmOps mapping from site @@ -11750,7 +11748,7 @@

                                                  Submodules
                                                  -get_rand_IST(max_force=1)[source]
                                                  +get_rand_IST(max_force=1)[source]

                                                  Generate a random internal strain tensor which obeys a structure’s symmetry and the acoustic sum rule.

                                                  @@ -11767,7 +11765,7 @@

                                                  Submodules
                                                  -get_piezo(BEC, IST, FCM, rcond=0.0001)[source]
                                                  +get_piezo(BEC, IST, FCM, rcond=0.0001)[source]

                                                  Generate a random piezoelectric tensor based on a structure and corresponding symmetry.

                                                  @@ -11787,7 +11785,7 @@

                                                  Submodules
                                                  -rand_piezo(struct, pointops, sharedops, BEC, IST, FCM, anumiter=10)[source]
                                                  +rand_piezo(struct, pointops, sharedops, BEC, IST, FCM, anumiter=10)[source]

                                                  Generate a random piezoelectric tensor based on a structure and corresponding symmetry.

                                                  @@ -11816,13 +11814,13 @@

                                                  Submodules
                                                  -class IonEntry(ion: Ion, energy: float, name: str | None = None, attribute=None)[source]
                                                  +class IonEntry(ion: Ion, energy: float, name: str | None = None, attribute=None)[source]

                                                  Bases: PDEntry

                                                  Object similar to PDEntry, but contains an Ion object instead of a Composition object.

                                                  -name[source]
                                                  +name[source]

                                                  A name for the entry. This is the string shown in the phase diagrams. By default, this is the reduced formula for the composition, but can be set to some other string for display purposes.

                                                  @@ -11846,13 +11844,13 @@

                                                  Submodules
                                                  -as_dict()[source]
                                                  +as_dict() dict[Literal['ion', 'energy', 'name'], Any][source]

                                                  Create a dict of composition, energy, and ion name.

                                                  -classmethod from_dict(dct: dict) Self[source]
                                                  +classmethod from_dict(dct: dict) Self[source]

                                                  Get an IonEntry object from a dict.

                                                  @@ -11860,27 +11858,27 @@

                                                  Submodules
                                                  -class MultiEntry(entry_list, weights=None)[source]
                                                  +class MultiEntry(entry_list: Sequence[PourbaixEntry], weights: list[float] | None = None)[source]

                                                  Bases: PourbaixEntry

                                                  PourbaixEntry-like object for constructing multi-elemental Pourbaix diagrams.

                                                  Initialize a MultiEntry.

                                                  Parameters:
                                                    -
                                                  • entry_list ([PourbaixEntry]) – List of component PourbaixEntries

                                                  • -
                                                  • weights ([float]) – Weights associated with each entry. Default is None

                                                  • +
                                                  • entry_list (Sequence[PourbaixEntry]) – Component PourbaixEntries.

                                                  • +
                                                  • weights (list[float]) – Weights associated with each entry. Default is None

                                                  -as_dict()[source]
                                                  +as_dict() dict[str, Any][source]

                                                  Get MSONable dict.

                                                  -classmethod from_dict(dct: dict) Self[source]
                                                  +classmethod from_dict(dct: dict) Self[source]
                                                  Parameters:

                                                  dct (dict) – Dict representation.

                                                  @@ -11893,7 +11891,7 @@

                                                  Submodules
                                                  -property name[source]
                                                  +property name: str[source]

                                                  MultiEntry name, i.e. the name of each entry joined by ‘ + ‘.

                                                  @@ -11901,7 +11899,7 @@

                                                  Submodules
                                                  -class PourbaixDiagram(entries: list[PourbaixEntry] | list[MultiEntry], comp_dict: dict[str, float] | None = None, conc_dict: dict[str, float] | None = None, filter_solids: bool = True, nproc: int | None = None)[source]
                                                  +class PourbaixDiagram(entries: list[PourbaixEntry] | list[MultiEntry], comp_dict: dict[str, float] | None = None, conc_dict: dict[str, float] | None = None, filter_solids: bool = True, nproc: int | None = None)[source]

                                                  Bases: MSONable

                                                  Create a Pourbaix diagram from entries.

                                                  @@ -11929,19 +11927,24 @@

                                                  Submodules
                                                  -property all_entries[source]
                                                  +property all_entries: list[source]

                                                  All entries used to generate the Pourbaix diagram.

                                                  -as_dict()[source]
                                                  +as_dict() dict[str, Any][source]

                                                  Get MSONable dict.

                                                  +
                                                  +
                                                  +elements_ho: ClassVar[set[Element]] = {Element H, Element O}[source]
                                                  +
                                                  +
                                                  -find_stable_entry(pH, V)[source]
                                                  +find_stable_entry(pH: float, V: float) PourbaixEntry[source]

                                                  Find stable entry at a pH,V condition.

                                                  Parameters:
                                                  @@ -11961,7 +11964,7 @@

                                                  Submodules
                                                  -classmethod from_dict(dct: dict) Self[source]
                                                  +classmethod from_dict(dct: dict) Self[source]
                                                  Parameters:

                                                  dct (dict) – Dict representation.

                                                  @@ -11974,7 +11977,7 @@

                                                  Submodules
                                                  -get_decomposition_energy(entry, pH, V)[source]
                                                  +get_decomposition_energy(entry: PourbaixEntry, pH: float, V: float) NDArray[source]

                                                  Find decomposition to most stable entries in eV/atom, supports vectorized inputs for pH and V.

                                                  @@ -11982,8 +11985,8 @@

                                                  Submodules
                                                  • entry (PourbaixEntry) – PourbaixEntry corresponding to compound to find the decomposition for

                                                  • -
                                                  • pH (float, list[float]) – pH at which to find the decomposition

                                                  • -
                                                  • V (float, list[float]) – voltage at which to find the decomposition

                                                  • +
                                                  • pH (float) – pH at which to find the decomposition

                                                  • +
                                                  • V (float) – voltage at which to find the decomposition

                                                  Returns:
                                                  @@ -11998,7 +12001,7 @@

                                                  Submodules
                                                  -get_hull_energy(pH: float | list[float], V: float | list[float]) ndarray[source]
                                                  +get_hull_energy(pH: float | list[float], V: float | list[float]) NDArray[source]

                                                  Get the minimum energy of the Pourbaix “basin” that is formed from the stable Pourbaix planes. Vectorized.

                                                  @@ -12019,7 +12022,7 @@

                                                  Submodules
                                                  -static get_pourbaix_domains(pourbaix_entries, limits=None)[source]
                                                  +static get_pourbaix_domains(pourbaix_entries: list[PourbaixEntry], limits: list[list[float]] | None = None) tuple[dict, dict][source]

                                                  Get a set of Pourbaix stable domains (i.e. polygons) in pH-V space from a list of pourbaix_entries.

                                                  This function works by using scipy’s HalfspaceIntersection @@ -12033,26 +12036,26 @@

                                                  Submodules
                                                  Parameters:
                                                    -
                                                  • pourbaix_entries ([PourbaixEntry]) – Pourbaix entries +

                                                  • pourbaix_entries (list[PourbaixEntry]) – Pourbaix entries with which to construct stable Pourbaix domains

                                                  • -
                                                  • limits ([[float]]) – limits in which to do the pourbaix +

                                                  • limits (list[list[float]]) – limits in which to do the pourbaix analysis

                                                  Returns:
                                                  -

                                                  [boundary_points]}. +

                                                  The first dict is of form: {entry: [boundary_points]}. The list of boundary points are the sides of the N-1 dim polytope bounding the allowable ph-V range of each entry.

                                                  Return type:
                                                  -

                                                  Returns a dict of the form {entry

                                                  +

                                                  tuple[dict[PourbaixEntry, list], dict[PourbaixEntry, NDArray]

                                                  -get_stable_entry(pH, V)[source]
                                                  +get_stable_entry(pH: float, V: float) PourbaixEntry | MultiEntry[source]

                                                  Get the stable entry at a given pH, V condition.

                                                  Parameters:
                                                  @@ -12076,7 +12079,7 @@

                                                  Submodules
                                                  -static process_multientry(entry_list, prod_comp, coeff_threshold=0.0001)[source]
                                                  +static process_multientry(entry_list: Sequence, prod_comp: Composition, coeff_threshold: float = 0.0001) MultiEntry | None[source]

                                                  Static method for finding a multientry based on a list of entries and a product composition. Essentially checks to see if a valid aqueous @@ -12086,7 +12089,7 @@

                                                  Submodules
                                                  Parameters:

                                                  -property unprocessed_entries[source]
                                                  +property unprocessed_entries: list[source]

                                                  Unprocessed entries.

                                                  -property unstable_entries[source]
                                                  +property unstable_entries: list[source]

                                                  All unstable entries in the Pourbaix diagram.

                                                  @@ -12120,7 +12123,7 @@

                                                  Submodules
                                                  -class PourbaixEntry(entry, entry_id=None, concentration=1e-06)[source]
                                                  +class PourbaixEntry(entry: ComputedEntry | ComputedStructureEntry, entry_id: str | None = None, concentration: float = 1e-06)[source]

                                                  Bases: MSONable, Stringify

                                                  An object encompassing all data relevant to a solid or ion in a Pourbaix diagram. Each bulk solid/ion has an energy @@ -12141,7 +12144,7 @@

                                                  Submodules
                                                  -as_dict()[source]
                                                  +as_dict()[source]

                                                  Get dict which contains Pourbaix Entry data. Note that the pH, voltage, H2O factors are always calculated when constructing a PourbaixEntry object.

                                                  @@ -12149,32 +12152,32 @@

                                                  Submodules
                                                  -property composition[source]
                                                  +property composition: Composition[source]

                                                  Composition.

                                                  -property conc_term[source]
                                                  +property conc_term: float[source]

                                                  The concentration contribution to the free energy. Should only be present when there are ions in the entry.

                                                  -property elements[source]
                                                  +property elements: list[Element | Species | DummySpecies][source]

                                                  Elements in the entry.

                                                  -property energy[source]
                                                  +property energy: float[source]

                                                  Total energy of the Pourbaix entry (at pH, V = 0 vs. SHE).

                                                  -energy_at_conditions(pH, V)[source]
                                                  +energy_at_conditions(pH: float, V: float) float[source]

                                                  Get free energy for a given pH and V.

                                                  Parameters:
                                                  @@ -12191,19 +12194,19 @@

                                                  Submodules
                                                  -property energy_per_atom[source]
                                                  +property energy_per_atom: float[source]

                                                  Energy per atom of the Pourbaix entry.

                                                  -classmethod from_dict(dct: dict) Self[source]
                                                  +classmethod from_dict(dct: dict) Self[source]

                                                  Invokes a PourbaixEntry from a dictionary.

                                                  -get_element_fraction(element)[source]
                                                  +get_element_fraction(element: Element | str) float[source]

                                                  Get the elemental fraction of a given non-OH element.

                                                  Parameters:
                                                  @@ -12218,38 +12221,38 @@

                                                  Submodules
                                                  -property nH2O[source]
                                                  +property nH2O: float[source]

                                                  The number of H2O.

                                                  -property nPhi[source]
                                                  +property nPhi: float[source]

                                                  The number of electrons.

                                                  -property name[source]
                                                  +property name: str[source]

                                                  The entry’s name.

                                                  -property normalization_factor[source]
                                                  +property normalization_factor: float[source]

                                                  Sum of number of atoms minus the number of H and O in composition.

                                                  -property normalized_energy[source]
                                                  +property normalized_energy: float[source]

                                                  Energy normalized by number of non H or O atoms, e.g. for Zn2O6, energy / 2 or for AgTe3(OH)3, energy / 4.

                                                  -normalized_energy_at_conditions(pH, V)[source]
                                                  +normalized_energy_at_conditions(pH: float, V: float) float[source]

                                                  Energy at an electrochemical condition, compatible with numpy arrays for pH/V input.

                                                  @@ -12267,19 +12270,19 @@

                                                  Submodules
                                                  -property npH[source]
                                                  +property npH: float[source]

                                                  The number of H.

                                                  -property num_atoms[source]
                                                  +property num_atoms: float[source]

                                                  Number of atoms in current formula. Useful for normalization.

                                                  -to_pretty_string() str[source]
                                                  +to_pretty_string() str[source]

                                                  A pretty string representation.

                                                  @@ -12287,7 +12290,7 @@

                                                  Submodules
                                                  -class PourbaixPlotter(pourbaix_diagram)[source]
                                                  +class PourbaixPlotter(pourbaix_diagram: PourbaixDiagram)[source]

                                                  Bases: object

                                                  A plotter class for phase diagrams.

                                                  @@ -12297,7 +12300,7 @@

                                                  Submodules
                                                  -domain_vertices(entry)[source]
                                                  +domain_vertices(entry) list[source]

                                                  Get the vertices of the Pourbaix domain.

                                                  Parameters:
                                                  @@ -12311,7 +12314,7 @@

                                                  Submodules
                                                  -get_pourbaix_plot(limits: tuple[tuple[float, float], tuple[float, float]] | None = None, title: str = '', label_domains: bool = True, label_fontsize: int = 20, show_water_lines: bool = True, show_neutral_axes: bool = True, ax: plt.Axes = None) plt.Axes[source]
                                                  +get_pourbaix_plot(limits: tuple[tuple[float, float], tuple[float, float]] | None = None, title: str = '', label_domains: bool = True, label_fontsize: int = 20, show_water_lines: bool = True, show_neutral_axes: bool = True, ax: plt.Axes = None) plt.Axes[source]

                                                  Plot Pourbaix diagram.

                                                  Parameters:
                                                  @@ -12338,18 +12341,18 @@

                                                  Submodules
                                                  -plot_entry_stability(entry: Any, pH_range: tuple[float, float] = (-2, 16), pH_resolution: int = 100, V_range: tuple[float, float] = (-3, 3), V_resolution: int = 100, e_hull_max: float = 1, cmap: str = 'RdYlBu_r', ax: plt.Axes | None = None, **kwargs: Any) plt.Axes[source]
                                                  +plot_entry_stability(entry: Any, pH_range: tuple[float, float] = (-2, 16), pH_resolution: int = 100, V_range: tuple[float, float] = (-3, 3), V_resolution: int = 100, e_hull_max: float = 1, cmap: str = 'RdYlBu_r', ax: plt.Axes | None = None, **kwargs: Any) plt.Axes[source]

                                                  Plots the stability of an entry in the Pourbaix diagram.

                                                  Parameters:
                                                  • entry (Any) – The entry to plot stability for.

                                                  • -
                                                  • pH_range (tuple[float, float], optional) – pH range for the plot. Defaults to (-2, 16).

                                                  • -
                                                  • pH_resolution (int, optional) – pH resolution. Defaults to 100.

                                                  • -
                                                  • V_range (tuple[float, float], optional) – Voltage range for the plot. Defaults to (-3, 3).

                                                  • -
                                                  • V_resolution (int, optional) – Voltage resolution. Defaults to 100.

                                                  • -
                                                  • e_hull_max (float, optional) – Maximum energy above the hull. Defaults to 1.

                                                  • -
                                                  • cmap (str, optional) – Colormap for the plot. Defaults to “RdYlBu_r”.

                                                  • +
                                                  • pH_range (tuple[float, float]) – pH range for the plot. Defaults to (-2, 16).

                                                  • +
                                                  • pH_resolution (int) – pH resolution. Defaults to 100.

                                                  • +
                                                  • V_range (tuple[float, float]) – Voltage range for the plot. Defaults to (-3, 3).

                                                  • +
                                                  • V_resolution (int) – Voltage resolution. Defaults to 100.

                                                  • +
                                                  • e_hull_max (float) – Maximum energy above the hull. Defaults to 1.

                                                  • +
                                                  • cmap (str) – Colormap for the plot. Defaults to “RdYlBu_r”.

                                                  • ax (Axes, optional) – Existing matplotlib Axes object for plotting. Defaults to None.

                                                  • **kwargs (Any) – Additional keyword arguments passed to get_pourbaix_plot.

                                                  @@ -12365,7 +12368,7 @@

                                                  Submodules
                                                  -show(*args, **kwargs)[source]
                                                  +show(*args, **kwargs) None[source]

                                                  Show the Pourbaix plot.

                                                  Parameters:
                                                  @@ -12379,28 +12382,17 @@

                                                  Submodules -
                                                  -generate_entry_label(entry)[source]
                                                  -

                                                  Generates a label for the Pourbaix plotter.

                                                  -
                                                  -
                                                  Parameters:
                                                  -

                                                  entry (PourbaixEntry or MultiEntry) – entry to get a label for

                                                  -
                                                  -
                                                  -

                                                  -
                                                  -ion_or_solid_comp_object(formula)[source]
                                                  -

                                                  Get an Ion or Composition object given a formula.

                                                  +ion_or_solid_comp_object(formula: str) Composition | Ion[source] +

                                                  Get an Ion or Composition from a formula.

                                                  Parameters:
                                                  -

                                                  formula – String formula. Eg. of ion: NaOH(aq), Na[+]; -Eg. of solid: Fe2O3(s), Fe(s), Na2O

                                                  +

                                                  formula (str) – Formula. E.g. of ion: NaOH(aq), Na[+], Na+; +E.g. of solid: Fe2O3(s), Fe(s), Na2O.

                                                  Returns:
                                                  -

                                                  Composition/Ion object

                                                  +

                                                  Composition/Ion object.

                                                  @@ -12418,7 +12410,7 @@

                                                  Submoduleshttps://doi.org/10.1016/j.commatsci.2017.01.017

                                                  -class AflowPrototypeMatcher(initial_ltol=0.2, initial_stol=0.3, initial_angle_tol=5)[source]
                                                  +class AflowPrototypeMatcher(initial_ltol=0.2, initial_stol=0.3, initial_angle_tol=5)[source]

                                                  Bases: object

                                                  This class will match structures to their crystal prototypes, and will attempt to group species together to match structures derived from @@ -12443,7 +12435,7 @@

                                                  Submodules
                                                  -get_prototypes(structure: Structure) list | None[source]
                                                  +get_prototypes(structure: Structure) list | None[source]

                                                  Get prototype(s) structures for a given input structure. If you use this method in your work, please cite the appropriate AFLOW publication:

                                                  Mehl, M. J., Hicks, D., Toher, C., Levy, O., Hanson, R. M., Hart, G., & Curtarolo, @@ -12482,7 +12474,7 @@

                                                  Submodules
                                                  -class QuasiHarmonicDebyeApprox(energies, volumes, structure, t_min=300.0, t_step=100, t_max=300.0, eos='vinet', pressure=0.0, poisson=0.25, use_mie_gruneisen=False, anharmonic_contribution=False)[source]
                                                  +class QuasiHarmonicDebyeApprox(energies, volumes, structure, t_min=300.0, t_step=100, t_max=300.0, eos='vinet', pressure=0.0, poisson=0.25, use_mie_gruneisen=False, anharmonic_contribution=False)[source]

                                                  Bases: object

                                                  Quasi-harmonic approximation.

                                                  @@ -12513,7 +12505,7 @@

                                                  Submodules
                                                  -static debye_integral(y)[source]
                                                  +static debye_integral(y)[source]

                                                  Debye integral. Eq(5) in doi.org/10.1016/j.comphy.2003.12.001.

                                                  Parameters:
                                                  @@ -12530,7 +12522,7 @@

                                                  Submodules
                                                  -debye_temperature(volume: float) float[source]
                                                  +debye_temperature(volume: float) float[source]

                                                  Calculates the Debye temperature. Eq(6) in doi.org/10.1016/j.comphy.2003.12.001. Thanks to Joey.

                                                  Eq(6) above is equivalent to Eq(3) in doi.org/10.1103/PhysRevB.37.790 @@ -12555,13 +12547,13 @@

                                                  Submodules
                                                  -get_summary_dict()[source]
                                                  +get_summary_dict()[source]

                                                  Get a dict with a summary of the computed properties.

                                                  -gruneisen_parameter(temperature, volume)[source]
                                                  +gruneisen_parameter(temperature, volume)[source]
                                                  Slater-gamma formulation(the default):
                                                  gruneisen parameter = - d log(theta)/ d log(V) = - (1/6 + 0.5 d log(B)/ d log(V))

                                                  = - (1/6 + 0.5 V/B dB/dV), where dB/dV = d^2E/dV^2 + V * d^3E/dV^3.

                                                  @@ -12598,7 +12590,7 @@

                                                  Submodules
                                                  -optimize_gibbs_free_energy()[source]
                                                  +optimize_gibbs_free_energy()[source]

                                                  Evaluate the Gibbs free energy as a function of V, T and P i.e G(V, T, P), minimize G(V, T, P) w.r.t. V for each T and store the optimum values.

                                                  @@ -12610,7 +12602,7 @@

                                                  Submodules
                                                  -optimizer(temperature)[source]
                                                  +optimizer(temperature)[source]

                                                  Evaluate G(V, T, P) at the given temperature(and pressure) and minimize it w.r.t. V.

                                                  1. Compute the vibrational Helmholtz free energy, A_vib.

                                                  2. @@ -12641,7 +12633,7 @@

                                                    Submodules
                                                    -thermal_conductivity(temperature: float, volume: float) float[source]
                                                    +thermal_conductivity(temperature: float, volume: float) float[source]

                                                    Eq(17) in 10.1103/PhysRevB.90.174107.

                                                    Parameters:
                                                    @@ -12661,7 +12653,7 @@

                                                    Submodules
                                                    -vibrational_free_energy(temperature, volume)[source]
                                                    +vibrational_free_energy(temperature, volume)[source]

                                                    Vibrational Helmholtz free energy, A_vib(V, T). Eq(4) in doi.org/10.1016/j.comphy.2003.12.001.

                                                    @@ -12682,7 +12674,7 @@

                                                    Submodules
                                                    -vibrational_internal_energy(temperature, volume)[source]
                                                    +vibrational_internal_energy(temperature, volume)[source]

                                                    Vibrational internal energy, U_vib(V, T). Eq(4) in doi.org/10.1016/j.comphy.2003.12.001.

                                                    @@ -12705,7 +12697,7 @@

                                                    Submodules
                                                    -class QuasiharmonicDebyeApprox(energies, volumes, structure, t_min=300.0, t_step=100, t_max=300.0, eos='vinet', pressure=0.0, poisson=0.25, use_mie_gruneisen=False, anharmonic_contribution=False)[source]
                                                    +class QuasiharmonicDebyeApprox(energies, volumes, structure, t_min=300.0, t_step=100, t_max=300.0, eos='vinet', pressure=0.0, poisson=0.25, use_mie_gruneisen=False, anharmonic_contribution=False)[source]

                                                    Bases: QuasiHarmonicDebyeApprox

                                                    Parameters:
                                                    @@ -12743,14 +12735,14 @@

                                                    Submodules
                                                    -class QuasiRRHO(mol: Molecule, frequencies: list[float], energy: float, mult: int, sigma_r: float = 1, temp: float = 298.15, press: float = 101317, v0: float = 100)[source]
                                                    +class QuasiRRHO(mol: Molecule, frequencies: list[float], energy: float, mult: int, sigma_r: float = 1, temp: float = 298.15, press: float = 101317, v0: float = 100)[source]

                                                    Bases: object

                                                    Calculate thermochemistry using Grimme’s Quasi-RRHO approximation. All outputs are in atomic units, e.g. energy outputs are in Hartrees. Citation: Grimme, S. Chemistry - A European Journal 18, 9955-9964 (2012).

                                                    -temp[source]
                                                    +temp[source]

                                                    Temperature [K]

                                                    Type:
                                                    @@ -12761,7 +12753,7 @@

                                                    Submodules
                                                    -press[source]
                                                    +press[source]

                                                    Pressure [Pa]

                                                    Type:
                                                    @@ -12772,7 +12764,7 @@

                                                    Submodules
                                                    -v0[source]
                                                    +v0[source]

                                                    Cutoff frequency for Quasi-RRHO method [1/cm]

                                                    Type:
                                                    @@ -12783,7 +12775,7 @@

                                                    Submodules
                                                    -entropy_quasiRRHO[source]
                                                    +entropy_quasiRRHO[source]

                                                    Quasi-RRHO entropy [Ha/K]

                                                    Type:
                                                    @@ -12794,7 +12786,7 @@

                                                    Submodules
                                                    -entropy_ho[source]
                                                    +entropy_ho[source]

                                                    Total entropy calculated with a harmonic oscillator approximation for the vibrational entropy [Ha/K]

                                                    @@ -12806,7 +12798,7 @@

                                                    Submodules
                                                    -h_corrected[source]
                                                    +h_corrected[source]

                                                    Thermal correction to the enthalpy [Ha]

                                                    Type:
                                                    @@ -12817,7 +12809,7 @@

                                                    Submodules
                                                    -free_energy_quasiRRHO[source]
                                                    +free_energy_quasiRRHO[source]

                                                    Quasi-RRHO free energy [Ha]

                                                    Type:
                                                    @@ -12828,7 +12820,7 @@

                                                    Submodules
                                                    -free_energy_ho[source]
                                                    +free_energy_ho[source]

                                                    Free energy calculated without the Quasi-RRHO method, i.e. with a harmonic oscillator approximation for the vibrational entropy [Ha]

                                                    @@ -12855,7 +12847,7 @@

                                                    Submodules
                                                    -classmethod from_gaussian_output(output: GaussianOutput, **kwargs) Self[source]
                                                    +classmethod from_gaussian_output(output: GaussianOutput, **kwargs) Self[source]
                                                    Parameters:

                                                    output (GaussianOutput) – Pymatgen GaussianOutput object.

                                                    @@ -12871,7 +12863,7 @@

                                                    Submodules
                                                    -classmethod from_qc_output(output: QCOutput, **kwargs) Self[source]
                                                    +classmethod from_qc_output(output: QCOutput, **kwargs) Self[source]
                                                    Parameters:

                                                    output (QCOutput) – Pymatgen QCOutput object.

                                                    @@ -12889,7 +12881,7 @@

                                                    Submodules
                                                    -get_avg_mom_inertia(mol)[source]
                                                    +get_avg_mom_inertia(mol)[source]

                                                    Calculate the average moment of inertia of a molecule.

                                                    Parameters:
                                                    @@ -12910,7 +12902,7 @@

                                                    Submodules
                                                    -class BalancedReaction(reactants_coeffs: Mapping[CompositionLike, int | float], products_coeffs: Mapping[CompositionLike, int | float])[source]
                                                    +class BalancedReaction(reactants_coeffs: Mapping[CompositionLike, int | float], products_coeffs: Mapping[CompositionLike, int | float])[source]

                                                    Bases: MSONable

                                                    Represent a complete chemical reaction.

                                                    Reactants and products to be specified as dict of {Composition: coeff}.

                                                    @@ -12924,18 +12916,18 @@

                                                    Submodules
                                                    -TOLERANCE = 1e-06[source]
                                                    +TOLERANCE = 1e-06[source]

                                                    -property all_comp: list[Composition][source]
                                                    +property all_comp: list[Composition][source]

                                                    List of all compositions in the reaction.

                                                    -as_dict() dict[source]
                                                    +as_dict() dict[source]
                                                    Returns:

                                                    A dictionary representation of BalancedReaction.

                                                    @@ -12945,13 +12937,13 @@

                                                    Submodules
                                                    -as_entry(energies) ComputedEntry[source]
                                                    +as_entry(energies) ComputedEntry[source]

                                                    Get a ComputedEntry representation of the reaction.

                                                    -calculate_energy(energies: dict[Composition, ufloat]) ufloat[source]
                                                    +calculate_energy(energies: dict[Composition, ufloat]) ufloat[source]
                                                    calculate_energy(energies: dict[Composition, float]) float

                                                    Calculates the energy of the reaction.

                                                    @@ -12968,19 +12960,19 @@

                                                    Submodules
                                                    -property coeffs: list[float][source]
                                                    +property coeffs: list[float][source]

                                                    Final coefficients of the calculated reaction.

                                                    -property elements: list[Element | Species][source]
                                                    +property elements: list[Element | Species][source]

                                                    List of elements in the reaction.

                                                    -classmethod from_dict(dct: dict) Self[source]
                                                    +classmethod from_dict(dct: dict) Self[source]
                                                    Parameters:

                                                    dct (dict) – from as_dict().

                                                    @@ -12993,7 +12985,7 @@

                                                    Submodules
                                                    -classmethod from_str(rxn_str: str) Self[source]
                                                    +classmethod from_str(rxn_str: str) Self[source]

                                                    Generate a balanced reaction from a string. The reaction must already be balanced.

                                                    @@ -13008,13 +13000,13 @@

                                                    Submodules
                                                    -get_coeff(comp: Composition) float[source]
                                                    +get_coeff(comp: Composition) float[source]

                                                    Get coefficient for a particular composition.

                                                    -get_el_amount(element: Element | Species) float[source]
                                                    +get_el_amount(element: Element | Species) float[source]

                                                    Get the amount of the element in the reaction.

                                                    Parameters:
                                                    @@ -13028,7 +13020,7 @@

                                                    Submodules
                                                    -normalize_to(comp: Composition, factor: float = 1) None[source]
                                                    +normalize_to(comp: Composition, factor: float = 1) None[source]

                                                    Normalizes the reaction to one of the compositions. By default, normalizes such that the composition given has a coefficient of 1. Another factor can be specified.

                                                    @@ -13044,7 +13036,7 @@

                                                    Submodules
                                                    -normalize_to_element(element: Species | Element, factor: float = 1) None[source]
                                                    +normalize_to_element(element: Species | Element, factor: float = 1) None[source]

                                                    Normalizes the reaction to one of the elements. By default, normalizes such that the amount of the element is 1. Another factor can be specified.

                                                    @@ -13060,27 +13052,27 @@

                                                    Submodules
                                                    -property normalized_repr: str[source]
                                                    +property normalized_repr: str[source]

                                                    A normalized representation of the reaction. All factors are converted to lowest common factors.

                                                    -normalized_repr_and_factor() tuple[str, float][source]
                                                    +normalized_repr_and_factor() tuple[str, float][source]

                                                    Normalized representation for a reaction For example, 4 Li + 2 O -> 2Li2O becomes 2 Li + O -> Li2O.

                                                    -property products: list[Composition][source]
                                                    +property products: list[Composition][source]

                                                    List of products.

                                                    -property reactants: list[Composition][source]
                                                    +property reactants: list[Composition][source]

                                                    List of reactants.

                                                    @@ -13088,7 +13080,7 @@

                                                    Submodules
                                                    -class ComputedReaction(reactant_entries: list[ComputedEntry], product_entries: list[ComputedEntry])[source]
                                                    +class ComputedReaction(reactant_entries: list[ComputedEntry], product_entries: list[ComputedEntry])[source]

                                                    Bases: Reaction

                                                    Convenience class to generate a reaction from ComputedEntry objects, with some additional attributes, such as a reaction energy based on computed @@ -13103,14 +13095,14 @@

                                                    Submodules
                                                    -property all_entries[source]
                                                    +property all_entries[source]

                                                    Equivalent of all_comp but returns entries, in the same order as the coefficients.

                                                    -as_dict() dict[source]
                                                    +as_dict() dict[source]
                                                    Returns:

                                                    A dictionary representation of ComputedReaction.

                                                    @@ -13120,21 +13112,21 @@

                                                    Submodules
                                                    -property calculated_reaction_energy: float[source]
                                                    +property calculated_reaction_energy: float[source]

                                                    Returns: float: The calculated reaction energy.

                                                    -property calculated_reaction_energy_uncertainty: float[source]
                                                    +property calculated_reaction_energy_uncertainty: float[source]

                                                    Calculates the uncertainty in the reaction energy based on the uncertainty in the energies of the products and reactants.

                                                    -classmethod from_dict(dct: dict) Self[source]
                                                    +classmethod from_dict(dct: dict) Self[source]
                                                    Parameters:

                                                    dct (dict) – from as_dict().

                                                    @@ -13149,7 +13141,7 @@

                                                    Submodules
                                                    -class Reaction(reactants: list[Composition], products: list[Composition])[source]
                                                    +class Reaction(reactants: list[Composition], products: list[Composition])[source]

                                                    Bases: BalancedReaction

                                                    A more flexible class representing a Reaction. The reaction amounts will be automatically balanced. Reactants and products can swap sides so that @@ -13168,7 +13160,7 @@

                                                    Submodules
                                                    -as_dict() dict[source]
                                                    +as_dict() dict[source]
                                                    Returns:

                                                    A dictionary representation of Reaction.

                                                    @@ -13178,13 +13170,13 @@

                                                    Submodules
                                                    -copy() Self[source]
                                                    +copy() Self[source]

                                                    Get a copy of the Reaction object.

                                                    -classmethod from_dict(dct: dict) Self[source]
                                                    +classmethod from_dict(dct: dict) Self[source]
                                                    Parameters:

                                                    dct (dict) – from as_dict().

                                                    @@ -13199,7 +13191,7 @@

                                                    Submodules
                                                    -exception ReactionError(msg: str)[source]
                                                    +exception ReactionError(msg: str)[source]

                                                    Bases: Exception

                                                    Exception class for Reactions. Allows more information in exception messages to cover situations not covered by standard exception classes.

                                                    @@ -13217,7 +13209,7 @@

                                                    Submodules
                                                    -class OxideType(structure: Structure, relative_cutoff=1.1)[source]
                                                    +class OxideType(structure: Structure, relative_cutoff=1.1)[source]

                                                    Bases: object

                                                    Separate class for determining oxide type.

                                                    @@ -13233,7 +13225,7 @@

                                                    Submodules
                                                    -parse_oxide() tuple[str, int][source]
                                                    +parse_oxide() tuple[str, int][source]

                                                    Determines if an oxide is a peroxide/superoxide/ozonide/normal oxide.

                                                    Returns:
                                                    @@ -13253,7 +13245,7 @@

                                                    Submodules
                                                    -class RelaxationAnalyzer(initial_structure: Structure, final_structure: Structure)[source]
                                                    +class RelaxationAnalyzer(initial_structure: Structure, final_structure: Structure)[source]

                                                    Bases: object

                                                    This class analyzes the relaxation in a calculation.

                                                    Please note that the input and final structures should have the same @@ -13273,7 +13265,7 @@

                                                    Submodules
                                                    -get_percentage_bond_dist_changes(max_radius: float = 3.0) dict[int, dict[int, float]][source]
                                                    +get_percentage_bond_dist_changes(max_radius: float = 3.0) dict[int, dict[int, float]][source]

                                                    Get the percentage bond distance changes for each site up to a maximum radius for nearest neighbors.

                                                    @@ -13299,7 +13291,7 @@

                                                    Submodules
                                                    -get_percentage_lattice_parameter_changes() dict[str, float][source]
                                                    +get_percentage_lattice_parameter_changes() dict[str, float][source]

                                                    Get the percentage lattice parameter changes.

                                                    Returns:
                                                    @@ -13318,7 +13310,7 @@

                                                    Submodules
                                                    -get_percentage_volume_change() float[source]
                                                    +get_percentage_volume_change() float[source]

                                                    Get the percentage volume change.

                                                    Returns:
                                                    @@ -13334,7 +13326,7 @@

                                                    Submodules
                                                    -class VoronoiAnalyzer(cutoff=5.0, qhull_options='Qbb Qc Qz')[source]
                                                    +class VoronoiAnalyzer(cutoff=5.0, qhull_options='Qbb Qc Qz')[source]

                                                    Bases: object

                                                    Performs a statistical analysis of Voronoi polyhedra around each site. Each Voronoi polyhedron is described using Schaefli notation. @@ -13360,7 +13352,7 @@

                                                    Submodules
                                                    -analyze(structure: Structure, n=0)[source]
                                                    +analyze(structure: Structure, n=0)[source]

                                                    Performs Voronoi analysis and returns the polyhedra around atom n in Schlaefli notation.

                                                    @@ -13385,7 +13377,7 @@

                                                    Submodules
                                                    -analyze_structures(structures, step_freq=10, most_frequent_polyhedra=15)[source]
                                                    +analyze_structures(structures, step_freq=10, most_frequent_polyhedra=15)[source]

                                                    Perform Voronoi analysis on a list of Structures. Note that this might take a significant amount of time depending on the size and number of structures.

                                                    @@ -13409,7 +13401,7 @@

                                                    Submodules
                                                    -static plot_vor_analysis(voronoi_ensemble: list[tuple[str, float]]) Axes[source]
                                                    +static plot_vor_analysis(voronoi_ensemble: list[tuple[str, float]]) Axes[source]

                                                    Plot the Voronoi analysis.

                                                    Parameters:
                                                    @@ -13429,7 +13421,7 @@

                                                    Submodules
                                                    -class VoronoiConnectivity(structure: Structure, cutoff=10)[source]
                                                    +class VoronoiConnectivity(structure: Structure, cutoff=10)[source]

                                                    Bases: object

                                                    Computes the solid angles swept out by the shared face of the voronoi polyhedron between two sites.

                                                    @@ -13443,7 +13435,7 @@

                                                    Submodules
                                                    -property connectivity_array[source]
                                                    +property connectivity_array[source]

                                                    The connectivity array of shape [atom_i, atom_j, image_j]. atom_i is the index of the atom in the input structure. Since the second atom can be outside of the unit cell, it must be described by both an atom index and an image index. Array data is the solid @@ -13452,14 +13444,14 @@

                                                    Submodules
                                                    -get_connections()[source]
                                                    +get_connections()[source]

                                                    Get a list of site pairs that are Voronoi Neighbors, along with their real-space distances.

                                                    -get_sitej(site_index, image_index)[source]
                                                    +get_sitej(site_index, image_index)[source]

                                                    Assuming there is some value in the connectivity array at indices (1, 3, 12). site_i can be obtained directly from the input structure (structure[1]). site_j can be obtained by passing 3, 12 to this function.

                                                    @@ -13475,7 +13467,7 @@

                                                    Submodules
                                                    -property max_connectivity[source]
                                                    +property max_connectivity[source]

                                                    The 2d array [site_i, site_j] that represents the maximum connectivity of site i to any periodic image of site j.

                                                    @@ -13484,7 +13476,7 @@

                                                    Submodules
                                                    -average_coordination_number(structures, freq=10)[source]
                                                    +average_coordination_number(structures, freq=10)[source]

                                                    Calculates the ensemble averaged Voronoi coordination numbers of a list of Structures using VoronoiNN. Typically used for analyzing the output of a Molecular Dynamics run.

                                                    @@ -13503,7 +13495,7 @@

                                                    Submodules
                                                    -contains_peroxide(structure, relative_cutoff=1.1)[source]
                                                    +contains_peroxide(structure, relative_cutoff=1.1)[source]

                                                    Determines if a structure contains peroxide anions.

                                                    Parameters:
                                                    @@ -13525,7 +13517,7 @@

                                                    Submodules
                                                    -get_max_bond_lengths(structure, el_radius_updates=None)[source]
                                                    +get_max_bond_lengths(structure, el_radius_updates=None)[source]

                                                    Provides max bond length estimates for a structure based on the JMol table and algorithms.

                                                    @@ -13546,7 +13538,7 @@

                                                    Submodules
                                                    -oxide_type(structure: Structure, relative_cutoff: float = 1.1, return_nbonds: bool = False) str | tuple[str, int][source]
                                                    +oxide_type(structure: Structure, relative_cutoff: float = 1.1, return_nbonds: bool = False) str | tuple[str, int][source]

                                                    Determines if an oxide is a peroxide/superoxide/ozonide/normal oxide.

                                                    Parameters:
                                                    @@ -13562,7 +13554,7 @@

                                                    Submodules
                                                    -solid_angle(center, coords)[source]
                                                    +solid_angle(center, coords)[source]

                                                    Helper method to calculate the solid angle of a set of coords from the center.

                                                    Parameters:
                                                    @@ -13582,7 +13574,7 @@

                                                    Submodules
                                                    -sulfide_type(structure)[source]
                                                    +sulfide_type(structure)[source]

                                                    Determines if a structure is a sulfide/polysulfide/sulfate.

                                                    Parameters:
                                                    @@ -13603,13 +13595,13 @@

                                                    Submodules
                                                    -class AbstractComparator[source]
                                                    +class AbstractComparator[source]

                                                    Bases: MSONable, ABC

                                                    Abstract Comparator class. A Comparator defines how sites are compared in a structure.

                                                    -abstract are_equal(sp1, sp2) bool[source]
                                                    +abstract are_equal(sp1, sp2) bool[source]

                                                    Defines how the species of two sites are considered equal. For example, one can consider sites to have the same species only when the species are exactly the same, i.e., Fe2+ matches Fe2+ but not @@ -13635,13 +13627,13 @@

                                                    Submodules
                                                    -as_dict()[source]
                                                    +as_dict()[source]

                                                    MSONable dict.

                                                    -classmethod from_dict(dct: dict) Self[source]
                                                    +classmethod from_dict(dct: dict) Self[source]
                                                    Parameters:

                                                    dct (dict) – Dict representation.

                                                    @@ -13654,7 +13646,7 @@

                                                    Submodules
                                                    -abstract get_hash(composition)[source]
                                                    +abstract get_hash(composition)[source]

                                                    Defines a hash to group structures. This allows structures to be grouped efficiently for comparison. The hash must be invariant under supercell creation. (e.g. composition is not a good hash, but @@ -13677,13 +13669,13 @@

                                                    Submodules
                                                    -class ElementComparator[source]
                                                    +class ElementComparator[source]

                                                    Bases: AbstractComparator

                                                    A Comparator that matches elements. i.e. oxidation states are ignored.

                                                    -are_equal(sp1, sp2) bool[source]
                                                    +are_equal(sp1, sp2) bool[source]

                                                    True if element:amounts are exactly the same, i.e., oxidation state is not considered.

                                                    @@ -13706,7 +13698,7 @@

                                                    Submodules
                                                    -get_hash(composition)[source]
                                                    +get_hash(composition)[source]

                                                    Get the fractional element composition.

                                                    @@ -13714,12 +13706,12 @@

                                                    Submodules
                                                    -class FrameworkComparator[source]
                                                    +class FrameworkComparator[source]

                                                    Bases: AbstractComparator

                                                    A Comparator that matches sites, regardless of species.

                                                    -are_equal(sp1, sp2) bool[source]
                                                    +are_equal(sp1, sp2) bool[source]

                                                    True if there are atoms on both sites.

                                                    Parameters:
                                                    @@ -13738,7 +13730,7 @@

                                                    Submodules
                                                    -get_hash(composition)[source]
                                                    +get_hash(composition)[source]

                                                    No hash possible.

                                                    @@ -13746,13 +13738,13 @@

                                                    Submodules
                                                    -class OccupancyComparator[source]
                                                    +class OccupancyComparator[source]

                                                    Bases: AbstractComparator

                                                    A Comparator that matches occupancies on sites, irrespective of the species of those sites.

                                                    -are_equal(sp1, sp2) bool[source]
                                                    +are_equal(sp1, sp2) bool[source]
                                                    Parameters:
                                                      @@ -13773,7 +13765,7 @@

                                                      Submodules
                                                      -get_hash(composition)[source]
                                                      +get_hash(composition)[source]
                                                      Parameters:

                                                      composition – Composition.

                                                      @@ -13794,13 +13786,13 @@

                                                      Submodules
                                                      -class OrderDisorderElementComparator[source]
                                                      +class OrderDisorderElementComparator[source]

                                                      Bases: AbstractComparator

                                                      A Comparator that matches sites, given some overlap in the element composition.

                                                      -are_equal(sp1, sp2) bool[source]
                                                      +are_equal(sp1, sp2) bool[source]

                                                      True if there is some overlap in composition between the species.

                                                      Parameters:
                                                      @@ -13819,7 +13811,7 @@

                                                      Submodules
                                                      -get_hash(composition)[source]
                                                      +get_hash(composition)[source]

                                                      Get the fractional composition.

                                                      @@ -13827,7 +13819,7 @@

                                                      Submodules
                                                      -class SiteOrderedIStructure(lattice: ArrayLike | Lattice, species: Sequence[CompositionLike], coords: Sequence[ArrayLike], charge: float | None = None, validate_proximity: bool = False, to_unit_cell: bool = False, coords_are_cartesian: bool = False, site_properties: dict | None = None, labels: Sequence[str | None] | None = None, properties: dict | None = None)[source]
                                                      +class SiteOrderedIStructure(lattice: ArrayLike | Lattice, species: Sequence[CompositionLike], coords: Sequence[ArrayLike], charge: float | None = None, validate_proximity: bool = False, to_unit_cell: bool = False, coords_are_cartesian: bool = False, site_properties: dict | None = None, labels: Sequence[str | None] | None = None, properties: dict | None = None)[source]

                                                      Bases: IStructure

                                                      Imutable structure where the order of sites matters.

                                                      In caching reduced structures (see StructureMatcher._get_reduced_structure) @@ -13884,12 +13876,12 @@

                                                      Submodules
                                                      -class SpeciesComparator[source]
                                                      +class SpeciesComparator[source]

                                                      Bases: AbstractComparator

                                                      A Comparator that matches species exactly. The default used in StructureMatcher.

                                                      -are_equal(sp1, sp2) bool[source]
                                                      +are_equal(sp1, sp2) bool[source]

                                                      True if species are exactly the same, i.e., Fe2+ == Fe2+ but not Fe3+.

                                                      Parameters:
                                                      @@ -13911,7 +13903,7 @@

                                                      Submodules
                                                      -get_hash(composition: Composition)[source]
                                                      +get_hash(composition: Composition)[source]

                                                      Get the fractional composition.

                                                      @@ -13919,14 +13911,14 @@

                                                      Submodules
                                                      -class SpinComparator[source]
                                                      +class SpinComparator[source]

                                                      Bases: AbstractComparator

                                                      A Comparator that matches magnetic structures to their inverse spins. This comparator is primarily used to filter magnetically ordered structures with opposite spins, which are equivalent.

                                                      -are_equal(sp1, sp2) bool[source]
                                                      +are_equal(sp1, sp2) bool[source]

                                                      True if species are exactly the same, i.e., Fe2+ == Fe2+ but not Fe3+. and the spins are reversed. i.e., spin up maps to spin down, and vice versa.

                                                      @@ -13950,7 +13942,7 @@

                                                      Submodules
                                                      -get_hash(composition)[source]
                                                      +get_hash(composition)[source]

                                                      Get the fractional composition.

                                                      @@ -13958,7 +13950,7 @@

                                                      Submodules
                                                      -class StructureMatcher(ltol: float = 0.2, stol: float = 0.3, angle_tol: float = 5, primitive_cell: bool = True, scale: bool = True, attempt_supercell: bool = False, allow_subset: bool = False, comparator: AbstractComparator | None = None, supercell_size: Literal['num_sites', 'num_atoms', 'volume'] = 'num_sites', ignored_species: Sequence[SpeciesLike] = ())[source]
                                                      +class StructureMatcher(ltol: float = 0.2, stol: float = 0.3, angle_tol: float = 5, primitive_cell: bool = True, scale: bool = True, attempt_supercell: bool = False, allow_subset: bool = False, comparator: AbstractComparator | None = None, supercell_size: Literal['num_sites', 'num_atoms', 'volume'] = 'num_sites', ignored_species: Sequence[SpeciesLike] = ())[source]

                                                      Bases: MSONable

                                                      Match structures by similarity.

                                                      Algorithm: @@ -14054,13 +14046,13 @@

                                                      Submodules
                                                      -as_dict()[source]
                                                      +as_dict()[source]

                                                      MSONable dict.

                                                      -fit(struct1: Structure, struct2: Structure, symmetric: bool = False, skip_structure_reduction: bool = False) bool[source]
                                                      +fit(struct1: Structure, struct2: Structure, symmetric: bool = False, skip_structure_reduction: bool = False) bool[source]

                                                      Fit two structures.

                                                      Parameters:
                                                      @@ -14085,7 +14077,7 @@

                                                      Submodules
                                                      -fit_anonymous(struct1: Structure, struct2: Structure, niggli: bool = True, skip_structure_reduction: bool = False) bool[source]
                                                      +fit_anonymous(struct1: Structure, struct2: Structure, niggli: bool = True, skip_structure_reduction: bool = False) bool[source]

                                                      Performs an anonymous fitting, which allows distinct species in one structure to map to another. e.g. to compare if the Li2O and Na2O structures are similar.

                                                      @@ -14109,7 +14101,7 @@

                                                      Submodules
                                                      -classmethod from_dict(dct: dict) Self[source]
                                                      +classmethod from_dict(dct: dict) Self[source]
                                                      Parameters:

                                                      dct (dict) – Dict representation.

                                                      @@ -14122,7 +14114,7 @@

                                                      Submodules
                                                      -get_all_anonymous_mappings(struct1, struct2, niggli=True, include_dist=False)[source]
                                                      +get_all_anonymous_mappings(struct1, struct2, niggli=True, include_dist=False)[source]

                                                      Performs an anonymous fitting, which allows distinct species in one structure to map to another. Returns a dictionary of species substitutions that are within tolerance.

                                                      @@ -14143,7 +14135,7 @@

                                                      Submodules
                                                      -get_best_electronegativity_anonymous_mapping(struct1: Structure, struct2: Structure) dict | None[source]
                                                      +get_best_electronegativity_anonymous_mapping(struct1: Structure, struct2: Structure) dict | None[source]

                                                      Performs an anonymous fitting, which allows distinct species in one structure to map to another. e.g. to compare if the Li2O and Na2O structures are similar. If multiple substitutions are within tolerance @@ -14167,7 +14159,7 @@

                                                      Submodules
                                                      -get_mapping(superset, subset)[source]
                                                      +get_mapping(superset, subset)[source]

                                                      Calculate the mapping from superset to subset.

                                                      Parameters:
                                                      @@ -14187,7 +14179,7 @@

                                                      Submodules
                                                      -get_rms_anonymous(struct1, struct2)[source]
                                                      +get_rms_anonymous(struct1, struct2)[source]

                                                      Performs an anonymous fitting, which allows distinct species in one structure to map to another. e.g. to compare if the Li2O and Na2O structures are similar.

                                                      @@ -14215,7 +14207,7 @@

                                                      Submodules
                                                      -get_rms_dist(struct1, struct2)[source]
                                                      +get_rms_dist(struct1, struct2)[source]

                                                      Calculate RMS displacement between two structures.

                                                      Parameters:
                                                      @@ -14234,7 +14226,7 @@

                                                      Submodules
                                                      -get_s2_like_s1(struct1, struct2, include_ignored_species=True)[source]
                                                      +get_s2_like_s1(struct1, struct2, include_ignored_species=True)[source]

                                                      Performs transformations on struct2 to put it in a basis similar to struct1 (without changing any of the inter-site distances).

                                                      @@ -14257,7 +14249,7 @@

                                                      Submodules
                                                      -get_supercell_matrix(supercell, struct) ndarray | None[source]
                                                      +get_supercell_matrix(supercell, struct) ndarray | None[source]

                                                      Get the matrix for transforming struct to supercell. This can be used for very distorted ‘supercells’ where the primitive cell is impossible to find.

                                                      @@ -14265,7 +14257,7 @@

                                                      Submodules
                                                      -get_transformation(struct1, struct2)[source]
                                                      +get_transformation(struct1, struct2)[source]

                                                      Get the supercell transformation, fractional translation vector, and a mapping to transform struct2 to be similar to struct1.

                                                      @@ -14295,7 +14287,7 @@

                                                      Submodules
                                                      -group_structures(s_list, anonymous=False)[source]
                                                      +group_structures(s_list, anonymous=False)[source]

                                                      Given a list of structures, use fit to group them by structural equality.

                                                      @@ -14361,7 +14353,7 @@

                                                      Submodules
                                                      -class NanoscaleStability(se_analyzers, symprec=1e-05)[source]
                                                      +class NanoscaleStability(se_analyzers, symprec=1e-05)[source]

                                                      Bases: object

                                                      A class for analyzing the stability of nanoparticles of different polymorphs with respect to size. The Wulff shape will be the model for the @@ -14377,7 +14369,7 @@

                                                      Submodules
                                                      -se_analyzers[source]
                                                      +se_analyzers[source]

                                                      Each item corresponds to a different polymorph.

                                                      Type:
                                                      @@ -14388,7 +14380,7 @@

                                                      Submodules
                                                      -symprec[source]
                                                      +symprec[source]

                                                      Tolerance for symmetry finding. See WulffShape.

                                                      Type:
                                                      @@ -14400,7 +14392,7 @@

                                                      Submodules
                                                      -static bulk_gform(bulk_entry)[source]
                                                      +static bulk_gform(bulk_entry)[source]

                                                      Get the formation energy of the bulk.

                                                      Parameters:
                                                      @@ -14417,7 +14409,7 @@

                                                      Submodules
                                                      -plot_all_stability_map(max_r, increments=50, delu_dict=None, delu_default=0, ax=None, labels=None, from_sphere_area=False, e_units='keV', r_units='nanometers', normalize=False, scale_per_atom=False)[source]
                                                      +plot_all_stability_map(max_r, increments=50, delu_dict=None, delu_default=0, ax=None, labels=None, from_sphere_area=False, e_units='keV', r_units='nanometers', normalize=False, scale_per_atom=False)[source]
                                                      Get the plot of the formation energy of a particles

                                                      of different polymorphs against its effect radius.

                                                      @@ -14450,7 +14442,7 @@

                                                      Submodules
                                                      -plot_one_stability_map(analyzer, max_r, delu_dict=None, label='', increments=50, delu_default=0, ax=None, from_sphere_area=False, e_units='keV', r_units='nanometers', normalize=False, scale_per_atom=False)[source]
                                                      +plot_one_stability_map(analyzer, max_r, delu_dict=None, label='', increments=50, delu_default=0, ax=None, from_sphere_area=False, e_units='keV', r_units='nanometers', normalize=False, scale_per_atom=False)[source]
                                                      Get the plot of the formation energy of a particle against its

                                                      effect radius.

                                                      @@ -14487,7 +14479,7 @@

                                                      Submodules
                                                      -scaled_wulff(wulff_shape, r)[source]
                                                      +scaled_wulff(wulff_shape, r)[source]
                                                      Scales the Wulff shape with an effective radius r. Note that the resulting

                                                      Wulff does not necessarily have the same effective radius as the one provided. The Wulff shape is scaled by its surface energies where first @@ -14510,7 +14502,7 @@

                                                      Submodules
                                                      -solve_equilibrium_point(analyzer1, analyzer2, delu_dict=None, delu_default=0, units='nanometers')[source]
                                                      +solve_equilibrium_point(analyzer1, analyzer2, delu_dict=None, delu_default=0, units='nanometers')[source]

                                                      Get the radial size of two particles where equilibrium is reached between both particles. NOTE: the solution here is not the same as the solution visualized in the plot because solving for r requires that both the total surface area and @@ -14540,7 +14532,7 @@

                                                      Submodules
                                                      -wulff_gform_and_r(wulff_shape, bulk_entry, r, from_sphere_area=False, r_units='nanometers', e_units='keV', normalize=False, scale_per_atom=False)[source]
                                                      +wulff_gform_and_r(wulff_shape, bulk_entry, r, from_sphere_area=False, r_units='nanometers', e_units='keV', normalize=False, scale_per_atom=False)[source]

                                                      Calculates the formation energy of the particle with arbitrary radius r.

                                                      Parameters:
                                                      @@ -14568,7 +14560,7 @@

                                                      Submodules
                                                      -class SlabEntry(structure, energy, miller_index, correction=0.0, parameters=None, data=None, entry_id=None, label=None, adsorbates=None, clean_entry=None, marker=None, color=None)[source]
                                                      +class SlabEntry(structure, energy, miller_index, correction=0.0, parameters=None, data=None, entry_id=None, label=None, adsorbates=None, clean_entry=None, marker=None, color=None)[source]

                                                      Bases: ComputedStructureEntry

                                                      A ComputedStructureEntry object encompassing all data relevant to a

                                                      slab for analyzing surface thermodynamics.

                                                      @@ -14576,7 +14568,7 @@

                                                      Submodules
                                                      -miller_index[source]
                                                      +miller_index[source]

                                                      Miller index of plane parallel to surface.

                                                      Type:
                                                      @@ -14587,7 +14579,7 @@

                                                      Submodules
                                                      -label[source]
                                                      +label[source]

                                                      Brief description for this slab.

                                                      Type:
                                                      @@ -14598,7 +14590,7 @@

                                                      Submodules
                                                      -adsorbates[source]
                                                      +adsorbates[source]

                                                      List of ComputedStructureEntry for the types of adsorbates.

                                                      Type:
                                                      @@ -14609,7 +14601,7 @@

                                                      Submodules
                                                      -clean_entry[source]
                                                      +clean_entry[source]

                                                      SlabEntry for the corresponding clean slab for an adsorbed slab.

                                                      Type:
                                                      @@ -14620,7 +14612,7 @@

                                                      Submodules
                                                      -ads_entries_dict[source]
                                                      +ads_entries_dict[source]

                                                      Dictionary where the key is the reduced composition of the adsorbate entry and value is the entry itself.

                                                      @@ -14660,61 +14652,61 @@

                                                      Submodules
                                                      -property Nads_in_slab[source]
                                                      +property Nads_in_slab[source]

                                                      The TOTAL number of adsorbates in the slab on BOTH sides.

                                                      -property Nsurfs_ads_in_slab[source]
                                                      +property Nsurfs_ads_in_slab[source]

                                                      The TOTAL number of adsorbed surfaces in the slab.

                                                      -as_dict()[source]
                                                      +as_dict()[source]

                                                      Get dict which contains Slab Entry data.

                                                      -property cleaned_up_slab[source]
                                                      +property cleaned_up_slab[source]

                                                      A slab with the adsorbates removed.

                                                      -property create_slab_label[source]
                                                      +property create_slab_label[source]

                                                      A label (str) for this particular slab based on composition, coverage and Miller index.

                                                      -classmethod from_computed_structure_entry(entry, miller_index, label=None, adsorbates=None, clean_entry=None, **kwargs) Self[source]
                                                      +classmethod from_computed_structure_entry(entry, miller_index, label=None, adsorbates=None, clean_entry=None, **kwargs) Self[source]

                                                      Get SlabEntry from a ComputedStructureEntry.

                                                      -classmethod from_dict(dct: dict) Self[source]
                                                      +classmethod from_dict(dct: dict) Self[source]

                                                      Get a SlabEntry by reading in an dictionary.

                                                      -property get_monolayer[source]
                                                      +property get_monolayer[source]

                                                      The primitive unit surface area density of the adsorbate.

                                                      -property get_unit_primitive_area[source]
                                                      +property get_unit_primitive_area[source]

                                                      The surface area of the adsorbed system per unit area of the primitive slab system.

                                                      -gibbs_binding_energy(eads=False)[source]
                                                      +gibbs_binding_energy(eads=False)[source]

                                                      Get the adsorption energy or Gibbs binding energy of an adsorbate on a surface.

                                                      Parameters:
                                                      @@ -14727,13 +14719,13 @@

                                                      Submodules
                                                      -property surface_area[source]
                                                      +property surface_area[source]

                                                      Calculate the surface area of the slab.

                                                      -surface_energy(ucell_entry, ref_entries=None)[source]
                                                      +surface_energy(ucell_entry, ref_entries=None)[source]

                                                      Calculates the surface energy of this SlabEntry.

                                                      Parameters:
                                                      @@ -14760,7 +14752,7 @@

                                                      Submodules
                                                      -class SurfaceEnergyPlotter(all_slab_entries, ucell_entry, ref_entries=None)[source]
                                                      +class SurfaceEnergyPlotter(all_slab_entries, ucell_entry, ref_entries=None)[source]

                                                      Bases: object

                                                      A class used for generating plots to analyze the thermodynamics of surfaces of a material. Produces stability maps of different slab configurations, @@ -14768,7 +14760,7 @@

                                                      Submodules
                                                      -all_slab_entries[source]
                                                      +all_slab_entries[source]

                                                      Either a list of SlabEntry objects (note for a list, the SlabEntry must have the adsorbates and clean_entry parameter plugged in) or a Nested dictionary containing a list of entries for slab calculations as @@ -14798,7 +14790,7 @@

                                                      Submodules
                                                      -color_dict[source]
                                                      +color_dict[source]

                                                      Dictionary of colors (r,g,b,a) when plotting surface energy stability. The keys are individual surface entries where clean surfaces have a solid color while the corresponding adsorbed surface will be transparent.

                                                      @@ -14811,7 +14803,7 @@

                                                      Submodules
                                                      -ucell_entry[source]
                                                      +ucell_entry[source]

                                                      ComputedStructureEntry of the bulk reference for this particular material.

                                                      @@ -14823,7 +14815,7 @@

                                                      Submodules
                                                      -ref_entries[source]
                                                      +ref_entries[source]

                                                      List of ComputedStructureEntries to be used for calculating chemical potential.

                                                      Type:
                                                      @@ -14834,7 +14826,7 @@

                                                      Submodules
                                                      -facet_color_dict[source]
                                                      +facet_color_dict[source]

                                                      Randomly generated dictionary of colors associated with each facet.

                                                      Type:
                                                      @@ -14871,7 +14863,7 @@

                                                      Submodules
                                                      -BE_vs_clean_SE(delu_dict, delu_default=0, plot_eads=False, annotate_monolayer=True, JPERM2=False)[source]
                                                      +BE_vs_clean_SE(delu_dict, delu_default=0, plot_eads=False, annotate_monolayer=True, JPERM2=False)[source]
                                                      For each facet, plot the clean surface energy against the most

                                                      stable binding energy.

                                                      @@ -14906,7 +14898,7 @@

                                                      Submodules
                                                      -area_frac_vs_chempot_plot(ref_delu: Symbol, chempot_range: list[float], delu_dict: dict[Symbol, float] | None = None, delu_default: float = 0, increments: int = 10, no_clean: bool = False, no_doped: bool = False) Axes[source]
                                                      +area_frac_vs_chempot_plot(ref_delu: Symbol, chempot_range: list[float], delu_dict: dict[Symbol, float] | None = None, delu_default: float = 0, increments: int = 10, no_clean: bool = False, no_doped: bool = False) Axes[source]

                                                      1D plot. Plots the change in the area contribution of each facet as a function of chemical potential.

                                                      @@ -14936,7 +14928,7 @@

                                                      Submodules
                                                      -static chempot_plot_addons(ax, xrange, ref_el, pad=2.4, rect=None, ylim=None)[source]
                                                      +static chempot_plot_addons(ax, xrange, ref_el, pad=2.4, rect=None, ylim=None)[source]

                                                      Helper function to a chempot plot look nicer.

                                                      Parameters:
                                                      @@ -14957,7 +14949,7 @@

                                                      Submodules
                                                      -chempot_vs_gamma(ref_delu, chempot_range, miller_index=(), delu_dict=None, delu_default=0, JPERM2=False, show_unstable=False, ylim=None, plt=None, no_clean=False, no_doped=False, use_entry_labels=False, no_label=False)[source]
                                                      +chempot_vs_gamma(ref_delu, chempot_range, miller_index=(), delu_dict=None, delu_default=0, JPERM2=False, show_unstable=False, ylim=None, plt=None, no_clean=False, no_doped=False, use_entry_labels=False, no_label=False)[source]
                                                      Plots the surface energy as a function of chemical potential.

                                                      Each facet will be associated with its own distinct colors. Dashed lines will represent stoichiometries different from that @@ -15002,7 +14994,7 @@

                                                      Submodules
                                                      -chempot_vs_gamma_plot_one(ax: Axes, entry: SlabEntry, ref_delu: Symbol, chempot_range: list[float], delu_dict: dict[Symbol, float] | None = None, delu_default: float = 0, label: str = '', JPERM2: bool = False) Axes[source]
                                                      +chempot_vs_gamma_plot_one(ax: Axes, entry: SlabEntry, ref_delu: Symbol, chempot_range: list[float], delu_dict: dict[Symbol, float] | None = None, delu_default: float = 0, label: str = '', JPERM2: bool = False) Axes[source]

                                                      Helper function to help plot the surface energy of a single SlabEntry as a function of chemical potential.

                                                      @@ -15032,7 +15024,7 @@

                                                      Submodules
                                                      -color_palette_dict(alpha=0.35)[source]
                                                      +color_palette_dict(alpha=0.35)[source]

                                                      Helper function to assign each facet a unique color using a dictionary.

                                                      Parameters:
                                                      @@ -15049,7 +15041,7 @@

                                                      Submodules
                                                      -get_stable_entry_at_u(miller_index, delu_dict=None, delu_default=0, no_doped=False, no_clean=False) tuple[SlabEntry, float][source]
                                                      +get_stable_entry_at_u(miller_index, delu_dict=None, delu_default=0, no_doped=False, no_clean=False) tuple[SlabEntry, float][source]
                                                      Get the entry corresponding to the most stable slab for a particular

                                                      facet at a specific chempot. We assume that surface energy is constant so all free variables must be set with delu_dict, otherwise they are @@ -15079,7 +15071,7 @@

                                                      Submodules
                                                      -get_surface_equilibrium(slab_entries, delu_dict=None)[source]
                                                      +get_surface_equilibrium(slab_entries, delu_dict=None)[source]
                                                      Takes in a list of SlabEntries and calculates the chemical potentials

                                                      at which all slabs in the list coexists simultaneously. Useful for building surface phase diagrams. Note that to solve for x equations @@ -15111,7 +15103,7 @@

                                                      Submodules
                                                      -monolayer_vs_BE(plot_eads=False)[source]
                                                      +monolayer_vs_BE(plot_eads=False)[source]
                                                      Plots the binding energy as a function of monolayers (ML), i.e.

                                                      the fractional area adsorbate density for all facets. For each facet at a specific monolayer, only plot the lowest binding energy.

                                                      @@ -15133,7 +15125,7 @@

                                                      Submodules
                                                      -set_all_variables(delu_dict, delu_default)[source]
                                                      +set_all_variables(delu_dict, delu_default)[source]
                                                      Set all chemical potential values and returns a dictionary where

                                                      the key is a sympy Symbol and the value is a float (chempot).

                                                      @@ -15156,7 +15148,7 @@

                                                      Submodules
                                                      -stable_u_range_dict(chempot_range, ref_delu, no_doped=True, no_clean=False, delu_dict=None, miller_index=(), dmu_at_0=False, return_se_dict=False)[source]
                                                      +stable_u_range_dict(chempot_range, ref_delu, no_doped=True, no_clean=False, delu_dict=None, miller_index=(), dmu_at_0=False, return_se_dict=False)[source]

                                                      Creates a dictionary where each entry is a key pointing to a chemical potential range where the surface of that entry is stable. Does so by enumerating through all possible solutions (intersect) @@ -15192,7 +15184,7 @@

                                                      Submodules
                                                      -surface_chempot_range_map(elements, miller_index, ranges, incr=50, no_doped=False, no_clean=False, delu_dict=None, ax=None, annotate=True, show_unphysical_only=False, fontsize=10) Axes[source]
                                                      +surface_chempot_range_map(elements, miller_index, ranges, incr=50, no_doped=False, no_clean=False, delu_dict=None, ax=None, annotate=True, show_unphysical_only=False, fontsize=10) Axes[source]
                                                      Adapted from the get_chempot_range_map() method in the PhaseDiagram

                                                      class. Plot the chemical potential range map based on surface energy stability. Currently works only for 2-component PDs. At @@ -15232,7 +15224,7 @@

                                                      Submodules
                                                      -wulff_from_chempot(delu_dict=None, delu_default=0, symprec=1e-05, no_clean=False, no_doped=False) WulffShape[source]
                                                      +wulff_from_chempot(delu_dict=None, delu_default=0, symprec=1e-05, no_clean=False, no_doped=False) WulffShape[source]

                                                      Method to get the Wulff shape at a specific chemical potential.

                                                      Parameters:
                                                      @@ -15259,13 +15251,13 @@

                                                      Submodules
                                                      -class WorkFunctionAnalyzer(structure: Structure, locpot_along_c, efermi, shift=0, blength=3.5)[source]
                                                      +class WorkFunctionAnalyzer(structure: Structure, locpot_along_c, efermi, shift=0, blength=3.5)[source]

                                                      Bases: object

                                                      A class used for calculating the work function from a slab model and visualizing the behavior of the local potential along the slab.

                                                      -efermi[source]
                                                      +efermi[source]

                                                      The Fermi energy.

                                                      Type:
                                                      @@ -15276,7 +15268,7 @@

                                                      Submodules
                                                      -locpot_along_c[source]
                                                      +locpot_along_c[source]

                                                      Local potential in eV along points along the c axis.

                                                      Type:
                                                      @@ -15287,7 +15279,7 @@

                                                      Submodules
                                                      -vacuum_locpot[source]
                                                      +vacuum_locpot[source]

                                                      The maximum local potential along the c direction for the slab model, i.e. the potential at the vacuum.

                                                      @@ -15299,7 +15291,7 @@

                                                      Submodules
                                                      -work_function[source]
                                                      +work_function[source]

                                                      The minimum energy needed to move an electron from the surface to infinity. Defined as the difference between the potential at the vacuum and the Fermi energy.

                                                      @@ -15311,7 +15303,7 @@

                                                      Submodules
                                                      -slab[source]
                                                      +slab[source]

                                                      The slab structure model.

                                                      Type:
                                                      @@ -15322,7 +15314,7 @@

                                                      Submodules
                                                      -along_c[source]
                                                      +along_c[source]

                                                      Points along the c direction with same increments as the locpot in the c axis.

                                                      Type:
                                                      @@ -15333,7 +15325,7 @@

                                                      Submodules
                                                      -ave_locpot[source]
                                                      +ave_locpot[source]

                                                      Mean of the minimum and maximum (vacuum) locpot along c.

                                                      Type:
                                                      @@ -15344,7 +15336,7 @@

                                                      Submodules
                                                      -sorted_sites[source]
                                                      +sorted_sites[source]

                                                      List of sites from the slab sorted along the c direction.

                                                      Type:
                                                      @@ -15355,7 +15347,7 @@

                                                      Submodules
                                                      -ave_bulk_p[source]
                                                      +ave_bulk_p[source]

                                                      The average locpot of the slab region along the c direction.

                                                      Type:
                                                      @@ -15381,7 +15373,7 @@

                                                      Submodules
                                                      -classmethod from_files(poscar_filename, locpot_filename, outcar_filename, shift=0, blength=3.5) Self[source]
                                                      +classmethod from_files(poscar_filename, locpot_filename, outcar_filename, shift=0, blength=3.5) Self[source]

                                                      Initialize a WorkFunctionAnalyzer from POSCAR, LOCPOT, and OUTCAR files.

                                                      Parameters:
                                                      @@ -15405,7 +15397,7 @@

                                                      Submodules
                                                      -get_labels(plt, label_fontsize=10)[source]
                                                      +get_labels(plt, label_fontsize=10)[source]

                                                      Handles the optional labelling of the plot with relevant quantities.

                                                      Parameters:
                                                      @@ -15420,7 +15412,7 @@

                                                      Submodules
                                                      -get_locpot_along_slab_plot(label_energies=True, plt=None, label_fontsize=10)[source]
                                                      +get_locpot_along_slab_plot(label_energies=True, plt=None, label_fontsize=10)[source]
                                                      Get a plot of the local potential (eV) vs the

                                                      position along the c axis of the slab model (Ang).

                                                      @@ -15441,7 +15433,7 @@

                                                      Submodules
                                                      -is_converged(min_points_frac=0.015, tol: float = 0.0025)[source]
                                                      +is_converged(min_points_frac=0.015, tol: float = 0.0025)[source]
                                                      A well converged work function should have a flat electrostatic

                                                      potential within some distance (min_point) about where the peak electrostatic potential is found along the c direction of the @@ -15466,7 +15458,7 @@

                                                      Submodules
                                                      -entry_dict_from_list(all_slab_entries) dict[source]
                                                      +entry_dict_from_list(all_slab_entries) dict[source]

                                                      Converts a list of SlabEntry to an appropriate dictionary. It is assumed that if there is no adsorbate, then it is a clean SlabEntry and that adsorbed SlabEntry has the clean_entry parameter set.

                                                      @@ -15490,7 +15482,7 @@

                                                      Submodules
                                                      -sub_chempots(gamma_dict, chempots)[source]
                                                      +sub_chempots(gamma_dict, chempots)[source]
                                                      Uses dot product of numpy array to sub chemical potentials

                                                      into the surface grand potential. This is much faster than using the subs function in sympy.

                                                      @@ -15517,7 +15509,7 @@

                                                      Submodules
                                                      -class ThermoData(data_type, cpdname, phaseinfo, formula, value, ref='', method='', temp_range=(298, 298), uncertainty=None)[source]
                                                      +class ThermoData(data_type, cpdname, phaseinfo, formula, value, ref='', method='', temp_range=(298, 298), uncertainty=None)[source]

                                                      Bases: object

                                                      Container for experimental thermo-chemical data.

                                                      @@ -15545,13 +15537,13 @@

                                                      Submodules
                                                      -as_dict()[source]
                                                      +as_dict()[source]

                                                      Get MSONable dict.

                                                      -classmethod from_dict(dct: dict) Self[source]
                                                      +classmethod from_dict(dct: dict) Self[source]
                                                      Parameters:

                                                      dct (dict) – Dict representation.

                                                      @@ -15573,7 +15565,7 @@

                                                      Submodules
                                                      -class NEBAnalysis(r, energies, forces, structures, spline_options=None)[source]
                                                      +class NEBAnalysis(r, energies, forces, structures, spline_options=None)[source]

                                                      Bases: MSONable

                                                      An NEBAnalysis class.

                                                      Initialize an NEBAnalysis from the cumulative root mean squared distances @@ -15595,7 +15587,7 @@

                                                      Submodules
                                                      -as_dict()[source]
                                                      +as_dict()[source]

                                                      Dict representation of NEBAnalysis.

                                                      Returns:
                                                      @@ -15606,7 +15598,7 @@

                                                      Submodules
                                                      -classmethod from_dir(root_dir, relaxation_dirs=None, **kwargs) Self[source]
                                                      +classmethod from_dir(root_dir, relaxation_dirs=None, **kwargs) Self[source]

                                                      Initialize a NEBAnalysis object from a directory of a NEB run. Note that OUTCARs must be present in all image directories. For the terminal OUTCARs from relaxation calculations, you can specify the @@ -15647,7 +15639,7 @@

                                                      Submodules
                                                      -classmethod from_outcars(outcars, structures, **kwargs) Self[source]
                                                      +classmethod from_outcars(outcars, structures, **kwargs) Self[source]

                                                      Initialize an NEBAnalysis from Outcar and Structure objects. Use the static constructors, e.g. from_dir instead if you prefer to have these automatically generated from a directory of NEB @@ -15669,7 +15661,7 @@

                                                      Submodules
                                                      -get_extrema(normalize_rxn_coordinate=True)[source]
                                                      +get_extrema(normalize_rxn_coordinate=True)[source]

                                                      Get the positions of the extrema along the MEP. Both local minimums and maximums are returned.

                                                      @@ -15688,7 +15680,7 @@

                                                      Submodules
                                                      -get_plot(normalize_rxn_coordinate: bool = True, label_barrier: bool = True) Axes[source]
                                                      +get_plot(normalize_rxn_coordinate: bool = True, label_barrier: bool = True) Axes[source]

                                                      Get an NEB plot. Uses Henkelman’s approach of spline fitting each section of the reaction path based on tangent force and energies.

                                                      @@ -15710,7 +15702,7 @@

                                                      Submodules
                                                      -setup_spline(spline_options=None)[source]
                                                      +setup_spline(spline_options=None)[source]

                                                      Setup of the options for the spline interpolation.

                                                      Parameters:
                                                      @@ -15725,7 +15717,7 @@

                                                      Submodules
                                                      -combine_neb_plots(neb_analyses, arranged_neb_analyses=False, reverse_plot=False)[source]
                                                      +combine_neb_plots(neb_analyses, arranged_neb_analyses=False, reverse_plot=False)[source]

                                                      neb_analyses: a list of NEBAnalysis objects.

                                                      arranged_neb_analyses: The code connects two end points with the smallest-energy difference. If all end points have very close energies, it’s @@ -15759,7 +15751,7 @@

                                                      Submodules
                                                      -class WulffFacet(normal, e_surf, normal_pt, dual_pt, index, m_ind_orig, miller)[source]
                                                      +class WulffFacet(normal, e_surf, normal_pt, dual_pt, index, m_ind_orig, miller)[source]

                                                      Bases: object

                                                      Helper container for each Wulff plane.

                                                      @@ -15779,7 +15771,7 @@

                                                      Submodules
                                                      -class WulffShape(lattice: Lattice, miller_list, e_surf_list, symprec=1e-05)[source]
                                                      +class WulffShape(lattice: Lattice, miller_list, e_surf_list, symprec=1e-05)[source]

                                                      Bases: object

                                                      Generate Wulff Shape from list of miller index and surface energies, with given conventional unit cell. @@ -15797,7 +15789,7 @@

                                                      Submodules
                                                      -debug[source]
                                                      +debug[source]

                                                      Whether to print debug information.

                                                      Type:
                                                      @@ -15808,7 +15800,7 @@

                                                      Submodules
                                                      -alpha[source]
                                                      +alpha[source]

                                                      Transparency of the Wulff shape.

                                                      Type:
                                                      @@ -15819,7 +15811,7 @@

                                                      Submodules
                                                      -color_set[source]
                                                      +color_set[source]

                                                      colors to use for facets.

                                                      Type:
                                                      @@ -15830,7 +15822,7 @@

                                                      Submodules
                                                      -grid_off[source]
                                                      +grid_off[source]

                                                      Whether to turn off the grid.

                                                      Type:
                                                      @@ -15841,7 +15833,7 @@

                                                      Submodules
                                                      -axis_off[source]
                                                      +axis_off[source]

                                                      Whether to turn off the axis.

                                                      Type:
                                                      @@ -15852,7 +15844,7 @@

                                                      Submodules
                                                      -show_area[source]
                                                      +show_area[source]

                                                      Whether to show the area of each facet.

                                                      Type:
                                                      @@ -15863,7 +15855,7 @@

                                                      Submodules
                                                      -off_color[source]
                                                      +off_color[source]

                                                      Color of facets not on the Wulff shape.

                                                      Type:
                                                      @@ -15874,7 +15866,7 @@

                                                      Submodules
                                                      -structure[source]
                                                      +structure[source]

                                                      Input conventional unit cell (with H) from lattice.

                                                      Type:
                                                      @@ -15885,7 +15877,7 @@

                                                      Submodules
                                                      -miller_list[source]
                                                      +miller_list[source]

                                                      input Miller indices, for hcp in the form of hkil.

                                                      Type:
                                                      @@ -15896,7 +15888,7 @@

                                                      Submodules
                                                      -hkl_list[source]
                                                      +hkl_list[source]

                                                      Modified Miller indices in the same order as input_miller.

                                                      Type:
                                                      @@ -15907,7 +15899,7 @@

                                                      Submodules
                                                      -e_surf_list[source]
                                                      +e_surf_list[source]

                                                      input surface energies in the same order as input_miller.

                                                      Type:
                                                      @@ -15918,7 +15910,7 @@

                                                      Submodules
                                                      -lattice[source]
                                                      +lattice[source]

                                                      Input lattice for the conventional unit cell.

                                                      Type:
                                                      @@ -15929,7 +15921,7 @@

                                                      Submodules
                                                      -facets[source]
                                                      +facets[source]

                                                      WulffFacet objects considering symmetry.

                                                      Type:
                                                      @@ -15940,7 +15932,7 @@

                                                      Submodules
                                                      -dual_cv_simp[source]
                                                      +dual_cv_simp[source]

                                                      Simplices from the dual convex hull (dual_pt).

                                                      Type:
                                                      @@ -15951,7 +15943,7 @@

                                                      Submodules
                                                      -wulff_pt_list[source]
                                                      +wulff_pt_list[source]

                                                      Wulff points.

                                                      Type:
                                                      @@ -15962,7 +15954,7 @@

                                                      Submodules
                                                      -wulff_cv_simp[source]
                                                      +wulff_cv_simp[source]

                                                      Simplices from the convex hull of wulff_pt_list.

                                                      Type:
                                                      @@ -15973,7 +15965,7 @@

                                                      Submodules
                                                      -on_wulff[source]
                                                      +on_wulff[source]

                                                      List for all input_miller, True if on the Wulff shape.

                                                      Type:
                                                      @@ -15984,7 +15976,7 @@

                                                      Submodules
                                                      -color_area[source]
                                                      +color_area[source]

                                                      List for all input_miller, total area on the Wulff shape, off_wulff = 0.

                                                      Type:
                                                      @@ -15995,7 +15987,7 @@

                                                      Submodules
                                                      -miller_area[source]
                                                      +miller_area[source]

                                                      Dictionary of Miller indices and their corresponding areas.

                                                      Type:
                                                      @@ -16016,21 +16008,21 @@

                                                      Submodules
                                                      -property anisotropy: float[source]
                                                      +property anisotropy: float[source]

                                                      Returns: float: Coefficient of Variation from weighted surface energy. The ideal sphere is 0.

                                                      -property area_fraction_dict: dict[tuple, float][source]
                                                      +property area_fraction_dict: dict[tuple, float][source]

                                                      Returns: dict: {hkl: area_hkl/total area on wulff}.

                                                      -property effective_radius: float[source]
                                                      +property effective_radius: float[source]

                                                      Radius of the WulffShape (in Angstroms) when the WulffShape is approximated as a sphere.

                                                      Returns:
                                                      @@ -16044,13 +16036,13 @@

                                                      Submodules
                                                      -get_line_in_facet(facet)[source]
                                                      +get_line_in_facet(facet)[source]

                                                      Get the sorted pts in a facet used to draw a line.

                                                      -get_plot(color_set='PuBu', grid_off=True, axis_off=True, show_area=False, alpha=1, off_color='red', direction=None, bar_pos=(0.75, 0.15, 0.05, 0.65), bar_on=False, units_in_JPERM2=True, legend_on=True, aspect_ratio=(8, 8), custom_colors=None)[source]
                                                      +get_plot(color_set='PuBu', grid_off=True, axis_off=True, show_area=False, alpha=1, off_color='red', direction=None, bar_pos=(0.75, 0.15, 0.05, 0.65), bar_on=False, units_in_JPERM2=True, legend_on=True, aspect_ratio=(8, 8), custom_colors=None)[source]

                                                      Get the Wulff shape plot.

                                                      Parameters:
                                                      @@ -16096,7 +16088,7 @@

                                                      Submodules
                                                      -get_plotly(color_set='PuBu', off_color='red', alpha=1, custom_colors=None, units_in_JPERM2=True)[source]
                                                      +get_plotly(color_set='PuBu', off_color='red', alpha=1, custom_colors=None, units_in_JPERM2=True)[source]

                                                      Get the Wulff shape as a plotly Figure object.

                                                      Parameters:
                                                      @@ -16131,7 +16123,7 @@

                                                      Submodules
                                                      -property miller_area_dict: dict[tuple, float][source]
                                                      +property miller_area_dict: dict[tuple, float][source]

                                                      area_hkl on wulff}.

                                                      Type:
                                                      @@ -16142,7 +16134,7 @@

                                                      Submodules
                                                      -property miller_energy_dict: dict[tuple, float][source]
                                                      +property miller_energy_dict: dict[tuple, float][source]

                                                      surface energy_hkl}.

                                                      Type:
                                                      @@ -16153,7 +16145,7 @@

                                                      Submodules
                                                      -property shape_factor: float[source]
                                                      +property shape_factor: float[source]

                                                      Determine the critical nucleus size. A large shape factor indicates great anisotropy. See Ballufi, R. W., Allen, S. M. & Carter, W. C. Kinetics

                                                      @@ -16172,7 +16164,7 @@

                                                      Submodules
                                                      -show(*args, **kwargs)[source]
                                                      +show(*args, **kwargs)[source]

                                                      Show the Wulff plot.

                                                      Parameters:
                                                      @@ -16186,27 +16178,27 @@

                                                      Submodules
                                                      -property surface_area: float[source]
                                                      +property surface_area: float[source]

                                                      Total surface area of Wulff shape.

                                                      -property tot_corner_sites[source]
                                                      +property tot_corner_sites[source]

                                                      The number of vertices in the convex hull. Useful for identifying catalytically active sites.

                                                      -property tot_edges[source]
                                                      +property tot_edges[source]

                                                      The number of edges in the convex hull. Useful for identifying catalytically active sites.

                                                      -property total_surface_energy: float[source]
                                                      +property total_surface_energy: float[source]

                                                      Total surface energy of the Wulff shape.

                                                      Returns:
                                                      @@ -16220,13 +16212,13 @@

                                                      Submodules
                                                      -property volume: float[source]
                                                      +property volume: float[source]

                                                      Volume of the Wulff shape.

                                                      -property weighted_surface_energy: float[source]
                                                      +property weighted_surface_energy: float[source]

                                                      Returns: sum(surface_energy_hkl * area_hkl)/ sum(area_hkl).

                                                      @@ -16235,7 +16227,7 @@

                                                      Submodules
                                                      -get_tri_area(pts)[source]
                                                      +get_tri_area(pts)[source]

                                                      Given a list of coords for 3 points, Compute the area of this triangle.

                                                      @@ -16247,7 +16239,7 @@

                                                      Submodules
                                                      -hkl_tuple_to_str(hkl)[source]
                                                      +hkl_tuple_to_str(hkl)[source]

                                                      Prepare for display on plots “(hkl)” for surfaces.

                                                      Parameters:
                                                      @@ -16276,7 +16268,7 @@

                                                      Submodules
                                                      -class XPS(x: NDArray, y: NDArray, *args, **kwargs)[source]
                                                      +class XPS(x: NDArray, y: NDArray, *args, **kwargs)[source]

                                                      Bases: Spectrum

                                                      An X-ray photoelectron spectra.

                                                      @@ -16295,17 +16287,17 @@

                                                      Submodules
                                                      -XLABEL = 'Binding Energy (eV)'[source]
                                                      +XLABEL = 'Binding Energy (eV)'[source]

                                                      -YLABEL = 'Intensity'[source]
                                                      +YLABEL = 'Intensity'[source]
                                                      -classmethod from_dos(dos: CompleteDos) Self[source]
                                                      +classmethod from_dos(dos: CompleteDos) Self[source]
                                                      Parameters:
                                                      -film_transformation: list[source]
                                                      +film_transformation: list[source]
                                                      -film_vectors: list[source]
                                                      +film_vectors: list[source]
                                                      -property match_area[source]
                                                      +property match_area[source]

                                                      The area of the match between the substrate and film super lattice vectors.

                                                      -property match_transformation[source]
                                                      +property match_transformation[source]

                                                      The transformation matrix to convert the film super lattice vectors to the substrate.

                                                      -substrate_sl_vectors: list[source]
                                                      +substrate_sl_vectors: list[source]
                                                      -substrate_transformation: list[source]
                                                      +substrate_transformation: list[source]
                                                      -substrate_vectors: list[source]
                                                      +substrate_vectors: list[source]
                                                      -fast_norm(a)[source]
                                                      +fast_norm(a)[source]

                                                      Much faster variant of numpy linalg norm.

                                                      -gen_sl_transform_matrices(area_multiple)[source]
                                                      +gen_sl_transform_matrices(area_multiple)[source]

                                                      Generates the transformation matrices that convert a set of 2D vectors into a super lattice of integer area multiple as proven in Cassels:

                                                      @@ -512,13 +509,13 @@

                                                      Submodules
                                                      -get_factors(n)[source]
                                                      +get_factors(n)[source]

                                                      Generate all factors of n.

                                                      -is_same_vectors(vec_set1, vec_set2, bidirectional=False, max_length_tol=0.03, max_angle_tol=0.01) bool[source]
                                                      +is_same_vectors(vec_set1, vec_set2, bidirectional=False, max_length_tol=0.03, max_angle_tol=0.01) bool[source]

                                                      Determine if two sets of vectors are the same within length and angle tolerances :param vec_set1: an array of two vectors @@ -529,14 +526,14 @@

                                                      Submodules
                                                      -reduce_vectors(a, b)[source]
                                                      +reduce_vectors(a, b)[source]

                                                      Generate independent and unique basis vectors based on the methodology of Zur and McGill.

                                                      -rel_angle(vec_set1, vec_set2)[source]
                                                      +rel_angle(vec_set1, vec_set2)[source]

                                                      Calculate the relative angle between two vector sets.

                                                      Parameters:
                                                      @@ -550,19 +547,19 @@

                                                      Submodules
                                                      -rel_strain(vec1, vec2)[source]
                                                      +rel_strain(vec1, vec2)[source]

                                                      Calculate relative strain between two vectors.

                                                      -vec_angle(a, b)[source]
                                                      +vec_angle(a, b)[source]

                                                      Calculate angle between two vectors.

                                                      -vec_area(a, b)[source]
                                                      +vec_area(a, b)[source]

                                                      Area of lattice plane defined by two vectors.

                                                      diff --git a/docs/pymatgen.analysis.magnetism.html b/docs/pymatgen.analysis.magnetism.html index 3080caad432..e7da91c9450 100644 --- a/docs/pymatgen.analysis.magnetism.html +++ b/docs/pymatgen.analysis.magnetism.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.magnetism package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.magnetism package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                      - 2024.10.27 -
                                                      @@ -179,7 +176,7 @@

                                                      Submodules
                                                      -class CollinearMagneticStructureAnalyzer(structure: Structure, overwrite_magmom_mode: str | OverwriteMagmomMode = OverwriteMagmomMode.none, round_magmoms: bool = False, detect_valences: bool = False, make_primitive: bool = True, default_magmoms: dict | None = None, set_net_positive: bool = True, threshold: float = 0, threshold_nonmag: float = 0.1, threshold_ordering: float = 1e-08)[source]
                                                      +class CollinearMagneticStructureAnalyzer(structure: Structure, overwrite_magmom_mode: str | OverwriteMagmomMode = OverwriteMagmomMode.none, round_magmoms: bool = False, detect_valences: bool = False, make_primitive: bool = True, default_magmoms: dict | None = None, set_net_positive: bool = True, threshold: float = 0, threshold_nonmag: float = 0.1, threshold_ordering: float = 1e-08)[source]

                                                      Bases: object

                                                      A class which provides a few helpful methods to analyze collinear magnetic structures.

                                                      @@ -240,7 +237,7 @@

                                                      Submodules
                                                      -get_exchange_group_info(symprec: float = 0.01, angle_tolerance: float = 5) tuple[str, int][source]
                                                      +get_exchange_group_info(symprec: float = 0.01, angle_tolerance: float = 5) tuple[str, int][source]

                                                      Get the information on the symmetry of the Hamiltonian describing the exchange energy of the system, taking into account relative direction of magnetic moments but not their @@ -264,7 +261,7 @@

                                                      Submodules
                                                      -get_ferromagnetic_structure(make_primitive: bool = True) Structure[source]
                                                      +get_ferromagnetic_structure(make_primitive: bool = True) Structure[source]

                                                      Get a Structure with all magnetic moments positive or zero.

                                                      @@ -280,7 +277,7 @@

                                                      Submodules
                                                      -get_nonmagnetic_structure(make_primitive: bool = True) Structure[source]
                                                      +get_nonmagnetic_structure(make_primitive: bool = True) Structure[source]

                                                      Get a Structure without magnetic moments defined.

                                                      Parameters:
                                                      @@ -295,7 +292,7 @@

                                                      Submodules
                                                      -get_structure_with_only_magnetic_atoms(make_primitive: bool = True) Structure[source]
                                                      +get_structure_with_only_magnetic_atoms(make_primitive: bool = True) Structure[source]

                                                      Get a Structure with only magnetic atoms present.

                                                      Parameters:
                                                      @@ -310,26 +307,26 @@

                                                      Submodules
                                                      -get_structure_with_spin() Structure[source]
                                                      +get_structure_with_spin() Structure[source]

                                                      Get a Structure with species decorated with spin values instead of using magmom site properties.

                                                      -property is_magnetic: bool[source]
                                                      +property is_magnetic: bool[source]

                                                      Convenience property, returns True if any non-zero magmoms present.

                                                      -property magmoms: ndarray[source]
                                                      +property magmoms: ndarray[source]

                                                      Convenience property, returns magmoms as a numpy array.

                                                      -property magnetic_species_and_magmoms: dict[str, Any][source]
                                                      +property magnetic_species_and_magmoms: dict[str, Any][source]

                                                      A dict of magnetic species and the magnitude of their associated magmoms. Will return a list if there are multiple magmoms per species.

                                                      @@ -342,7 +339,7 @@

                                                      Submodules
                                                      -matches_ordering(other: Structure) bool[source]
                                                      +matches_ordering(other: Structure) bool[source]

                                                      Compares the magnetic orderings of one structure with another.

                                                      Parameters:
                                                      @@ -359,13 +356,13 @@

                                                      Submodules
                                                      -property number_of_magnetic_sites: int[source]
                                                      +property number_of_magnetic_sites: int[source]

                                                      Number of magnetic sites present in structure.

                                                      -number_of_unique_magnetic_sites(symprec: float = 0.001, angle_tolerance: float = 5) int[source]
                                                      +number_of_unique_magnetic_sites(symprec: float = 0.001, angle_tolerance: float = 5) int[source]
                                                      Parameters:
                                                      -property types_of_magnetic_species: tuple[Element | Species | DummySpecies, ...][source]
                                                      +property types_of_magnetic_species: tuple[Element | Species | DummySpecies, ...][source]

                                                      Equivalent to Structure.types_of_specie but only returns magnetic species.

                                                      Returns:
                                                      @@ -429,18 +426,18 @@

                                                      Submodules
                                                      -class MagneticDeformation(deformation, type)[source]
                                                      +class MagneticDeformation(deformation, type)[source]

                                                      Bases: NamedTuple

                                                      Create new instance of MagneticDeformation(deformation, type)

                                                      -deformation: float[source]
                                                      +deformation: float[source]

                                                      Alias for field number 0

                                                      -type: str[source]
                                                      +type: str[source]

                                                      Alias for field number 1

                                                      @@ -448,7 +445,7 @@

                                                      Submodules
                                                      -class MagneticStructureEnumerator(structure: Structure, default_magmoms: dict[str, float] | None = None, strategies: list[str] | tuple[str, ...] = ('ferromagnetic', 'antiferromagnetic'), automatic: bool = True, truncate_by_symmetry: bool = True, transformation_kwargs: dict | None = None)[source]
                                                      +class MagneticStructureEnumerator(structure: Structure, default_magmoms: dict[str, float] | None = None, strategies: list[str] | tuple[str, ...] = ('ferromagnetic', 'antiferromagnetic'), automatic: bool = True, truncate_by_symmetry: bool = True, transformation_kwargs: dict | None = None)[source]

                                                      Bases: object

                                                      Combines MagneticStructureAnalyzer and MagOrderingTransformation to automatically generate a set of transformations for a given structure @@ -481,83 +478,83 @@

                                                      Submodules
                                                      -available_strategies = ('ferromagnetic', 'antiferromagnetic', 'ferrimagnetic_by_motif', 'ferrimagnetic_by_species', 'antiferromagnetic_by_motif', 'nonmagnetic')[source]
                                                      +available_strategies = ('ferromagnetic', 'antiferromagnetic', 'ferrimagnetic_by_motif', 'ferrimagnetic_by_species', 'antiferromagnetic_by_motif', 'nonmagnetic')[source]

                                                      -class Ordering(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
                                                      +class Ordering(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

                                                      Bases: Enum

                                                      Enumeration defining possible magnetic orderings.

                                                      -AFM = 'AFM'[source]
                                                      +AFM = 'AFM'[source]
                                                      -FM = 'FM'[source]
                                                      +FM = 'FM'[source]
                                                      -FiM = 'FiM'[source]
                                                      +FiM = 'FiM'[source]
                                                      -NM = 'NM'[source]
                                                      +NM = 'NM'[source]
                                                      -Unknown = 'Unknown'[source]
                                                      +Unknown = 'Unknown'[source]
                                                      -class OverwriteMagmomMode(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
                                                      +class OverwriteMagmomMode(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

                                                      Bases: Enum

                                                      Enumeration defining different modes for analyzer.

                                                      -none = 'none'[source]
                                                      +none = 'none'[source]
                                                      -normalize = 'normalize'[source]
                                                      +normalize = 'normalize'[source]
                                                      -replace_all = 'replace_all'[source]
                                                      +replace_all = 'replace_all'[source]
                                                      -replace_all_if_undefined = 'replace_all_if_undefined'[source]
                                                      +replace_all_if_undefined = 'replace_all_if_undefined'[source]
                                                      -respect_sign = 'respect_sign'[source]
                                                      +respect_sign = 'respect_sign'[source]
                                                      -respect_zeros = 'respect_zeros'[source]
                                                      +respect_zeros = 'respect_zeros'[source]
                                                      -magnetic_deformation(structure_A: Structure, structure_B: Structure) MagneticDeformation[source]
                                                      +magnetic_deformation(structure_A: Structure, structure_B: Structure) MagneticDeformation[source]

                                                      Calculate ‘magnetic deformation proxy’, a measure of deformation (norm of finite strain) between ‘non-magnetic’ (non-spin-polarized) and @@ -585,12 +582,12 @@

                                                      Submodules
                                                      -class HeisenbergMapper(ordered_structures, energies, cutoff=0, tol: float = 0.02)[source]
                                                      +class HeisenbergMapper(ordered_structures, energies, cutoff=0, tol: float = 0.02)[source]

                                                      Bases: object

                                                      Compute exchange parameters from low energy magnetic orderings.

                                                      -strategy[source]
                                                      +strategy[source]

                                                      Class from pymatgen.analysis.local_env for constructing graphs.

                                                      Type:
                                                      @@ -601,7 +598,7 @@

                                                      Submodules
                                                      -sgraphs[source]
                                                      +sgraphs[source]

                                                      StructureGraph objects.

                                                      Type:
                                                      @@ -612,7 +609,7 @@

                                                      Submodules
                                                      -unique_site_ids[source]
                                                      +unique_site_ids[source]

                                                      Maps each site to its unique numerical identifier.

                                                      Type:
                                                      @@ -623,7 +620,7 @@

                                                      Submodules
                                                      -wyckoff_ids[source]
                                                      +wyckoff_ids[source]

                                                      Maps unique numerical identifier to wyckoff position.

                                                      Type:
                                                      @@ -634,7 +631,7 @@

                                                      Submodules
                                                      -nn_interactions[source]
                                                      +nn_interactions[source]

                                                      {i: j} pairs of NN interactions between unique sites.

                                                      Type:
                                                      @@ -645,7 +642,7 @@

                                                      Submodules
                                                      -dists[source]
                                                      +dists[source]

                                                      NN, NNN, and NNNN interaction distances

                                                      Type:
                                                      @@ -656,7 +653,7 @@

                                                      Submodules
                                                      -ex_mat[source]
                                                      +ex_mat[source]

                                                      Invertible Heisenberg Hamiltonian for each graph.

                                                      Type:
                                                      @@ -667,7 +664,7 @@

                                                      Submodules
                                                      -ex_params[source]
                                                      +ex_params[source]

                                                      Exchange parameter values (meV/atom)

                                                      Type:
                                                      @@ -700,7 +697,7 @@

                                                      Submodules
                                                      -estimate_exchange(fm_struct=None, afm_struct=None, fm_e=None, afm_e=None)[source]
                                                      +estimate_exchange(fm_struct=None, afm_struct=None, fm_e=None, afm_e=None)[source]

                                                      Estimate <J> for a structure based on low energy FM and AFM orderings.

                                                      Parameters:
                                                      @@ -722,7 +719,7 @@

                                                      Submodules
                                                      -get_exchange()[source]
                                                      +get_exchange()[source]

                                                      Take Heisenberg Hamiltonian and corresponding energy for each row and solve for the exchange parameters.

                                                      @@ -737,7 +734,7 @@

                                                      Submodules
                                                      -get_heisenberg_model()[source]
                                                      +get_heisenberg_model()[source]

                                                      Save results of mapping to a HeisenbergModel object.

                                                      Returns:
                                                      @@ -751,7 +748,7 @@

                                                      Submodules
                                                      -get_interaction_graph(filename=None)[source]
                                                      +get_interaction_graph(filename=None)[source]

                                                      Get a StructureGraph with edges and weights that correspond to exchange interactions and J_ij values, respectively.

                                                      @@ -769,7 +766,7 @@

                                                      Submodules
                                                      -get_low_energy_orderings()[source]
                                                      +get_low_energy_orderings()[source]

                                                      Find lowest energy FM and AFM orderings to compute E_AFM - E_FM.

                                                      Returns:
                                                      @@ -786,7 +783,7 @@

                                                      Submodules
                                                      -get_mft_temperature(j_avg)[source]
                                                      +get_mft_temperature(j_avg)[source]

                                                      Crude mean field estimate of critical temperature based on <J> for one sublattice, or solving the coupled equations for a multi-sublattice material.

                                                      @@ -807,7 +804,7 @@

                                                      Submodules
                                                      -class HeisenbergModel(formula=None, structures=None, energies=None, cutoff=None, tol=None, sgraphs=None, unique_site_ids=None, wyckoff_ids=None, nn_interactions=None, dists=None, ex_mat=None, ex_params=None, javg=None, igraph=None)[source]
                                                      +class HeisenbergModel(formula=None, structures=None, energies=None, cutoff=None, tol=None, sgraphs=None, unique_site_ids=None, wyckoff_ids=None, nn_interactions=None, dists=None, ex_mat=None, ex_params=None, javg=None, igraph=None)[source]

                                                      Bases: MSONable

                                                      Store a Heisenberg model fit to low-energy magnetic orderings. Intended to be generated by HeisenbergMapper.get_heisenberg_model().

                                                      @@ -837,13 +834,13 @@

                                                      Submodules
                                                      -as_dict()[source]
                                                      +as_dict()[source]

                                                      Because some dicts have tuple keys, some sanitization is required for JSON compatibility.

                                                      -classmethod from_dict(dct: dict) Self[source]
                                                      +classmethod from_dict(dct: dict) Self[source]

                                                      Create a HeisenbergModel from a dict.

                                                      @@ -851,7 +848,7 @@

                                                      Submodules
                                                      -class HeisenbergScreener(structures, energies, screen=False)[source]
                                                      +class HeisenbergScreener(structures, energies, screen=False)[source]

                                                      Bases: object

                                                      Clean and screen magnetic orderings.

                                                      Pre-processes magnetic orderings and energies for HeisenbergMapper. @@ -867,7 +864,7 @@

                                                      Submodules
                                                      -screened_structures[source]
                                                      +screened_structures[source]

                                                      Sorted structures.

                                                      Type:
                                                      @@ -878,7 +875,7 @@

                                                      Submodules
                                                      -screened_energies[source]
                                                      +screened_energies[source]

                                                      Sorted energies.

                                                      Type:
                                                      @@ -895,7 +892,7 @@

                                                      Submodules
                                                      -class JahnTellerAnalyzer[source]
                                                      +class JahnTellerAnalyzer[source]

                                                      Bases: object

                                                      Will attempt to classify if structure may be Jahn-Teller active. Class currently uses datafile of hard-coded common Jahn-Teller @@ -906,7 +903,7 @@

                                                      Submodules
                                                      -get_analysis(structure: Structure, calculate_valences: bool = True, guesstimate_spin: bool = False, op_threshold: float = 0.1) dict[source]
                                                      +get_analysis(structure: Structure, calculate_valences: bool = True, guesstimate_spin: bool = False, op_threshold: float = 0.1) dict[source]

                                                      Convenience method, uses get_analysis_and_structure method.

                                                      Obtain an analysis of a given structure and if it may be Jahn-Teller active or not. This is a heuristic, and may give false positives and @@ -934,7 +931,7 @@

                                                      Submodules
                                                      -get_analysis_and_structure(structure: Structure, calculate_valences: bool = True, guesstimate_spin: bool = False, op_threshold: float = 0.1) tuple[dict, Structure][source]
                                                      +get_analysis_and_structure(structure: Structure, calculate_valences: bool = True, guesstimate_spin: bool = False, op_threshold: float = 0.1) tuple[dict, Structure][source]

                                                      Obtain an analysis of a given structure and if it may be Jahn-Teller active or not. This is a heuristic, and may give false positives and false negatives (false positives are preferred).

                                                      @@ -961,7 +958,7 @@

                                                      Submodules
                                                      -get_magnitude_of_effect_from_species(species: str | Species, spin_state: str, motif: str) str[source]
                                                      +get_magnitude_of_effect_from_species(species: str | Species, spin_state: str, motif: str) str[source]

                                                      Get magnitude of Jahn-Teller effect from provided species, spin state and motif.

                                                      Parameters:
                                                      @@ -982,7 +979,7 @@

                                                      Submodules
                                                      -static get_magnitude_of_effect_from_spin_config(motif: str, spin_config: dict[str, float]) str[source]
                                                      +static get_magnitude_of_effect_from_spin_config(motif: str, spin_config: dict[str, float]) str[source]

                                                      Roughly, the magnitude of Jahn-Teller distortion will be: * in octahedral environments, strong if e_g orbitals unevenly occupied but weak if t_2g orbitals unevenly @@ -1006,7 +1003,7 @@

                                                      Submodules
                                                      -is_jahn_teller_active(structure: Structure, calculate_valences: bool = True, guesstimate_spin: bool = False, op_threshold: float = 0.1) bool[source]
                                                      +is_jahn_teller_active(structure: Structure, calculate_valences: bool = True, guesstimate_spin: bool = False, op_threshold: float = 0.1) bool[source]

                                                      Convenience method, uses get_analysis_and_structure method. Check if a given structure and if it may be Jahn-Teller active or not. This is a heuristic, and may give false positives and @@ -1036,7 +1033,7 @@

                                                      Submodules
                                                      -static mu_so(species: str | Species, motif: Literal['oct', 'tet'], spin_state: Literal['high', 'low']) float | None[source]
                                                      +static mu_so(species: str | Species, motif: Literal['oct', 'tet'], spin_state: Literal['high', 'low']) float | None[source]

                                                      Calculate the spin-only magnetic moment for a given species. Only supports transition metals.

                                                      Parameters:
                                                      @@ -1061,7 +1058,7 @@

                                                      Submodules
                                                      -tag_structure(structure: Structure, calculate_valences: bool = True, guesstimate_spin: bool = False, op_threshold: float = 0.1) Structure[source]
                                                      +tag_structure(structure: Structure, calculate_valences: bool = True, guesstimate_spin: bool = False, op_threshold: float = 0.1) Structure[source]

                                                      Convenience method, uses get_analysis_and_structure method. Add a “possible_jt_active” site property on Structure.

                                                      diff --git a/docs/pymatgen.analysis.solar.html b/docs/pymatgen.analysis.solar.html index 8e7a12dfe04..6f7dcfc0de0 100644 --- a/docs/pymatgen.analysis.solar.html +++ b/docs/pymatgen.analysis.solar.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.solar package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.solar package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                      - 2024.10.27 -
                                                      @@ -105,7 +102,7 @@

                                                      Submodules
                                                      -absorption_coefficient(dielectric)[source]
                                                      +absorption_coefficient(dielectric)[source]

                                                      Calculate the optical absorption coefficient from an input set of pymatgen vasprun dielectric constant data.

                                                      @@ -127,19 +124,19 @@

                                                      Submodules
                                                      -get_dir_indir_gap(run='')[source]
                                                      +get_dir_indir_gap(run='')[source]

                                                      Get direct and indirect bandgaps for a vasprun.xml.

                                                      -optics(path='')[source]
                                                      +optics(path='')[source]

                                                      Helper function to calculate optical absorption coefficient.

                                                      -parse_dielectric_data(data)[source]
                                                      +parse_dielectric_data(data)[source]

                                                      Convert a set of 2D vasprun formatted dielectric data to the eigenvalues of each corresponding 3x3 symmetric numpy matrices.

                                                      @@ -162,7 +159,7 @@

                                                      Submodules
                                                      -slme(material_energy_for_absorbance_data, material_absorbance_data, material_direct_allowed_gap, material_indirect_gap, thickness=5e-05, temperature=293.15, absorbance_in_inverse_centimeters=False, cut_off_absorbance_below_direct_allowed_gap=True, plot_current_voltage=False)[source]
                                                      +slme(material_energy_for_absorbance_data, material_absorbance_data, material_direct_allowed_gap, material_indirect_gap, thickness=5e-05, temperature=293.15, absorbance_in_inverse_centimeters=False, cut_off_absorbance_below_direct_allowed_gap=True, plot_current_voltage=False)[source]

                                                      Calculate the SLME.

                                                      Parameters:
                                                      @@ -186,7 +183,7 @@

                                                      Submodules
                                                      -to_matrix(xx, yy, zz, xy, yz, xz)[source]
                                                      +to_matrix(xx, yy, zz, xy, yz, xz)[source]

                                                      Convert a list of matrix components to a symmetric 3x3 matrix. Inputs should be in the order xx, yy, zz, xy, yz, xz.

                                                      diff --git a/docs/pymatgen.analysis.structure_prediction.html b/docs/pymatgen.analysis.structure_prediction.html index 91acbdca0e4..b40626cbecf 100644 --- a/docs/pymatgen.analysis.structure_prediction.html +++ b/docs/pymatgen.analysis.structure_prediction.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.structure_prediction package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.structure_prediction package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                      - 2024.10.27 -
                                                      @@ -138,7 +135,7 @@

                                                      Submodules
                                                      -get_dopants_from_shannon_radii(bonded_structure, num_dopants=5, match_oxi_sign=False)[source]
                                                      +get_dopants_from_shannon_radii(bonded_structure, num_dopants=5, match_oxi_sign=False)[source]

                                                      Get dopant suggestions based on Shannon radii differences.

                                                      Parameters:
                                                      @@ -175,7 +172,7 @@

                                                      Submodules
                                                      -get_dopants_from_substitution_probabilities(structure, num_dopants=5, threshold=0.001, match_oxi_sign=False) dict[source]
                                                      +get_dopants_from_substitution_probabilities(structure, num_dopants=5, threshold=0.001, match_oxi_sign=False) dict[source]

                                                      Get dopant suggestions based on substitution probabilities.

                                                      Parameters:
                                                      @@ -216,7 +213,7 @@

                                                      Submodules
                                                      -class SubstitutionPredictor(lambda_table=None, alpha=-5, threshold=0.001)[source]
                                                      +class SubstitutionPredictor(lambda_table=None, alpha=-5, threshold=0.001)[source]

                                                      Bases: object

                                                      Predicts likely substitutions either to or from a given composition or species list using the SubstitutionProbability.

                                                      @@ -231,7 +228,7 @@

                                                      Submodules
                                                      -composition_prediction(composition, to_this_composition=True)[source]
                                                      +composition_prediction(composition, to_this_composition=True)[source]

                                                      Get charged balanced substitutions from a starting or ending composition.

                                                      @@ -255,7 +252,7 @@

                                                      Submodules
                                                      -list_prediction(species, to_this_composition=True)[source]
                                                      +list_prediction(species, to_this_composition=True)[source]
                                                      Parameters:
                                                      -cond_prob(s1, s2)[source]
                                                      +cond_prob(s1, s2)[source]

                                                      Conditional probability of substituting s1 for s2.

                                                      Parameters:
                                                      @@ -322,7 +319,7 @@

                                                      Submodules
                                                      -cond_prob_list(l1, l2)[source]
                                                      +cond_prob_list(l1, l2)[source]

                                                      Find the probabilities of 2 lists. These should include ALL species. This is the probability conditional on l2.

                                                      @@ -341,7 +338,7 @@

                                                      Submodules
                                                      -classmethod from_dict(dct: dict) Self[source]
                                                      +classmethod from_dict(dct: dict) Self[source]
                                                      Parameters:

                                                      dct (dict) – Dict representation.

                                                      @@ -354,7 +351,7 @@

                                                      Submodules
                                                      -get_lambda(s1, s2)[source]
                                                      +get_lambda(s1, s2)[source]
                                                      Parameters:
                                                        @@ -370,7 +367,7 @@

                                                        Submodules
                                                        -get_px(sp: SpeciesLike) float[source]
                                                        +get_px(sp: SpeciesLike) float[source]
                                                        Parameters:

                                                        sp (SpeciesLike) – Species.

                                                        @@ -386,7 +383,7 @@

                                                        Submodules
                                                        -pair_corr(s1, s2)[source]
                                                        +pair_corr(s1, s2)[source]

                                                        Pair correlation of two species.

                                                        Returns:
                                                        @@ -397,7 +394,7 @@

                                                        Submodules
                                                        -prob(s1, s2)[source]
                                                        +prob(s1, s2)[source]

                                                        Get the probability of 2 species substitution. Not used by the structure predictor.

                                                        @@ -415,7 +412,7 @@

                                                        Submodules
                                                        -class Substitutor(threshold=0.001, symprec: float = 0.1, **kwargs)[source]
                                                        +class Substitutor(threshold=0.001, symprec: float = 0.1, **kwargs)[source]

                                                        Bases: MSONable

                                                        This object uses a data mined ionic substitution approach to propose compounds likely to be stable. It relies on an algorithm presented in @@ -436,18 +433,18 @@

                                                        Submodules
                                                        -as_dict()[source]
                                                        +as_dict()[source]

                                                        Get MSONable dict.

                                                        -charge_balanced_tol: float = 1e-09[source]
                                                        +charge_balanced_tol: float = 1e-09[source]
                                                        -classmethod from_dict(dct: dict) Self[source]
                                                        +classmethod from_dict(dct: dict) Self[source]
                                                        Parameters:

                                                        dct (dict) – Dict representation.

                                                        @@ -460,21 +457,21 @@

                                                        Submodules
                                                        -get_allowed_species()[source]
                                                        +get_allowed_species()[source]

                                                        Get the species in the domain of the probability function any other specie will not work.

                                                        -pred_from_comp(composition) list[dict][source]
                                                        +pred_from_comp(composition) list[dict][source]

                                                        Similar to pred_from_list except this method returns a list after checking that compositions are charge balanced.

                                                        -pred_from_list(species_list) list[dict][source]
                                                        +pred_from_list(species_list) list[dict][source]

                                                        There are an exceptionally large number of substitutions to look at (260^n), where n is the number of species in the list. We need a more efficient than brute force way of going @@ -504,7 +501,7 @@

                                                        Submodules
                                                        -pred_from_structures(target_species, structures, remove_duplicates=True, remove_existing=False) list[TransformedStructure][source]
                                                        +pred_from_structures(target_species, structures, remove_duplicates=True, remove_existing=False) list[TransformedStructure][source]

                                                        Performs a structure prediction targeting compounds containing all of the target_species, based on a list of structure (those structures can for instance come from a database like the ICSD). It will return @@ -543,7 +540,7 @@

                                                        Submodules
                                                        -class DLSVolumePredictor(cutoff=4.0, min_scaling=0.5, max_scaling=1.5)[source]
                                                        +class DLSVolumePredictor(cutoff=4.0, min_scaling=0.5, max_scaling=1.5)[source]

                                                        Bases: object

                                                        Data-mined lattice scaling (DLS) scheme that relies on data-mined bond lengths to predict the crystal volume of a given structure.

                                                        @@ -569,7 +566,7 @@

                                                        Submodules
                                                        -get_predicted_structure(structure: Structure, icsd_vol=False)[source]
                                                        +get_predicted_structure(structure: Structure, icsd_vol=False)[source]

                                                        Given a structure, returns back the structure scaled to predicted volume.

                                                        @@ -584,7 +581,7 @@

                                                        Submodules
                                                        -predict(structure: Structure, icsd_vol=False)[source]
                                                        +predict(structure: Structure, icsd_vol=False)[source]

                                                        Given a structure, returns the predicted volume.

                                                        Parameters:
                                                        @@ -603,7 +600,7 @@

                                                        Submodules
                                                        -class RLSVolumePredictor(check_isostructural=True, radii_type='ionic-atomic', use_bv=True)[source]
                                                        +class RLSVolumePredictor(check_isostructural=True, radii_type='ionic-atomic', use_bv=True)[source]

                                                        Bases: object

                                                        Reference lattice scaling (RLS) scheme that predicts the volume of a structure based on a known crystal structure.

                                                        @@ -624,7 +621,7 @@

                                                        Submodules
                                                        -get_predicted_structure(structure: Structure, ref_structure)[source]
                                                        +get_predicted_structure(structure: Structure, ref_structure)[source]

                                                        Given a structure, returns back the structure scaled to predicted volume.

                                                        @@ -643,7 +640,7 @@

                                                        Submodules
                                                        -predict(structure: Structure, ref_structure)[source]
                                                        +predict(structure: Structure, ref_structure)[source]

                                                        Given a structure, returns the predicted volume.

                                                        Parameters:
                                                        diff --git a/docs/pymatgen.analysis.topological.html b/docs/pymatgen.analysis.topological.html index a499775a5e3..a1cbd0de282 100644 --- a/docs/pymatgen.analysis.topological.html +++ b/docs/pymatgen.analysis.topological.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.topological package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.topological package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                        - 2024.10.27 -
                                                        @@ -100,7 +97,7 @@

                                                        Submoduleshttps://www.nature.com/articles/s41524-020-0319-4.

                                                        -class SOCSpillage(wf_noso='', wf_so='')[source]
                                                        +class SOCSpillage(wf_noso='', wf_so='')[source]

                                                        Bases: object

                                                        Spin-orbit spillage criteria to predict whether a material is topologically non-trivial. The spillage criteria physically signifies number of band-inverted electrons. @@ -116,19 +113,19 @@

                                                        Submodules
                                                        -static isclose(n1, n2, rel_tol=1e-07)[source]
                                                        +static isclose(n1, n2, rel_tol=1e-07)[source]

                                                        Checking if the numbers are close enough.

                                                        -static orth(A)[source]
                                                        +static orth(A)[source]

                                                        Helper function to create orthonormal basis.

                                                        -overlap_so_spinpol()[source]
                                                        +overlap_so_spinpol()[source]

                                                        Main function to calculate SOC spillage.

                                                        diff --git a/docs/pymatgen.analysis.xas.html b/docs/pymatgen.analysis.xas.html index da0179c520b..1b77b5972a4 100644 --- a/docs/pymatgen.analysis.xas.html +++ b/docs/pymatgen.analysis.xas.html @@ -1,23 +1,23 @@ + + - + - pymatgen.analysis.xas package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.analysis.xas package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                        - 2024.10.27 -
                                                        @@ -57,6 +54,7 @@
                                                      • XAS.edge
                                                      • XAS.spectrum_type
                                                      • XAS.absorbing_index
                                                      • +
                                                      • XAS.zero_negative_intensity
                                                      • XAS.XLABEL
                                                      • XAS.YLABEL
                                                      • XAS.stitch()
                                                      • @@ -104,7 +102,7 @@

                                                        Submodules
                                                        -class XAS(x, y, structure, absorbing_element, edge='K', spectrum_type='XANES', absorbing_index=None)[source]
                                                        +class XAS(x: Sequence, y: Sequence, structure: Structure, absorbing_element: str | Element, edge: str = 'K', spectrum_type: str = 'XANES', absorbing_index: int | None = None, zero_negative_intensity: bool = False)[source]

                                                        Bases: Spectrum

                                                        Basic XAS object.

                                                        @@ -124,7 +122,7 @@

                                                        Submodules
                                                        -x[source]
                                                        +x[source]

                                                        The sequence of energies.

                                                        Type:
                                                        @@ -135,7 +133,7 @@

                                                        Submodules
                                                        -y[source]
                                                        +y[source]

                                                        The sequence of mu(E).

                                                        Type:
                                                        @@ -146,18 +144,18 @@

                                                        Submodules
                                                        -absorbing_element[source]
                                                        +absorbing_element[source]

                                                        The absorbing element of the spectrum.

                                                        Type:
                                                        -

                                                        str

                                                        +

                                                        str or .Element

                                                        -edge[source]
                                                        +edge[source]

                                                        The edge of the spectrum.

                                                        Type:
                                                        @@ -168,7 +166,7 @@

                                                        Submodules
                                                        -spectrum_type[source]
                                                        +spectrum_type[source]

                                                        The type of the spectrum (XANES or EXAFS).

                                                        Type:
                                                        @@ -179,7 +177,7 @@

                                                        Submodules
                                                        -absorbing_index[source]
                                                        +absorbing_index[source]

                                                        The absorbing index of the spectrum.

                                                        Type:
                                                        @@ -188,20 +186,31 @@

                                                        Submodules +
                                                        +zero_negative_intensity[source]
                                                        +

                                                        Whether to set unphysical negative intensities to zero

                                                        +
                                                        +
                                                        Type:
                                                        +

                                                        bool

                                                        +
                                                        +
                                                        +

                                                        +

                                                        Initialize a spectrum object.

                                                        -XLABEL = 'Energy'[source]
                                                        +XLABEL = 'Energy'[source]
                                                        -YLABEL = 'Intensity'[source]
                                                        +YLABEL = 'Intensity'[source]
                                                        -stitch(other: XAS, num_samples: int = 500, mode: Literal['XAFS', 'L23'] = 'XAFS') XAS[source]
                                                        +stitch(other: XAS, num_samples: int = 500, mode: Literal['XAFS', 'L23'] = 'XAFS') XAS[source]

                                                        Stitch XAS objects to get the full XAFS spectrum or L23 edge XANES spectrum depending on the mode.

                                                          @@ -245,7 +254,7 @@

                                                          Submodules
                                                          -site_weighted_spectrum(xas_list: list[XAS], num_samples: int = 500) XAS[source]
                                                          +site_weighted_spectrum(xas_list: list[XAS], num_samples: int = 500) XAS[source]

                                                          Obtain site-weighted XAS object based on site multiplicity for each absorbing index and its corresponding site-wise spectrum.

                                                          diff --git a/docs/pymatgen.apps.battery.html b/docs/pymatgen.apps.battery.html index 8033fe50f37..f1998cfdb49 100644 --- a/docs/pymatgen.apps.battery.html +++ b/docs/pymatgen.apps.battery.html @@ -1,23 +1,23 @@ + + - + - pymatgen.apps.battery package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.apps.battery package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                          - 2024.10.27 -
                                                          @@ -231,7 +228,7 @@

                                                          Submodules
                                                          -class BatteryAnalyzer(struct_oxid, working_ion='Li', oxi_override=None)[source]
                                                          +class BatteryAnalyzer(struct_oxid, working_ion='Li', oxi_override=None)[source]

                                                          Bases: object

                                                          A suite of methods for starting with an oxidized structure and determining its potential as a battery.

                                                          Pass in a structure for analysis.

                                                          @@ -248,7 +245,7 @@

                                                          Submodules
                                                          -get_max_capgrav(remove=True, insert=True)[source]
                                                          +get_max_capgrav(remove=True, insert=True)[source]

                                                          Give max capacity in mAh/g for inserting and removing a charged ion Note that the weight is normalized to the most ion-packed state, thus removal of 1 Li from LiFePO4 gives the same capacity as insertion of 1 Li into FePO4.

                                                          @@ -267,7 +264,7 @@

                                                          Submodules
                                                          -get_max_capvol(remove=True, insert=True, volume=None)[source]
                                                          +get_max_capvol(remove=True, insert=True, volume=None)[source]

                                                          Give max capacity in mAh/cc for inserting and removing a charged ion into base structure.

                                                          Parameters:
                                                          @@ -285,7 +282,7 @@

                                                          Submodules
                                                          -get_removals_int_oxid()[source]
                                                          +get_removals_int_oxid()[source]

                                                          Get a set of ion removal steps, e.g. set([1 2 4]) etc. in order to produce integer oxidation states of the redox metals. If multiple redox metals are present, all combinations of reduction/oxidation are tested. @@ -303,7 +300,7 @@

                                                          Submodules
                                                          -property max_ion_insertion[source]
                                                          +property max_ion_insertion[source]

                                                          Maximum number of ion A that can be inserted while maintaining charge-balance. No consideration is given to whether there (geometrically speaking) are ion sites to actually accommodate the extra ions.

                                                          @@ -316,7 +313,7 @@

                                                          Submodules
                                                          -property max_ion_removal[source]
                                                          +property max_ion_removal[source]

                                                          Maximum number of ion A that can be removed while maintaining charge-balance.

                                                          Returns:
                                                          @@ -329,7 +326,7 @@

                                                          Submodules
                                                          -is_redox_active_intercalation(element) bool[source]
                                                          +is_redox_active_intercalation(element) bool[source]

                                                          True if element is redox active and interesting for intercalation materials.

                                                          Parameters:
                                                          @@ -348,7 +345,7 @@

                                                          Submodules
                                                          -class AbstractElectrode(voltage_pairs: tuple[AbstractVoltagePair, ...], working_ion_entry: ComputedEntry, framework_formula: str)[source]
                                                          +class AbstractElectrode(voltage_pairs: tuple[AbstractVoltagePair, ...], working_ion_entry: ComputedEntry, framework_formula: str)[source]

                                                          Bases: Sequence, MSONable

                                                          An Abstract Base Class representing an Electrode. It is essentially a sequence of VoltagePairs. Generally, subclasses only need to implement @@ -381,7 +378,7 @@

                                                          Submodules
                                                          -voltage_pairs[source]
                                                          +voltage_pairs[source]

                                                          Objects that represent each voltage step

                                                          Type:
                                                          @@ -392,13 +389,13 @@

                                                          Submodules
                                                          -working_ion[source]
                                                          +working_ion[source]

                                                          Representation of the working ion that only contains element type

                                                          -working_ion_entry[source]
                                                          +working_ion_entry[source]

                                                          Representation of the working_ion that contains the energy

                                                          Type:
                                                          @@ -409,7 +406,7 @@

                                                          Submodules
                                                          -framework_formula[source]
                                                          +framework_formula[source]

                                                          The compositions of one formula unit of the host material

                                                          Type:
                                                          @@ -420,18 +417,18 @@

                                                          Submodules
                                                          -property framework[source]
                                                          +property framework[source]

                                                          The composition object representing the framework.

                                                          -framework_formula: str[source]
                                                          +framework_formula: str[source]
                                                          -get_average_voltage(min_voltage=None, max_voltage=None)[source]
                                                          +get_average_voltage(min_voltage=None, max_voltage=None)[source]

                                                          Average voltage for path satisfying between a min and max voltage.

                                                          Parameters:
                                                          @@ -451,7 +448,7 @@

                                                          Submodules
                                                          -get_capacity_grav(min_voltage=None, max_voltage=None, use_overall_normalization=True)[source]
                                                          +get_capacity_grav(min_voltage=None, max_voltage=None, use_overall_normalization=True)[source]

                                                          Get the gravimetric capacity of the electrode.

                                                          Parameters:
                                                          @@ -475,7 +472,7 @@

                                                          Submodules
                                                          -get_capacity_vol(min_voltage=None, max_voltage=None, use_overall_normalization=True)[source]
                                                          +get_capacity_vol(min_voltage=None, max_voltage=None, use_overall_normalization=True)[source]

                                                          Get the volumetric capacity of the electrode.

                                                          Parameters:
                                                          @@ -499,7 +496,7 @@

                                                          Submodules
                                                          -get_energy_density(min_voltage=None, max_voltage=None, use_overall_normalization=True)[source]
                                                          +get_energy_density(min_voltage=None, max_voltage=None, use_overall_normalization=True)[source]
                                                          Parameters:
                                                            @@ -522,7 +519,7 @@

                                                            Submodules
                                                            -get_specific_energy(min_voltage=None, max_voltage=None, use_overall_normalization=True)[source]
                                                            +get_specific_energy(min_voltage=None, max_voltage=None, use_overall_normalization=True)[source]

                                                            Get the specific energy of the battery in mAh/g.

                                                            Parameters:
                                                            @@ -546,7 +543,7 @@

                                                            Submodules
                                                            -get_sub_electrodes(adjacent_only=True)[source]
                                                            +get_sub_electrodes(adjacent_only=True)[source]

                                                            If this electrode contains multiple voltage steps, then it is possible to use only a subset of the voltage steps to define other electrodes. Must be implemented for each electrode object.

                                                            @@ -564,7 +561,7 @@

                                                            Submodules
                                                            -get_summary_dict(print_subelectrodes=True) dict[source]
                                                            +get_summary_dict(print_subelectrodes=True) dict[source]

                                                            Generate a summary dict.

                                                            Parameters:
                                                            @@ -579,74 +576,74 @@

                                                            Submodules
                                                            -property max_delta_volume[source]
                                                            +property max_delta_volume[source]

                                                            Maximum volume change along insertion.

                                                            -property max_voltage[source]
                                                            +property max_voltage[source]

                                                            Highest voltage along insertion.

                                                            -property max_voltage_step[source]
                                                            +property max_voltage_step[source]

                                                            Maximum absolute difference in adjacent voltage steps.

                                                            -property min_voltage[source]
                                                            +property min_voltage[source]

                                                            Lowest voltage along insertion.

                                                            -property normalization_mass[source]
                                                            +property normalization_mass[source]

                                                            The mass used for normalization. This is the mass of the discharged electrode of the last voltage pair.

                                                            -property normalization_volume[source]
                                                            +property normalization_volume[source]

                                                            The mass used for normalization. This is the vol of the discharged electrode of the last voltage pair.

                                                            -property num_steps[source]
                                                            +property num_steps[source]

                                                            The number of distinct voltage steps in from fully charge to discharge based on the stable intermediate states.

                                                            -voltage_pairs: tuple[AbstractVoltagePair, ...][source]
                                                            +voltage_pairs: tuple[AbstractVoltagePair, ...][source]
                                                            -property working_ion[source]
                                                            +property working_ion[source]

                                                            Working ion as pymatgen Element object.

                                                            -working_ion_entry: ComputedEntry[source]
                                                            +working_ion_entry: ComputedEntry[source]
                                                            -property x_charge: float[source]
                                                            +property x_charge: float[source]

                                                            The number of working ions per formula unit of host in the charged state.

                                                            -property x_discharge: float[source]
                                                            +property x_discharge: float[source]

                                                            The number of working ions per formula unit of host in the discharged state.

                                                            @@ -654,12 +651,12 @@

                                                            Submodules
                                                            -class AbstractVoltagePair(voltage: float, mAh: float, mass_charge: float, mass_discharge: float, vol_charge: float, vol_discharge: float, frac_charge: float, frac_discharge: float, working_ion_entry: ComputedEntry, framework_formula: str)[source]
                                                            +class AbstractVoltagePair(voltage: float, mAh: float, mass_charge: float, mass_discharge: float, vol_charge: float, vol_discharge: float, frac_charge: float, frac_discharge: float, working_ion_entry: ComputedEntry, framework_formula: str)[source]

                                                            Bases: MSONable

                                                            An Abstract Base Class for a Voltage Pair.

                                                            -voltage[source]
                                                            +voltage[source]

                                                            Voltage of voltage pair.

                                                            Type:
                                                            @@ -670,7 +667,7 @@

                                                            Submodules
                                                            -mAh[source]
                                                            +mAh[source]

                                                            Energy in mAh.

                                                            Type:
                                                            @@ -681,7 +678,7 @@

                                                            Submodules
                                                            -mass_charge[source]
                                                            +mass_charge[source]

                                                            Mass of charged pair.

                                                            Type:
                                                            @@ -692,7 +689,7 @@

                                                            Submodules
                                                            -mass_discharge[source]
                                                            +mass_discharge[source]

                                                            Mass of discharged pair.

                                                            Type:
                                                            @@ -703,7 +700,7 @@

                                                            Submodules
                                                            -vol_charge[source]
                                                            +vol_charge[source]

                                                            Vol of charged pair.

                                                            Type:
                                                            @@ -714,7 +711,7 @@

                                                            Submodules
                                                            -vol_discharge[source]
                                                            +vol_discharge[source]

                                                            Vol of discharged pair.

                                                            Type:
                                                            @@ -725,7 +722,7 @@

                                                            Submodules
                                                            -frac_charge[source]
                                                            +frac_charge[source]

                                                            Frac of working ion in charged pair.

                                                            Type:
                                                            @@ -736,7 +733,7 @@

                                                            Submodules
                                                            -frac_discharge[source]
                                                            +frac_discharge[source]

                                                            Frac of working ion in discharged pair.

                                                            Type:
                                                            @@ -747,7 +744,7 @@

                                                            Submodules
                                                            -working_ion_entry[source]
                                                            +working_ion_entry[source]

                                                            Working ion as an entry.

                                                            Type:
                                                            @@ -758,7 +755,7 @@

                                                            Submodules
                                                            -framework_formula[source]
                                                            +framework_formula[source]

                                                            The compositions of one formula unit of the host material

                                                            Type:
                                                            @@ -769,75 +766,75 @@

                                                            Submodules
                                                            -frac_charge: float[source]
                                                            +frac_charge: float[source]

                                                            -frac_discharge: float[source]
                                                            +frac_discharge: float[source]
                                                            -property framework: Composition[source]
                                                            +property framework: Composition[source]

                                                            The composition object representing the framework.

                                                            -framework_formula: str[source]
                                                            +framework_formula: str[source]
                                                            -mAh: float[source]
                                                            +mAh: float[source]
                                                            -mass_charge: float[source]
                                                            +mass_charge: float[source]
                                                            -mass_discharge: float[source]
                                                            +mass_discharge: float[source]
                                                            -vol_charge: float[source]
                                                            +vol_charge: float[source]
                                                            -vol_discharge: float[source]
                                                            +vol_discharge: float[source]
                                                            -voltage: float[source]
                                                            +voltage: float[source]
                                                            -property working_ion: Element[source]
                                                            +property working_ion: Element[source]

                                                            Working ion as pymatgen Element object.

                                                            -working_ion_entry: ComputedEntry[source]
                                                            +working_ion_entry: ComputedEntry[source]
                                                            -property x_charge: float[source]
                                                            +property x_charge: float[source]

                                                            The number of working ions per formula unit of host in the charged state.

                                                            -property x_discharge: float[source]
                                                            +property x_discharge: float[source]

                                                            The number of working ions per formula unit of host in the discharged state.

                                                            @@ -849,7 +846,7 @@

                                                            Submodules
                                                            -class ConversionElectrode(voltage_pairs: tuple[AbstractVoltagePair, ...], working_ion_entry: ComputedEntry, framework_formula: str, initial_comp_formula: str)[source]
                                                            +class ConversionElectrode(voltage_pairs: tuple[AbstractVoltagePair, ...], working_ion_entry: ComputedEntry, framework_formula: str, initial_comp_formula: str)[source]

                                                            Bases: AbstractElectrode

                                                            A ConversionElectrode, since it is dataclass this object can be constructed for the attributes. @@ -870,7 +867,7 @@

                                                            Submodules
                                                            -classmethod from_composition_and_entries(comp, entries_in_chemsys, working_ion_symbol='Li', allow_unstable=False) Self | None[source]
                                                            +classmethod from_composition_and_entries(comp, entries_in_chemsys, working_ion_symbol='Li', allow_unstable=False) Self | None[source]

                                                            Convenience constructor to make a ConversionElectrode from a composition and all entries in a chemical system.

                                                            @@ -891,7 +888,7 @@

                                                            Submodules
                                                            -classmethod from_composition_and_pd(comp, pd: PhaseDiagram, working_ion_symbol: str = 'Li', allow_unstable: bool = False) Self | None[source]
                                                            +classmethod from_composition_and_pd(comp, pd: PhaseDiagram, working_ion_symbol: str = 'Li', allow_unstable: bool = False) Self | None[source]

                                                            Convenience constructor to make a ConversionElectrode from a composition and a phase diagram.

                                                            @@ -909,7 +906,7 @@

                                                            Submodules
                                                            -get_sub_electrodes(adjacent_only=True)[source]
                                                            +get_sub_electrodes(adjacent_only=True)[source]

                                                            If this electrode contains multiple voltage steps, then it is possible to use only a subset of the voltage steps to define other electrodes. For example, an LiTiO2 electrode might contain three subelectrodes: @@ -930,7 +927,7 @@

                                                            Submodules
                                                            -get_summary_dict(print_subelectrodes=True) dict[source]
                                                            +get_summary_dict(print_subelectrodes=True) dict[source]

                                                            Generate a summary dict. Populates the summary dict with the basic information from the parent method then populates more information. Since the parent method calls self.get_summary_dict(print_subelectrodes=True) for the subelectrodes. @@ -948,18 +945,18 @@

                                                            Submodules
                                                            -property initial_comp: Composition[source]
                                                            +property initial_comp: Composition[source]

                                                            The pymatgen Composition representation of the initial composition.

                                                            -initial_comp_formula: str[source]
                                                            +initial_comp_formula: str[source]
                                                            -is_super_electrode(conversion_electrode) bool[source]
                                                            +is_super_electrode(conversion_electrode) bool[source]

                                                            Check if a particular conversion electrode is a sub electrode of the current electrode. Starting from a more lithiated state may result in a subelectrode that is essentially on the same path. For example, a @@ -972,13 +969,13 @@

                                                            Submodules
                                                            -class ConversionVoltagePair(voltage: float, mAh: float, mass_charge: float, mass_discharge: float, vol_charge: float, vol_discharge: float, frac_charge: float, frac_discharge: float, working_ion_entry: ComputedEntry, framework_formula: str, rxn: BalancedReaction, entries_charge: Iterable[ComputedEntry], entries_discharge: Iterable[ComputedEntry])[source]
                                                            +class ConversionVoltagePair(voltage: float, mAh: float, mass_charge: float, mass_discharge: float, vol_charge: float, vol_discharge: float, frac_charge: float, frac_discharge: float, working_ion_entry: ComputedEntry, framework_formula: str, rxn: BalancedReaction, entries_charge: Iterable[ComputedEntry], entries_discharge: Iterable[ComputedEntry])[source]

                                                            Bases: AbstractVoltagePair

                                                            A VoltagePair representing a Conversion Reaction with a defined voltage. Typically not initialized directly but rather used by ConversionElectrode.

                                                            -rxn[source]
                                                            +rxn[source]

                                                            BalancedReaction for the step

                                                            Type:
                                                            @@ -989,7 +986,7 @@

                                                            Submodules
                                                            -voltage[source]
                                                            +voltage[source]

                                                            Voltage for the step

                                                            Type:
                                                            @@ -1000,7 +997,7 @@

                                                            Submodules
                                                            -mAh[source]
                                                            +mAh[source]

                                                            Capacity of the step

                                                            Type:
                                                            @@ -1011,7 +1008,7 @@

                                                            Submodules
                                                            -vol_charge[source]
                                                            +vol_charge[source]

                                                            Volume of charged state

                                                            Type:
                                                            @@ -1022,7 +1019,7 @@

                                                            Submodules
                                                            -vol_discharge[source]
                                                            +vol_discharge[source]

                                                            Volume of discharged state

                                                            Type:
                                                            @@ -1033,7 +1030,7 @@

                                                            Submodules
                                                            -mass_charge[source]
                                                            +mass_charge[source]

                                                            Mass of charged state

                                                            Type:
                                                            @@ -1044,7 +1041,7 @@

                                                            Submodules
                                                            -mass_discharge[source]
                                                            +mass_discharge[source]

                                                            Mass of discharged state

                                                            Type:
                                                            @@ -1055,7 +1052,7 @@

                                                            Submodules
                                                            -frac_charge[source]
                                                            +frac_charge[source]

                                                            Fraction of working ion in the charged state

                                                            Type:
                                                            @@ -1066,7 +1063,7 @@

                                                            Submodules
                                                            -frac_discharge[source]
                                                            +frac_discharge[source]

                                                            Fraction of working ion in the discharged state

                                                            Type:
                                                            @@ -1077,7 +1074,7 @@

                                                            Submodules
                                                            -entries_charge[source]
                                                            +entries_charge[source]

                                                            Entries representing decompositions products in the charged state. Enumerates the decompositions products at the tieline, so the number of entries will be one fewer than the dimensions of the phase @@ -1091,7 +1088,7 @@

                                                            Submodules
                                                            -entries_discharge[source]
                                                            +entries_discharge[source]

                                                            Entries representing decompositions products in the discharged state. Enumerates the decompositions products at the tieline, so the number of entries will be one fewer than the dimensions of the phase @@ -1105,7 +1102,7 @@

                                                            Submodules
                                                            -working_ion_entry[source]
                                                            +working_ion_entry[source]

                                                            Entry of the working ion.

                                                            Type:
                                                            @@ -1116,17 +1113,17 @@

                                                            Submodules
                                                            -entries_charge: Iterable[ComputedEntry][source]
                                                            +entries_charge: Iterable[ComputedEntry][source]

                                                            -entries_discharge: Iterable[ComputedEntry][source]
                                                            +entries_discharge: Iterable[ComputedEntry][source]
                                                            -classmethod from_steps(step1, step2, normalization_els, framework_formula) Self[source]
                                                            +classmethod from_steps(step1, step2, normalization_els, framework_formula) Self[source]

                                                            Create a ConversionVoltagePair from two steps in the element profile from a PD analysis.

                                                            @@ -1144,7 +1141,7 @@

                                                            Submodules
                                                            -rxn: BalancedReaction[source]
                                                            +rxn: BalancedReaction[source]

                                                            @@ -1156,20 +1153,20 @@

                                                            Submodules
                                                            -class InsertionElectrode(voltage_pairs: tuple[AbstractVoltagePair, ...], working_ion_entry: ComputedEntry, framework_formula: str, stable_entries: Iterable[ComputedEntry], unstable_entries: Iterable[ComputedEntry])[source]
                                                            +class InsertionElectrode(voltage_pairs: tuple[AbstractVoltagePair, ...], working_ion_entry: ComputedEntry, framework_formula: str, stable_entries: Iterable[ComputedEntry], unstable_entries: Iterable[ComputedEntry])[source]

                                                            Bases: AbstractElectrode

                                                            A set of topotactically related compounds, with different amounts of a single element, e.g. TiO2 and LiTiO2, that can be used to define an insertion battery electrode.

                                                            -as_dict_legacy()[source]
                                                            +as_dict_legacy()[source]

                                                            Get MSONable dict.

                                                            -classmethod from_dict_legacy(dct) Self[source]
                                                            +classmethod from_dict_legacy(dct) Self[source]
                                                            Parameters:

                                                            dct (dict) – Dict representation.

                                                            @@ -1182,7 +1179,7 @@

                                                            Submodules
                                                            -classmethod from_entries(entries: Iterable[ComputedEntry | ComputedStructureEntry], working_ion_entry: ComputedEntry | ComputedStructureEntry | PDEntry, strip_structures: bool = False) Self[source]
                                                            +classmethod from_entries(entries: Iterable[ComputedEntry | ComputedStructureEntry], working_ion_entry: ComputedEntry | ComputedStructureEntry | PDEntry, strip_structures: bool = False) Self[source]

                                                            Create a new InsertionElectrode.

                                                            Parameters:
                                                            @@ -1206,19 +1203,19 @@

                                                            Submodules
                                                            -property fully_charged_entry[source]
                                                            +property fully_charged_entry[source]

                                                            The most charged entry along the topotactic path.

                                                            -property fully_discharged_entry[source]
                                                            +property fully_discharged_entry[source]

                                                            The most discharged entry along the topotactic path.

                                                            -get_all_entries(charge_to_discharge=True)[source]
                                                            +get_all_entries(charge_to_discharge=True)[source]

                                                            Return all entries input for the electrode.

                                                            Parameters:
                                                            @@ -1234,7 +1231,7 @@

                                                            Submodules
                                                            -get_max_instability(min_voltage=None, max_voltage=None)[source]
                                                            +get_max_instability(min_voltage=None, max_voltage=None)[source]

                                                            The maximum instability along a path for a specific voltage range.

                                                            Parameters:
                                                            @@ -1252,7 +1249,7 @@

                                                            Submodules
                                                            -get_max_muO2(min_voltage=None, max_voltage=None)[source]
                                                            +get_max_muO2(min_voltage=None, max_voltage=None)[source]

                                                            Maximum critical oxygen chemical potential along path.

                                                            Parameters:
                                                            @@ -1271,7 +1268,7 @@

                                                            Submodules
                                                            -get_min_instability(min_voltage=None, max_voltage=None)[source]
                                                            +get_min_instability(min_voltage=None, max_voltage=None)[source]

                                                            The minimum instability along a path for a specific voltage range.

                                                            Parameters:
                                                            @@ -1289,7 +1286,7 @@

                                                            Submodules
                                                            -get_min_muO2(min_voltage=None, max_voltage=None)[source]
                                                            +get_min_muO2(min_voltage=None, max_voltage=None)[source]

                                                            Minimum critical oxygen chemical potential along path.

                                                            Parameters:
                                                            @@ -1309,7 +1306,7 @@

                                                            Submodules
                                                            -get_stable_entries(charge_to_discharge=True)[source]
                                                            +get_stable_entries(charge_to_discharge=True)[source]

                                                            Get the stable entries.

                                                            Parameters:
                                                            @@ -1325,7 +1322,7 @@

                                                            Submodules
                                                            -get_sub_electrodes(adjacent_only=True, include_myself=True)[source]
                                                            +get_sub_electrodes(adjacent_only=True, include_myself=True)[source]

                                                            If this electrode contains multiple voltage steps, then it is possible to use only a subset of the voltage steps to define other electrodes. For example, an LiTiO2 electrode might contain three subelectrodes: @@ -1350,7 +1347,7 @@

                                                            Submodules
                                                            -get_summary_dict(print_subelectrodes=True) dict[source]
                                                            +get_summary_dict(print_subelectrodes=True) dict[source]

                                                            Generate a summary dict. Populates the summary dict with the basic information from the parent method then populates more information. Since the parent method calls self.get_summary_dict(print_subelectrodes=True) for the subelectrodes. @@ -1368,7 +1365,7 @@

                                                            Submodules
                                                            -get_unstable_entries(charge_to_discharge=True)[source]
                                                            +get_unstable_entries(charge_to_discharge=True)[source]

                                                            Get the unstable entries for the electrode.

                                                            Parameters:
                                                            @@ -1384,34 +1381,34 @@

                                                            Submodules
                                                            -stable_entries: Iterable[ComputedEntry][source]
                                                            +stable_entries: Iterable[ComputedEntry][source]

                                                            -unstable_entries: Iterable[ComputedEntry][source]
                                                            +unstable_entries: Iterable[ComputedEntry][source]

                                                            -class InsertionVoltagePair(voltage: float, mAh: float, mass_charge: float, mass_discharge: float, vol_charge: float, vol_discharge: float, frac_charge: float, frac_discharge: float, working_ion_entry: ComputedEntry, framework_formula: str, entry_charge: ComputedEntry, entry_discharge: ComputedEntry)[source]
                                                            +class InsertionVoltagePair(voltage: float, mAh: float, mass_charge: float, mass_discharge: float, vol_charge: float, vol_discharge: float, frac_charge: float, frac_discharge: float, working_ion_entry: ComputedEntry, framework_formula: str, entry_charge: ComputedEntry, entry_discharge: ComputedEntry)[source]

                                                            Bases: AbstractVoltagePair

                                                            A voltage pair for an insertion battery, e.g. LiFePO4 -> FePO4.

                                                            -entry_charge: ComputedEntry[source]
                                                            +entry_charge: ComputedEntry[source]
                                                            -entry_discharge: ComputedEntry[source]
                                                            +entry_discharge: ComputedEntry[source]
                                                            -classmethod from_entries(entry1, entry2, working_ion_entry) Self[source]
                                                            +classmethod from_entries(entry1, entry2, working_ion_entry) Self[source]
                                                            Parameters:
                                                              @@ -1432,7 +1429,7 @@

                                                              Submodules
                                                              -class VoltageProfilePlotter(xaxis: str = 'capacity', hide_negative: bool = False)[source]
                                                              +class VoltageProfilePlotter(xaxis: str = 'capacity', hide_negative: bool = False)[source]

                                                              Bases: object

                                                              A plotter to make voltage profile plots for batteries.

                                                              @@ -1449,7 +1446,7 @@

                                                              Submodules
                                                              -add_electrode(electrode: AbstractElectrode, label: str | None = None) None[source]
                                                              +add_electrode(electrode: AbstractElectrode, label: str | None = None) None[source]

                                                              Add an electrode to the plot.

                                                              Parameters:
                                                              @@ -1465,7 +1462,7 @@

                                                              Submodules
                                                              -get_plot(width: float = 8, height: float = 8, term_zero: bool = True, ax: Axes = None) Axes[source]
                                                              +get_plot(width: float = 8, height: float = 8, term_zero: bool = True, ax: Axes = None) Axes[source]

                                                              Get a plot object.

                                                              Parameters:
                                                              @@ -1487,7 +1484,7 @@

                                                              Submodules
                                                              -get_plot_data(electrode: AbstractElectrode, term_zero: bool = True) tuple[list, list][source]
                                                              +get_plot_data(electrode: AbstractElectrode, term_zero: bool = True) tuple[list, list][source]
                                                              Parameters:
                                                            • pymatgen.transformations.transformation_abc module
                                                            • -classmethod from_dict(dct: dict) Self[source]
                                                              +classmethod from_dict(dct: dict) Self[source]

                                                              Build from dict.

                                                              -property nspden[source]
                                                              +property nspden[source]

                                                              Number of independent density components.

                                                              -property nspinor[source]
                                                              +property nspinor[source]

                                                              Number of independent spinor components.

                                                              -property nsppol: int[source]
                                                              +property nsppol: int[source]

                                                              Number of independent spin polarizations.

                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Return dictionary with Abinit variables.

                                                              @@ -620,7 +617,7 @@

                                                              Submodules
                                                              -class ElectronsAlgorithm(*args, **kwargs)[source]
                                                              +class ElectronsAlgorithm(*args, **kwargs)[source]

                                                              Bases: dict, AbivarAble, MSONable

                                                              Variables controlling the SCF/NSCF algorithm.

                                                              @@ -641,19 +638,19 @@

                                                              Submodules
                                                              -as_dict()[source]
                                                              +as_dict()[source]

                                                              Get JSON-able dict representation.

                                                              -classmethod from_dict(dct: dict) Self[source]
                                                              +classmethod from_dict(dct: dict) Self[source]

                                                              Build from dict.

                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Dictionary with Abinit input variables.

                                                              @@ -661,7 +658,7 @@

                                                              Submodules
                                                              -class ExcHamiltonian(bs_loband, nband, mbpt_sciss, coulomb_mode, ecuteps, spin_mode='polarized', mdf_epsinf=None, exc_type='TDA', algo='haydock', with_lf=True, bs_freq_mesh=None, zcut=None, **kwargs)[source]
                                                              +class ExcHamiltonian(bs_loband, nband, mbpt_sciss, coulomb_mode, ecuteps, spin_mode='polarized', mdf_epsinf=None, exc_type='TDA', algo='haydock', with_lf=True, bs_freq_mesh=None, zcut=None, **kwargs)[source]

                                                              Bases: AbivarAble

                                                              Contain parameters for the solution of the Bethe-Salpeter equation.

                                                              @@ -685,31 +682,31 @@

                                                              Submodules
                                                              -property inclvkb[source]
                                                              +property inclvkb[source]

                                                              Treatment of the dipole matrix element (NC pseudos, default is 2).

                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Get a dictionary with the abinit variables.

                                                              -property use_cg[source]
                                                              +property use_cg[source]

                                                              True if we are using the conjugate gradient method.

                                                              -property use_direct_diago[source]
                                                              +property use_direct_diago[source]

                                                              True if we are performing the direct diagonalization of the BSE Hamiltonian.

                                                              -property use_haydock[source]
                                                              +property use_haydock[source]

                                                              True if we are using the Haydock iterative technique.

                                                              @@ -717,7 +714,7 @@

                                                              Submodules
                                                              -class HilbertTransform(nomegasf, domegasf=None, spmeth=1, nfreqre=None, freqremax=None, nfreqim=None, freqremin=None)[source]
                                                              +class HilbertTransform(nomegasf, domegasf=None, spmeth=1, nfreqre=None, freqremax=None, nfreqim=None, freqremin=None)[source]

                                                              Bases: AbivarAble

                                                              Parameters for the Hilbert-transform method (Screening code) i.e. the parameters defining the frequency mesh used for the spectral function @@ -737,7 +734,7 @@

                                                              Submodules
                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Get a dictionary with the abinit variables.

                                                              @@ -745,7 +742,7 @@

                                                              Submodules
                                                              -class KSampling(mode=KSamplingModes.monkhorst, num_kpts=0, kpts=((1, 1, 1),), kpt_shifts=(0.5, 0.5, 0.5), kpts_weights=None, use_symmetries=True, use_time_reversal=True, chksymbreak=None, comment=None)[source]
                                                              +class KSampling(mode=KSamplingModes.monkhorst, num_kpts=0, kpts=((1, 1, 1),), kpt_shifts=(0.5, 0.5, 0.5), kpts_weights=None, use_symmetries=True, use_time_reversal=True, chksymbreak=None, comment=None)[source]

                                                              Bases: AbivarAble, MSONable

                                                              Input variables defining the K-point sampling.

                                                              Highly flexible constructor for KSampling objects. The flexibility comes @@ -790,13 +787,13 @@

                                                              Submodules
                                                              -as_dict()[source]
                                                              +as_dict()[source]

                                                              Get JSON-able dict representation.

                                                              -classmethod automatic_density(structure, kppa, chksymbreak=None, use_symmetries=True, use_time_reversal=True, shifts=(0.5, 0.5, 0.5))[source]
                                                              +classmethod automatic_density(structure, kppa, chksymbreak=None, use_symmetries=True, use_time_reversal=True, shifts=(0.5, 0.5, 0.5))[source]

                                                              Get an automatic Kpoint object based on a structure and a kpoint density. Uses Gamma centered meshes for hexagonal cells and Monkhorst-Pack grids otherwise.

                                                              @@ -816,19 +813,19 @@

                                                              Submodules
                                                              -classmethod explicit_path(ndivsm, kpath_bounds)[source]
                                                              +classmethod explicit_path(ndivsm, kpath_bounds)[source]

                                                              See _path for the meaning of the variables.

                                                              -classmethod from_dict(dct: dict) Self[source]
                                                              +classmethod from_dict(dct: dict) Self[source]

                                                              Build from dict.

                                                              -classmethod gamma_centered(kpts=(1, 1, 1), use_symmetries=True, use_time_reversal=True)[source]
                                                              +classmethod gamma_centered(kpts=(1, 1, 1), use_symmetries=True, use_time_reversal=True)[source]

                                                              Convenient static constructor for an automatic Gamma centered Kpoint grid.

                                                              Parameters:
                                                              @@ -848,19 +845,19 @@

                                                              Submodules
                                                              -classmethod gamma_only()[source]
                                                              +classmethod gamma_only()[source]

                                                              Gamma-only sampling.

                                                              -property is_homogeneous: bool[source]
                                                              +property is_homogeneous: bool[source]

                                                              Homogeneous sampling.

                                                              -classmethod monkhorst(ngkpt, shiftk=(0.5, 0.5, 0.5), chksymbreak=None, use_symmetries=True, use_time_reversal=True, comment=None)[source]
                                                              +classmethod monkhorst(ngkpt, shiftk=(0.5, 0.5, 0.5), chksymbreak=None, use_symmetries=True, use_time_reversal=True, comment=None)[source]

                                                              Convenient static constructor for a Monkhorst-Pack mesh.

                                                              Parameters:
                                                              @@ -879,7 +876,7 @@

                                                              Submodules
                                                              -classmethod monkhorst_automatic(structure, ngkpt, use_symmetries=True, use_time_reversal=True, chksymbreak=None, comment=None)[source]
                                                              +classmethod monkhorst_automatic(structure, ngkpt, use_symmetries=True, use_time_reversal=True, chksymbreak=None, comment=None)[source]

                                                              Convenient static constructor for an automatic Monkhorst-Pack mesh.

                                                              Parameters:
                                                              @@ -898,13 +895,13 @@

                                                              Submodules
                                                              -classmethod path_from_structure(ndivsm, structure) Self[source]
                                                              +classmethod path_from_structure(ndivsm, structure) Self[source]

                                                              See _path for the meaning of the variables.

                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Dictionary with Abinit variables.

                                                              @@ -912,29 +909,29 @@

                                                              Submodules
                                                              -class KSamplingModes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
                                                              +class KSamplingModes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

                                                              Bases: Enum

                                                              Enum if the different samplings of the BZ.

                                                              -automatic = 3[source]
                                                              +automatic = 3[source]
                                                              -monkhorst = 1[source]
                                                              +monkhorst = 1[source]
                                                              -path = 2[source]
                                                              +path = 2[source]

                                                              -class ModelDielectricFunction(mdf_epsinf)[source]
                                                              +class ModelDielectricFunction(mdf_epsinf)[source]

                                                              Bases: AbivarAble

                                                              Model dielectric function used for BSE calculation.

                                                              @@ -944,7 +941,7 @@

                                                              Submodules
                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Return dictionary with abinit variables.

                                                              @@ -952,7 +949,7 @@

                                                              Submodules
                                                              -class PPModel(mode='godby', plasmon_freq=None)[source]
                                                              +class PPModel(mode='godby', plasmon_freq=None)[source]

                                                              Bases: AbivarAble, MSONable

                                                              Parameters defining the plasmon-pole technique. The common way to instantiate a PPModel object is via the class method PPModel.as_ppmodel(string).

                                                              @@ -966,13 +963,13 @@

                                                              Submodules
                                                              -as_dict()[source]
                                                              +as_dict()[source]

                                                              Get JSON-able dict representation.

                                                              -classmethod as_ppmodel(obj)[source]
                                                              +classmethod as_ppmodel(obj)[source]

                                                              Constructs an instance of PPModel from obj.

                                                              Accepts obj in the form:
                                                              -classmethod get_noppmodel()[source]
                                                              +classmethod get_noppmodel()[source]

                                                              Calculation without plasmon-pole model.

                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Return dictionary with Abinit variables.

                                                              @@ -1005,39 +1002,39 @@

                                                              Submodules
                                                              -class PPModelModes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
                                                              +class PPModelModes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

                                                              Bases: Enum

                                                              Different kind of plasmon-pole models.

                                                              -farid = 4[source]
                                                              +farid = 4[source]
                                                              -godby = 1[source]
                                                              +godby = 1[source]
                                                              -hybersten = 2[source]
                                                              +hybersten = 2[source]
                                                              -linden = 3[source]
                                                              +linden = 3[source]
                                                              -noppmodel = 0[source]
                                                              +noppmodel = 0[source]

                                                              -class RelaxationMethod(*args, **kwargs)[source]
                                                              +class RelaxationMethod(*args, **kwargs)[source]

                                                              Bases: AbivarAble, MSONable

                                                              This object stores the variables for the (constrained) structural optimization ionmov and optcell specify the type of relaxation. @@ -1062,53 +1059,53 @@

                                                              Submodules
                                                              -IONMOV_DEFAULT = 3[source]
                                                              +IONMOV_DEFAULT = 3[source]

                                                              -OPTCELL_DEFAULT = 2[source]
                                                              +OPTCELL_DEFAULT = 2[source]
                                                              -as_dict()[source]
                                                              +as_dict()[source]

                                                              Convert to dictionary.

                                                              -classmethod atoms_and_cell(atoms_constraints=None)[source]
                                                              +classmethod atoms_and_cell(atoms_constraints=None)[source]

                                                              Relax atomic positions as well as unit cell.

                                                              -classmethod atoms_only(atoms_constraints=None)[source]
                                                              +classmethod atoms_only(atoms_constraints=None)[source]

                                                              Relax atomic positions, keep unit cell fixed.

                                                              -classmethod from_dict(dct: dict) Self[source]
                                                              +classmethod from_dict(dct: dict) Self[source]

                                                              Build from dictionary.

                                                              -property move_atoms[source]
                                                              +property move_atoms[source]

                                                              True if atoms must be moved.

                                                              -property move_cell[source]
                                                              +property move_cell[source]

                                                              True if lattice parameters must be optimized.

                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Get a dictionary with the abinit variables.

                                                              @@ -1116,7 +1113,7 @@

                                                              Submodules
                                                              -class Screening(ecuteps, nband, w_type='RPA', sc_mode='one_shot', hilbert=None, ecutwfn=None, inclvkb=2)[source]
                                                              +class Screening(ecuteps, nband, w_type='RPA', sc_mode='one_shot', hilbert=None, ecutwfn=None, inclvkb=2)[source]

                                                              Bases: AbivarAble

                                                              This object defines the parameters used for the computation of the screening function.

                                                              @@ -1135,13 +1132,13 @@

                                                              Submodules
                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Get a dictionary with the abinit variables.

                                                              -property use_hilbert[source]
                                                              +property use_hilbert[source]

                                                              True if we are using the Hilbert transform method.

                                                              @@ -1149,7 +1146,7 @@

                                                              Submodules
                                                              -class SelfEnergy(se_type, sc_mode, nband, ecutsigx, screening, gw_qprange=1, ppmodel=None, ecuteps=None, ecutwfn=None, gwpara=2)[source]
                                                              +class SelfEnergy(se_type, sc_mode, nband, ecutsigx, screening, gw_qprange=1, ppmodel=None, ecuteps=None, ecutwfn=None, gwpara=2)[source]

                                                              Bases: AbivarAble

                                                              Define the parameters used for the computation of the self-energy.

                                                              @@ -1171,25 +1168,25 @@

                                                              Submodules
                                                              -property gwcalctyp[source]
                                                              +property gwcalctyp[source]

                                                              The value of the gwcalctyp input variable.

                                                              -property symsigma[source]
                                                              +property symsigma[source]

                                                              1 if symmetries can be used to reduce the number of q-points.

                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Get a dictionary with the abinit variables.

                                                              -property use_ppmodel[source]
                                                              +property use_ppmodel[source]

                                                              True if we are using the plasmon-pole approximation.

                                                              @@ -1197,7 +1194,7 @@

                                                              Submodules
                                                              -class Smearing(occopt, tsmear)[source]
                                                              +class Smearing(occopt, tsmear)[source]

                                                              Bases: AbivarAble, MSONable

                                                              Variables defining the smearing technique. The preferred way to instantiate a Smearing object is via the class method Smearing.as_smearing(string).

                                                              @@ -1211,13 +1208,13 @@

                                                              Submodules
                                                              -as_dict()[source]
                                                              +as_dict()[source]

                                                              JSON-friendly dict representation of Smearing.

                                                              -classmethod as_smearing(obj)[source]
                                                              +classmethod as_smearing(obj)[source]

                                                              Constructs an instance of Smearing from obj. Accepts obj in the form:

                                                              -property mode[source]
                                                              +property mode[source]

                                                              String with smearing technique.

                                                              -static nosmearing()[source]
                                                              +static nosmearing()[source]

                                                              For calculations without smearing.

                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Return dictionary with Abinit variables.

                                                              @@ -1257,7 +1254,7 @@

                                                              Submodules
                                                              -class SpinMode(mode: str, nsppol: int, nspinor: int, nspden: int)[source]
                                                              +class SpinMode(mode: str, nsppol: int, nspinor: int, nspden: int)[source]

                                                              Bases: SpinModeTuple, AbivarAble, MSONable

                                                              Different configurations of the electron density as implemented in abinit: One can use as_spinmode to construct the object via SpinMode.as_spinmode @@ -1274,25 +1271,25 @@

                                                              Submodules
                                                              -as_dict()[source]
                                                              +as_dict()[source]

                                                              JSON-friendly dict representation of SpinMode.

                                                              -classmethod as_spinmode(obj)[source]
                                                              +classmethod as_spinmode(obj)[source]

                                                              Convert obj into a SpinMode instance.

                                                              -classmethod from_dict(dct: dict) Self[source]
                                                              +classmethod from_dict(dct: dict) Self[source]

                                                              Build from dict.

                                                              -to_abivars()[source]
                                                              +to_abivars()[source]

                                                              Dictionary with Abinit input variables.

                                                              @@ -1300,30 +1297,30 @@

                                                              Submodules
                                                              -class SpinModeTuple(mode, nsppol, nspinor, nspden)[source]
                                                              +class SpinModeTuple(mode, nsppol, nspinor, nspden)[source]

                                                              Bases: NamedTuple

                                                              Create new instance of SpinModeTuple(mode, nsppol, nspinor, nspden)

                                                              -mode: str[source]
                                                              +mode: str[source]

                                                              Alias for field number 0

                                                              -nspden: int[source]
                                                              +nspden: int[source]

                                                              Alias for field number 3

                                                              -nspinor: int[source]
                                                              +nspinor: int[source]

                                                              Alias for field number 2

                                                              -nsppol: int[source]
                                                              +nsppol: int[source]

                                                              Alias for field number 1

                                                              @@ -1331,7 +1328,7 @@

                                                              Submodules
                                                              -contract(string)[source]
                                                              +contract(string)[source]

                                                              Examples

                                                              assert contract(“1 1 1 2 2 3”) == “3*1 2*2 1*3” assert contract(“1 1 3 2 3”) == “2*1 1*3 1*2 1*3”.

                                                              @@ -1339,7 +1336,7 @@

                                                              Submodules
                                                              -lattice_from_abivars(cls=None, *args, **kwargs)[source]
                                                              +lattice_from_abivars(cls=None, *args, **kwargs)[source]

                                                              Get a Lattice object from a dictionary with the Abinit variables acell and either rprim in Bohr or angdeg. If acell is not given, the Abinit default of [1, 1, 1] Bohr is used.

                                                              @@ -1354,7 +1351,7 @@

                                                              Submodules
                                                              -species_by_znucl(structure: Structure) list[Species][source]
                                                              +species_by_znucl(structure: Structure) list[Species][source]

                                                              Get list of unique specie found in structure ordered according to sites.

                                                              Example

                                                              Site0: 0.5 0 0 O @@ -1364,7 +1361,7 @@

                                                              Submodules
                                                              -structure_from_abivars(cls=None, *args, **kwargs) Structure[source]
                                                              +structure_from_abivars(cls=None, *args, **kwargs) Structure[source]

                                                              Build a Structure object from a dictionary with ABINIT variables.

                                                              Parameters:
                                                              @@ -1387,7 +1384,7 @@

                                                              Submodules
                                                              -structure_to_abivars(structure: Structure, enforce_znucl: list | None = None, enforce_typat: list | None = None, **kwargs)[source]
                                                              +structure_to_abivars(structure: Structure, enforce_znucl: list | None = None, enforce_typat: list | None = None, **kwargs)[source]

                                                              Receives a structure and returns a dictionary with ABINIT variables.

                                                              Parameters:
                                                              @@ -1408,7 +1405,7 @@

                                                              Submodules
                                                              -class AbinitTimer(sections, info, cpu_time, wall_time)[source]
                                                              +class AbinitTimer(sections, info, cpu_time, wall_time)[source]

                                                              Bases: object

                                                              Container class storing the timing results.

                                                              @@ -1423,7 +1420,7 @@

                                                              Submodules
                                                              -cpuwall_histogram(ax: Axes = None, **kwargs)[source]
                                                              +cpuwall_histogram(ax: Axes = None, **kwargs)[source]

                                                              Plot histogram with cpu- and wall-time on axis ax.

                                                              Parameters:
                                                              @@ -1477,44 +1474,44 @@

                                                              Submodules
                                                              -get_dataframe(sort_key='wall_time', **kwargs)[source]
                                                              +get_dataframe(sort_key='wall_time', **kwargs)[source]

                                                              Return a pandas DataFrame with entries sorted according to sort_key.

                                                              -get_section(section_name)[source]
                                                              +get_section(section_name)[source]

                                                              Return section associated to section_name.

                                                              -get_values(keys)[source]
                                                              +get_values(keys)[source]

                                                              Return a list of values associated to a particular list of keys.

                                                              -names_and_values(key, minval=None, minfract=None, sorted=True)[source]
                                                              +names_and_values(key, minval=None, minfract=None, sorted=True)[source]

                                                              Select the entries whose value[key] is >= minval or whose fraction[key] is >= minfract Return the names of the sections and the corresponding values.

                                                              -property ncpus[source]
                                                              +property ncpus[source]

                                                              Total number of CPUs employed.

                                                              -order_sections(key, reverse=True)[source]
                                                              +order_sections(key, reverse=True)[source]

                                                              Sort sections according to the value of key.

                                                              -pie(key='wall_time', minfract=0.05, ax: Axes = None, **kwargs)[source]
                                                              +pie(key='wall_time', minfract=0.05, ax: Axes = None, **kwargs)[source]

                                                              Plot pie chart for this timer.

                                                              Parameters:
                                                              @@ -1572,7 +1569,7 @@

                                                              Submodules
                                                              -scatter_hist(ax: Axes = None, **kwargs)[source]
                                                              +scatter_hist(ax: Axes = None, **kwargs)[source]

                                                              Scatter plot + histogram.

                                                              Parameters:
                                                              @@ -1626,25 +1623,25 @@

                                                              Submodules
                                                              -sum_sections(keys)[source]
                                                              +sum_sections(keys)[source]

                                                              Sum value of keys.

                                                              -to_csv(fileobj=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>)[source]
                                                              +to_csv(fileobj=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>)[source]

                                                              Write data on file fileobj using CSV format.

                                                              -to_table(sort_key='wall_time', stop=None)[source]
                                                              +to_table(sort_key='wall_time', stop=None)[source]

                                                              Return a table (list of lists) with timer data.

                                                              -totable(sort_key='wall_time', stop=None)[source]
                                                              +totable(sort_key='wall_time', stop=None)[source]

                                                              Return a table (list of lists) with timer data.

                                                              @@ -1652,14 +1649,14 @@

                                                              Submodules
                                                              -exception AbinitTimerParseError[source]
                                                              +exception AbinitTimerParseError[source]

                                                              Bases: ParseError

                                                              Errors raised by AbinitTimerParser.

                                                              -class AbinitTimerParser[source]
                                                              +class AbinitTimerParser[source]

                                                              Bases: Iterable

                                                              Responsible for parsing a list of output files, extracting the timing results and analyzing the results. @@ -1673,36 +1670,36 @@

                                                              Submodules
                                                              -BEGIN_TAG = '-<BEGIN_TIMER'[source]
                                                              +BEGIN_TAG = '-<BEGIN_TIMER'[source]

                                                              -END_TAG = '-<END_TIMER>'[source]
                                                              +END_TAG = '-<END_TIMER>'[source]
                                                              -Error[source]
                                                              +Error[source]

                                                              alias of AbinitTimerParseError

                                                              -property filenames[source]
                                                              +property filenames[source]

                                                              List of files that have been parsed successfully.

                                                              -get_sections(section_name)[source]
                                                              +get_sections(section_name)[source]

                                                              Get the list of sections stored in self.timers() given section_name A fake section is returned if the timer does not have section_name.

                                                              -parse(filenames)[source]
                                                              +parse(filenames)[source]

                                                              Read and parse a filename or a list of filenames. Files that cannot be opened are ignored. A single filename may also be given.

                                                              @@ -1714,7 +1711,7 @@

                                                              Submodules
                                                              -pefficiency()[source]
                                                              +pefficiency()[source]

                                                              Analyze the parallel efficiency.

                                                              Returns:
                                                              @@ -1725,13 +1722,13 @@

                                                              Submodules
                                                              -plot_all(show=True, **kwargs)[source]
                                                              +plot_all(show=True, **kwargs)[source]

                                                              Call all plot methods provided by the parser.

                                                              -plot_efficiency(key='wall_time', what='good+bad', nmax=5, ax: Axes = None, **kwargs)[source]
                                                              +plot_efficiency(key='wall_time', what='good+bad', nmax=5, ax: Axes = None, **kwargs)[source]

                                                              Plot the parallel efficiency.

                                                              Parameters:
                                                              @@ -1805,7 +1802,7 @@

                                                              Submodules
                                                              -plot_pie(key='wall_time', minfract=0.05, **kwargs)[source]
                                                              +plot_pie(key='wall_time', minfract=0.05, **kwargs)[source]

                                                              Plot pie charts of the different timers.

                                                              Parameters:
                                                              @@ -1859,7 +1856,7 @@

                                                              Submodules
                                                              -plot_stacked_hist(key='wall_time', nmax=5, ax: Axes = None, **kwargs)[source]
                                                              +plot_stacked_hist(key='wall_time', nmax=5, ax: Axes = None, **kwargs)[source]

                                                              Plot stacked histogram of the different timers.

                                                              Parameters:
                                                              @@ -1916,26 +1913,26 @@

                                                              Submodules
                                                              -section_names(ordkey='wall_time')[source]
                                                              +section_names(ordkey='wall_time')[source]

                                                              Get the names of sections ordered by ordkey. For the time being, the values are taken from the first timer.

                                                              -summarize(**kwargs)[source]
                                                              +summarize(**kwargs)[source]

                                                              Return pandas DataFrame with the most important results stored in the timers.

                                                              -timers(filename=None, mpi_rank='0')[source]
                                                              +timers(filename=None, mpi_rank='0')[source]

                                                              Return the list of timers associated to the given filename and MPI rank mpi_rank.

                                                              -classmethod walk(top='.', ext='.abo')[source]
                                                              +classmethod walk(top='.', ext='.abo')[source]

                                                              Scan directory tree starting from top, look for files with extension ext and parse timing data.

                                                              @@ -1958,7 +1955,7 @@

                                                              Submodules
                                                              -class AbinitTimerSection(name, cpu_time, cpu_fract, wall_time, wall_fract, ncalls, gflops)[source]
                                                              +class AbinitTimerSection(name, cpu_time, cpu_fract, wall_time, wall_fract, ncalls, gflops)[source]

                                                              Bases: object

                                                              Record with the timing results associated to a section of code.

                                                              @@ -1976,40 +1973,40 @@

                                                              Submodules
                                                              -FIELDS = ('name', 'wall_time', 'wall_fract', 'cpu_time', 'cpu_fract', 'ncalls', 'gflops')[source]
                                                              +FIELDS = ('name', 'wall_time', 'wall_fract', 'cpu_time', 'cpu_fract', 'ncalls', 'gflops')[source]

                                                              -NUMERIC_FIELDS = ('wall_time', 'wall_fract', 'cpu_time', 'cpu_fract', 'ncalls', 'gflops')[source]
                                                              +NUMERIC_FIELDS = ('wall_time', 'wall_fract', 'cpu_time', 'cpu_fract', 'ncalls', 'gflops')[source]
                                                              -STR_FIELDS = ('name',)[source]
                                                              +STR_FIELDS = ('name',)[source]
                                                              -classmethod fake()[source]
                                                              +classmethod fake()[source]

                                                              Return a fake section. Mainly used to fill missing entries if needed.

                                                              -to_csvline(with_header=False)[source]
                                                              +to_csvline(with_header=False)[source]

                                                              Return a string with data in CSV format. Add header if with_header.

                                                              -to_dict()[source]
                                                              +to_dict()[source]

                                                              Get the values as a dictionary.

                                                              -to_tuple()[source]
                                                              +to_tuple()[source]

                                                              Get the values as a tuple.

                                                              @@ -2017,7 +2014,7 @@

                                                              Submodules
                                                              -class ParallelEfficiency(filenames, ref_idx, *args, **kwargs)[source]
                                                              +class ParallelEfficiency(filenames, ref_idx, *args, **kwargs)[source]

                                                              Bases: dict

                                                              Store results concerning the parallel efficiency of the job.

                                                              @@ -2030,19 +2027,19 @@

                                                              Submodules
                                                              -bad_sections(key='wall_time', criterion='mean', nmax=5)[source]
                                                              +bad_sections(key='wall_time', criterion='mean', nmax=5)[source]

                                                              Return first nmax sections with worst value of key key using criterion criterion.

                                                              -good_sections(key='wall_time', criterion='mean', nmax=5)[source]
                                                              +good_sections(key='wall_time', criterion='mean', nmax=5)[source]

                                                              Return first nmax sections with best value of key key using criterion criterion.

                                                              -totable(stop=None, reverse=True)[source]
                                                              +totable(stop=None, reverse=True)[source]

                                                              Get table (list of lists) with timing results.

                                                              Parameters:
                                                              @@ -2058,7 +2055,7 @@

                                                              Submodules
                                                              -alternate(*iterables)[source]
                                                              +alternate(*iterables)[source]

                                                              [a[0], b[0], … , a[1], b[1], …, a[n], b[n] …] >>> alternate([1, 4], [2, 5], [3, 6]) [1, 2, 3, 4, 5, 6].

                                                              @@ -2072,18 +2069,18 @@

                                                              Submodules
                                                              -class AbstractInput[source]
                                                              +class AbstractInput[source]

                                                              Bases: MutableMapping, ABC

                                                              Abstract class defining the methods that must be implemented by Input objects.

                                                              -deepcopy()[source]
                                                              +deepcopy()[source]

                                                              Deep copy of the input.

                                                              -pop_vars(keys)[source]
                                                              +pop_vars(keys)[source]

                                                              Remove the variables listed in keys. Return dictionary with the variables that have been removed. Unlike remove_vars, no exception is raised if the variables are not in the input.

                                                              @@ -2098,7 +2095,7 @@

                                                              Submodules
                                                              -remove_vars(keys: Sequence[str], strict: bool = True) dict[str, InputVariable][source]
                                                              +remove_vars(keys: Sequence[str], strict: bool = True) dict[str, InputVariable][source]

                                                              Remove the variables listed in keys. Return dictionary with the variables that have been removed.

                                                              @@ -2113,7 +2110,7 @@

                                                              Submodules
                                                              -set_vars(*args, **kwargs)[source]
                                                              +set_vars(*args, **kwargs)[source]

                                                              Set the value of the variables. Return dict with the variables added to the input.

                                                              Example

                                                              @@ -2122,7 +2119,7 @@

                                                              Submodules
                                                              -set_vars_ifnotin(*args, **kwargs)[source]
                                                              +set_vars_ifnotin(*args, **kwargs)[source]

                                                              Set the value of the variables but only if the variable is not already present. Return dict with the variables added to the input.

                                                              Example

                                                              @@ -2131,19 +2128,19 @@

                                                              Submodules
                                                              -abstract to_str()[source]
                                                              +abstract to_str()[source]

                                                              Get a string with the input.

                                                              -abstract property vars[source]
                                                              +abstract property vars[source]

                                                              Dictionary with the input variables. Used to implement dict-like interface.

                                                              -write(filepath='run.abi')[source]
                                                              +write(filepath='run.abi')[source]

                                                              Write the input file to file to filepath.

                                                              @@ -2151,7 +2148,7 @@

                                                              Submodules
                                                              -class BasicAbinitInput(structure, pseudos: str | list[str] | list[Pseudo] | PseudoTable, pseudo_dir=None, comment=None, abi_args=None, abi_kwargs=None)[source]
                                                              +class BasicAbinitInput(structure, pseudos: str | list[str] | list[Pseudo] | PseudoTable, pseudo_dir=None, comment=None, abi_args=None, abi_kwargs=None)[source]

                                                              Bases: AbstractInput, MSONable

                                                              Store the ABINIT variables for a single dataset.

                                                              @@ -2172,49 +2169,49 @@

                                                              Submodules
                                                              -Error[source]
                                                              +Error[source]

                                                              alias of BasicAbinitInputError

                                                              -add_abiobjects(*abi_objects)[source]
                                                              +add_abiobjects(*abi_objects)[source]

                                                              For a list of AbiVarable objects, add the corresponding variables to the input.

                                                              -as_dict()[source]
                                                              +as_dict()[source]

                                                              JSON interface used in pymatgen for easier serialization.

                                                              -property comment[source]
                                                              +property comment[source]

                                                              Optional string with comment. None if comment is not set.

                                                              -classmethod from_dict(dct: dict) Self[source]
                                                              +classmethod from_dict(dct: dict) Self[source]

                                                              JSON interface used in pymatgen for easier serialization.

                                                              -property isnc[source]
                                                              +property isnc[source]

                                                              True if norm-conserving calculation.

                                                              -property ispaw[source]
                                                              +property ispaw[source]

                                                              True if PAW calculation.

                                                              -new_with_vars(*args, **kwargs)[source]
                                                              +new_with_vars(*args, **kwargs)[source]

                                                              Get a new input with the given variables.

                                                              Example

                                                              new = input.new_with_vars(ecut=20)

                                                              @@ -2222,39 +2219,39 @@

                                                              Submodules
                                                              -pop_irdvars()[source]
                                                              +pop_irdvars()[source]

                                                              Remove all the ird* variables present in self. Return dictionary with the variables that have been removed.

                                                              -pop_tolerances()[source]
                                                              +pop_tolerances()[source]

                                                              Remove all the tolerance variables present in self. Return dictionary with the variables that have been removed.

                                                              -property pseudos[source]
                                                              +property pseudos[source]

                                                              List of |Pseudo| objects.

                                                              -set_comment(comment)[source]
                                                              +set_comment(comment)[source]

                                                              Set a comment to be included at the top of the file.

                                                              -set_gamma_sampling()[source]
                                                              +set_gamma_sampling()[source]

                                                              Gamma-only sampling of the BZ.

                                                              -set_kmesh(ngkpt, shiftk, kptopt=1)[source]
                                                              +set_kmesh(ngkpt, shiftk, kptopt=1)[source]

                                                              Set the variables for the sampling of the BZ.

                                                              Parameters:
                                                              @@ -2269,7 +2266,7 @@

                                                              Submodules
                                                              -set_kpath(ndivsm, kptbounds=None, iscf=-2)[source]
                                                              +set_kpath(ndivsm, kptbounds=None, iscf=-2)[source]

                                                              Set the variables for the computation of the electronic band structure.

                                                              Parameters:
                                                              @@ -2284,7 +2281,7 @@

                                                              Submodules
                                                              -set_spin_mode(spin_mode)[source]
                                                              +set_spin_mode(spin_mode)[source]

                                                              Set the variables used to the treat the spin degree of freedom. Return dictionary with the variables that have been removed.

                                                              @@ -2303,19 +2300,19 @@

                                                              Submodules
                                                              -set_structure(structure: Structure)[source]
                                                              +set_structure(structure: Structure)[source]

                                                              Set structure.

                                                              -property structure[source]
                                                              +property structure[source]

                                                              The |Structure| object associated to this input.

                                                              -to_str(post=None, with_structure=True, with_pseudos=True, exclude=None)[source]
                                                              +to_str(post=None, with_structure=True, with_pseudos=True, exclude=None)[source]

                                                              String representation.

                                                              Parameters:
                                                              @@ -2337,7 +2334,7 @@

                                                              Submodules
                                                              -property vars[source]
                                                              +property vars[source]

                                                              Dictionary with variables.

                                                              @@ -2345,14 +2342,14 @@

                                                              Submodules
                                                              -exception BasicAbinitInputError[source]
                                                              +exception BasicAbinitInputError[source]

                                                              Bases: Exception

                                                              Base error class for exceptions raised by BasicAbinitInput.

                                                              -class BasicMultiDataset(structure: Structure | Sequence[Structure], pseudos, pseudo_dir='', ndtset=1)[source]
                                                              +class BasicMultiDataset(structure: Structure | Sequence[Structure], pseudos, pseudo_dir='', ndtset=1)[source]

                                                              Bases: object

                                                              This object is essentially a list of BasicAbinitInputs. that provides an easy-to-use interface to apply global changes to the @@ -2405,85 +2402,85 @@

                                                              Submodules
                                                              -Error[source]
                                                              +Error[source]

                                                              alias of BasicAbinitInputError

                                                              -addnew_from(dtindex)[source]
                                                              +addnew_from(dtindex)[source]

                                                              Add a new entry in the multidataset by copying the input with index dtindex.

                                                              -append(abinit_input)[source]
                                                              +append(abinit_input)[source]

                                                              Add a BasicAbinitInput to the list.

                                                              -deepcopy()[source]
                                                              +deepcopy()[source]

                                                              Deep copy of the BasicMultiDataset.

                                                              -extend(abinit_inputs)[source]
                                                              +extend(abinit_inputs)[source]

                                                              Extends self with a list of BasicAbinitInputs.

                                                              -classmethod from_inputs(inputs: list[BasicAbinitInput]) Self[source]
                                                              +classmethod from_inputs(inputs: list[BasicAbinitInput]) Self[source]

                                                              Construct a multidataset from a list of BasicAbinitInputs.

                                                              -property has_same_structures[source]
                                                              +property has_same_structures[source]

                                                              True if all inputs in BasicMultiDataset are equal.

                                                              -property isnc[source]
                                                              +property isnc[source]

                                                              True if norm-conserving calculation.

                                                              -property ispaw[source]
                                                              +property ispaw[source]

                                                              True if PAW calculation.

                                                              -property ndtset[source]
                                                              +property ndtset[source]

                                                              Number of inputs in self.

                                                              -property pseudos[source]
                                                              +property pseudos[source]

                                                              Abinit pseudopotentials.

                                                              -classmethod replicate_input(input, ndtset)[source]
                                                              +classmethod replicate_input(input, ndtset)[source]

                                                              Construct a multidataset with ndtset from the BasicAbinitInput input.

                                                              -split_datasets()[source]
                                                              +split_datasets()[source]

                                                              Return list of BasicAbinitInputs.

                                                              -to_str(with_pseudos=True)[source]
                                                              +to_str(with_pseudos=True)[source]

                                                              String representation i.e. the input file read by Abinit.

                                                              Parameters:
                                                              @@ -2494,7 +2491,7 @@

                                                              Submodules
                                                              -write(filepath='run.abi')[source]
                                                              +write(filepath='run.abi')[source]

                                                              Write ndset input files to disk. The name of the file is constructed from the dataset index e.g. run0.abi.

                                                              @@ -2503,7 +2500,7 @@

                                                              Submodules
                                                              -class ShiftMode(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
                                                              +class ShiftMode(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

                                                              Bases: Enum

                                                              Mode used to generate the shifts for the k-point sampling. G: Gamma centered @@ -2515,27 +2512,27 @@

                                                              Submodules
                                                              -GammaCentered = 'G'[source]
                                                              +GammaCentered = 'G'[source]

                                                              -MonkhorstPack = 'M'[source]
                                                              +MonkhorstPack = 'M'[source]
                                                              -OneSymmetric = 'O'[source]
                                                              +OneSymmetric = 'O'[source]
                                                              -Symmetric = 'S'[source]
                                                              +Symmetric = 'S'[source]
                                                              -classmethod from_object(obj) Self[source]
                                                              +classmethod from_object(obj) Self[source]

                                                              Get an instance of ShiftMode based on the type of object passed. Converts strings to ShiftMode depending on the initial letter of the string. G for GammaCentered, M for MonkhorstPack, S for Symmetric, O for OneSymmetric. @@ -2546,7 +2543,7 @@

                                                              Submodules
                                                              -as_structure(obj)[source]
                                                              +as_structure(obj)[source]

                                                              Convert obj into a Structure. Accepts:

                                                                @@ -2559,7 +2556,7 @@

                                                                Submodules
                                                                -calc_shiftk(structure, symprec: float = 0.01, angle_tolerance=5)[source]
                                                                +calc_shiftk(structure, symprec: float = 0.01, angle_tolerance=5)[source]

                                                                Find the values of shiftk and nshiftk appropriated for the sampling of the Brillouin zone.

                                                                When the primitive vectors of the lattice do NOT form a FCC or a BCC lattice, the usual (shifted) Monkhorst-Pack grids are formed by using nshiftk=1 and shiftk 0.5 0.5 0.5 . @@ -2616,7 +2613,7 @@

                                                                Submodules
                                                                -ebands_input(structure, pseudos, kppa=None, nscf_nband=None, ndivsm=15, ecut=None, pawecutdg=None, scf_nband=None, accuracy='normal', spin_mode='polarized', smearing='fermi_dirac:0.1 eV', charge=0.0, scf_algorithm=None, dos_kppa=None)[source]
                                                                +ebands_input(structure, pseudos, kppa=None, nscf_nband=None, ndivsm=15, ecut=None, pawecutdg=None, scf_nband=None, accuracy='normal', spin_mode='polarized', smearing='fermi_dirac:0.1 eV', charge=0.0, scf_algorithm=None, dos_kppa=None)[source]

                                                                Get a |BasicMultiDataset| object for band structure calculations.

                                                                Parameters:
                                                                @@ -2646,7 +2643,7 @@

                                                                Submodules
                                                                -gs_input(structure, pseudos, kppa=None, ecut=None, pawecutdg=None, scf_nband=None, accuracy='normal', spin_mode='polarized', smearing='fermi_dirac:0.1 eV', charge=0.0, scf_algorithm=None)[source]
                                                                +gs_input(structure, pseudos, kppa=None, ecut=None, pawecutdg=None, scf_nband=None, accuracy='normal', spin_mode='polarized', smearing='fermi_dirac:0.1 eV', charge=0.0, scf_algorithm=None)[source]

                                                                Get a BasicAbinitInput for ground-state calculation.

                                                                Parameters:
                                                                @@ -2671,7 +2668,7 @@

                                                                Submodules
                                                                -ion_ioncell_relax_input(structure, pseudos, kppa=None, nband=None, ecut=None, pawecutdg=None, accuracy='normal', spin_mode='polarized', smearing='fermi_dirac:0.1 eV', charge=0.0, scf_algorithm=None, shift_mode='Monkhorst-pack')[source]
                                                                +ion_ioncell_relax_input(structure, pseudos, kppa=None, nband=None, ecut=None, pawecutdg=None, accuracy='normal', spin_mode='polarized', smearing='fermi_dirac:0.1 eV', charge=0.0, scf_algorithm=None, shift_mode='Monkhorst-pack')[source]

                                                                Get a |BasicMultiDataset| for a structural relaxation. The first dataset optimizes the atomic positions at fixed unit cell. The second datasets optimizes both ions and unit cell parameters.

                                                                @@ -2693,7 +2690,7 @@

                                                                Submodules
                                                                -num_valence_electrons(structure, pseudos) float[source]
                                                                +num_valence_electrons(structure, pseudos) float[source]

                                                                Get the number of valence electrons.

                                                                Parameters:
                                                                @@ -2708,20 +2705,12 @@

                                                                Submodules
                                                                -class AbinitHeader(*args, **kwargs)[source]
                                                                +class AbinitHeader(*args, **kwargs)[source]

                                                                Bases: AttrDict

                                                                Stores the values reported in the Abinit header.

                                                                -
                                                                -
                                                                Parameters:
                                                                -
                                                                  -
                                                                • args – Passthrough arguments for standard dict.

                                                                • -
                                                                • kwargs – Passthrough keyword arguments for standard dict.

                                                                • -
                                                                -
                                                                -
                                                                -to_str(verbose=0, title=None, **kwargs)[source]
                                                                +to_str(verbose=0, title=None, **kwargs)[source]

                                                                String representation. kwargs are passed to pprint.pformat.

                                                                Parameters:
                                                                @@ -2735,7 +2724,7 @@

                                                                Submodules
                                                                -to_string(verbose=0, title=None, **kwargs)[source]
                                                                +to_string(verbose=0, title=None, **kwargs)[source]

                                                                String representation. kwargs are passed to pprint.pformat.

                                                                Parameters:
                                                                @@ -2751,39 +2740,39 @@

                                                                Submodules
                                                                -class EtsfReader(path)[source]
                                                                +class EtsfReader(path)[source]

                                                                Bases: NetcdfReader

                                                                This object reads data from a file written according to the ETSF-IO specifications.

                                                                We assume that the netcdf file contains at least the crystallographic section.

                                                                Open the Netcdf file specified by path (read mode).

                                                                -chemical_symbols()[source]
                                                                +chemical_symbols()[source]

                                                                Chemical symbols char [number of atom species][symbol length].

                                                                -read_abinit_hdr()[source]
                                                                +read_abinit_hdr()[source]

                                                                Read the variables associated to the Abinit header.

                                                                Return AbinitHeader

                                                                -read_abinit_xcfunc()[source]
                                                                +read_abinit_xcfunc()[source]

                                                                Read ixc from an Abinit file. Return XcFunc object.

                                                                -read_structure(cls=<class 'pymatgen.core.structure.Structure'>)[source]
                                                                +read_structure(cls=<class 'pymatgen.core.structure.Structure'>)[source]

                                                                Get the crystalline structure stored in the rootgrp.

                                                                -type_idx_from_symbol(symbol)[source]
                                                                +type_idx_from_symbol(symbol)[source]

                                                                Get the type index from the chemical symbol. Note python convention.

                                                                @@ -2791,14 +2780,14 @@

                                                                Submodules
                                                                -class NO_DEFAULT[source]
                                                                +class NO_DEFAULT[source]

                                                                Bases: object

                                                                Signal that read_value should raise an Error.

                                                                -class NetcdfReader(path)[source]
                                                                +class NetcdfReader(path)[source]

                                                                Bases: object

                                                                Wraps and extends netCDF4.Dataset. Read only mode. Supports with statements.

                                                                @@ -2808,25 +2797,25 @@

                                                                Submodules
                                                                -Error[source]
                                                                +Error[source]

                                                                alias of NetcdfReaderError

                                                                -close()[source]
                                                                +close()[source]

                                                                Close the file.

                                                                -print_tree()[source]
                                                                +print_tree()[source]

                                                                Print all the groups in the file.

                                                                -read_dimvalue(dimname, path='/', default=<class 'pymatgen.io.abinit.netcdf.NO_DEFAULT'>)[source]
                                                                +read_dimvalue(dimname, path='/', default=<class 'pymatgen.io.abinit.netcdf.NO_DEFAULT'>)[source]

                                                                Get the value of a dimension.

                                                                Parameters:
                                                                @@ -2842,14 +2831,14 @@

                                                                Submodules
                                                                -read_keys(keys, dict_cls=<class 'monty.collections.AttrDict'>, path='/')[source]
                                                                +read_keys(keys, dict_cls=<class 'monty.collections.AttrDict'>, path='/')[source]

                                                                Read a list of variables/dimensions from file. If a key is not present the corresponding entry in the output dictionary is set to None.

                                                                -read_value(varname, path='/', cmode=None, default=<class 'pymatgen.io.abinit.netcdf.NO_DEFAULT'>)[source]
                                                                +read_value(varname, path='/', cmode=None, default=<class 'pymatgen.io.abinit.netcdf.NO_DEFAULT'>)[source]

                                                                Get the values of variable with name varname in the group specified by path.

                                                                Parameters:
                                                                @@ -2870,19 +2859,19 @@

                                                                Submodules
                                                                -read_variable(varname, path='/')[source]
                                                                +read_variable(varname, path='/')[source]

                                                                Get the variable with name varname in the group specified by path.

                                                                -read_varnames(path='/')[source]
                                                                +read_varnames(path='/')[source]

                                                                List of variable names stored in the group specified by path.

                                                                -walk_tree(top=None)[source]
                                                                +walk_tree(top=None)[source]

                                                                Navigate all the groups in the file starting from top. If top is None, the root group is used.

                                                                @@ -2891,20 +2880,20 @@

                                                                Submodules
                                                                -exception NetcdfReaderError[source]
                                                                +exception NetcdfReaderError[source]

                                                                Bases: Exception

                                                                Base error class for NetcdfReader.

                                                                -as_etsfreader(file)[source]
                                                                +as_etsfreader(file)[source]

                                                                Return an EtsfReader. Accepts filename or EtsfReader.

                                                                -as_ncreader(file)[source]
                                                                +as_ncreader(file)[source]

                                                                Convert file into a NetcdfReader instance. Returns reader, close_it where close_it is set to True if we have to close the file before leaving the procedure.

                                                                @@ -2912,7 +2901,7 @@

                                                                Submodules
                                                                -structure_from_ncdata(ncdata, site_properties=None, cls=<class 'pymatgen.core.structure.Structure'>)[source]
                                                                +structure_from_ncdata(ncdata, site_properties=None, cls=<class 'pymatgen.core.structure.Structure'>)[source]

                                                                Read and return a pymatgen structure from a NetCDF file containing crystallographic data in the ETSF-IO format.

                                                                @@ -2933,14 +2922,14 @@

                                                                Submodules
                                                                -class AbinitHeader[source]
                                                                +class AbinitHeader[source]

                                                                Bases: dict

                                                                Dictionary whose keys can be also accessed as attributes.

                                                                -class AbinitPseudo(path, header)[source]
                                                                +class AbinitPseudo(path, header)[source]

                                                                Bases: Pseudo

                                                                An AbinitPseudo is a pseudopotential whose file contains an abinit header.

                                                                @@ -2953,37 +2942,37 @@

                                                                Submodules
                                                                -property Z[source]
                                                                +property Z[source]

                                                                The atomic number of the atom.

                                                                -property Z_val[source]
                                                                +property Z_val[source]

                                                                Valence charge.

                                                                -property l_local[source]
                                                                +property l_local[source]

                                                                Angular momentum used for the local part.

                                                                -property l_max[source]
                                                                +property l_max[source]

                                                                Maximum angular momentum.

                                                                -property summary[source]
                                                                +property summary[source]

                                                                Summary line reported in the ABINIT header.

                                                                -property supports_soc[source]
                                                                +property supports_soc[source]

                                                                True if the pseudo can be used in a calculation with spin-orbit coupling. Base classes should provide a concrete implementation that computes this value.

                                                                @@ -2992,19 +2981,19 @@

                                                                Submodules
                                                                -class Hint(ecut, pawecutdg=None)[source]
                                                                +class Hint(ecut, pawecutdg=None)[source]

                                                                Bases: object

                                                                Suggested value for the cutoff energy [Hartree units] and the cutoff energy for the dense grid (only for PAW pseudos).

                                                                -as_dict()[source]
                                                                +as_dict()[source]

                                                                Return dictionary for MSONable protocol.

                                                                -classmethod from_dict(dct: dict) Self[source]
                                                                +classmethod from_dict(dct: dict) Self[source]

                                                                Build instance from dictionary (MSONable protocol).

                                                                @@ -3012,12 +3001,12 @@

                                                                Submodules
                                                                -class NcAbinitHeader(summary, **kwargs)[source]
                                                                +class NcAbinitHeader(summary, **kwargs)[source]

                                                                Bases: AbinitHeader

                                                                The abinit header found in the NC pseudopotential files.

                                                                -static fhi_header(filename, ppdesc)[source]
                                                                +static fhi_header(filename, ppdesc)[source]

                                                                Parse the FHI abinit header. Example:

                                                                Troullier-Martins psp for element Sc Thu Oct 27 17:33:22 EDT 1994

                                                                21.00000 3.00000 940714 zatom, zion, pspdat @@ -3029,7 +3018,7 @@

                                                                Submodules
                                                                -static gth_header(filename, ppdesc)[source]
                                                                +static gth_header(filename, ppdesc)[source]

                                                                Parse the GTH abinit header. Example:

                                                                Goedecker-Teter-Hutter Wed May 8 14:27:44 EDT 1996 1 1 960508 zatom,zion,pspdat @@ -3044,7 +3033,7 @@

                                                                Submodules
                                                                -static hgh_header(filename, ppdesc)[source]
                                                                +static hgh_header(filename, ppdesc)[source]

                                                                Parse the HGH abinit header. Example:

                                                                Hartwigsen-Goedecker-Hutter psp for Ne, from PRB58, 3641 (1998)

                                                                10 8 010605 zatom,zion,pspdat @@ -3055,7 +3044,7 @@

                                                                Submodules
                                                                -static oncvpsp_header(filename, ppdesc)[source]
                                                                +static oncvpsp_header(filename, ppdesc)[source]

                                                                Parse the ONCVPSP abinit header. Example:

                                                                Li ONCVPSP r_core= 2.01 3.02
                                                                @@ -3082,7 +3071,7 @@

                                                                Submodules
                                                                -static tm_header(filename, ppdesc)[source]
                                                                +static tm_header(filename, ppdesc)[source]

                                                                Parse the TM abinit header. Example:

                                                                Troullier-Martins psp for element Fm Thu Oct 27 17:28:39 EDT 1994 100.00000 14.00000 940714 zatom, zion, pspdat

                                                                @@ -3104,7 +3093,7 @@

                                                                Submodules
                                                                -class NcAbinitPseudo(path, header)[source]
                                                                +class NcAbinitPseudo(path, header)[source]

                                                                Bases: NcPseudo, AbinitPseudo

                                                                Norm-conserving pseudopotential in the Abinit format.

                                                                @@ -3117,38 +3106,38 @@

                                                                Submodules
                                                                -property Z[source]
                                                                +property Z[source]

                                                                The atomic number of the atom.

                                                                -property Z_val[source]
                                                                +property Z_val[source]

                                                                Number of valence electrons.

                                                                -property l_local[source]
                                                                +property l_local[source]

                                                                Angular momentum used for the local part.

                                                                -property l_max[source]
                                                                +property l_max[source]

                                                                Maximum angular momentum.

                                                                -property nlcc_radius[source]
                                                                +property nlcc_radius[source]

                                                                Radius at which the core charge vanish (i.e. cut-off in a.u.). Returns 0.0 if nlcc is not used.

                                                                -property summary[source]
                                                                +property summary[source]

                                                                Summary line reported in the ABINIT header.

                                                                @@ -3156,26 +3145,26 @@

                                                                Submodules
                                                                -class NcPseudo[source]
                                                                +class NcPseudo[source]

                                                                Bases: ABC

                                                                Abstract class defining the methods that must be implemented by the concrete classes representing norm-conserving pseudopotentials.

                                                                -property has_nlcc[source]
                                                                +property has_nlcc[source]

                                                                True if the pseudo is generated with non-linear core correction.

                                                                -abstract property nlcc_radius[source]
                                                                +abstract property nlcc_radius[source]

                                                                Radius at which the core charge vanish (i.e. cut-off in a.u.). Returns 0.0 if nlcc is not used.

                                                                -property rcore[source]
                                                                +property rcore[source]

                                                                Radius of the pseudization sphere in a.u.

                                                                @@ -3183,12 +3172,12 @@

                                                                Submodules
                                                                -class PawAbinitHeader(summary, **kwargs)[source]
                                                                +class PawAbinitHeader(summary, **kwargs)[source]

                                                                Bases: AbinitHeader

                                                                The abinit header found in the PAW pseudopotential files.

                                                                -static paw_header(filename, ppdesc)[source]
                                                                +static paw_header(filename, ppdesc)[source]

                                                                Parse the PAW abinit header. Examples:

                                                                Paw atomic data for element Ni - Generated by AtomPAW (N. Holzwarth) + AtomPAW2Abinit v3.0.5
                                                                @@ -3264,7 +3253,7 @@

                                                                Submodules
                                                                -class PawAbinitPseudo(path, header)[source]
                                                                +class PawAbinitPseudo(path, header)[source]

                                                                Bases: PawPseudo, AbinitPseudo

                                                                Paw pseudopotential in the Abinit format.

                                                                @@ -3277,13 +3266,13 @@

                                                                Submodules
                                                                -property paw_radius[source]
                                                                +property paw_radius[source]

                                                                Radius of the PAW sphere in a.u.

                                                                -property supports_soc[source]
                                                                +property supports_soc[source]

                                                                True if the pseudo can be used in a calculation with spin-orbit coupling. Base classes should provide a concrete implementation that computes this value.

                                                                @@ -3292,19 +3281,19 @@

                                                                Submodules
                                                                -class PawPseudo[source]
                                                                +class PawPseudo[source]

                                                                Bases: ABC

                                                                Abstract class that defines the methods that must be implemented by the concrete classes representing PAW pseudopotentials.

                                                                -abstract property paw_radius[source]
                                                                +abstract property paw_radius[source]

                                                                Radius of the PAW sphere in a.u.

                                                                -property rcore[source]
                                                                +property rcore[source]

                                                                Alias of paw_radius.

                                                                @@ -3312,7 +3301,7 @@

                                                                Submodules
                                                                -class PawXmlSetup(filepath)[source]
                                                                +class PawXmlSetup(filepath)[source]

                                                                Bases: Pseudo, PawPseudo

                                                                Setup class for PawXml.

                                                                @@ -3322,49 +3311,49 @@

                                                                Submodules
                                                                -property Z[source]
                                                                +property Z[source]

                                                                The atomic number of the atom.

                                                                -property Z_val[source]
                                                                +property Z_val[source]

                                                                Number of valence electrons.

                                                                -ae_core_density()[source]
                                                                +ae_core_density()[source]

                                                                The all-electron radial density.

                                                                -ae_partial_waves()[source]
                                                                +ae_partial_waves()[source]

                                                                Dictionary with the AE partial waves indexed by state.

                                                                -property l_local[source]
                                                                +property l_local[source]

                                                                Angular momentum used for the local part.

                                                                -property l_max[source]
                                                                +property l_max[source]

                                                                Maximum angular momentum.

                                                                -property paw_radius[source]
                                                                +property paw_radius[source]

                                                                Radius of the PAW sphere in a.u.

                                                                -plot_densities(ax: plt.Axes = None, **kwargs)[source]
                                                                +plot_densities(ax: plt.Axes = None, **kwargs)[source]

                                                                Plot the PAW densities.

                                                                Parameters:
                                                                @@ -3415,7 +3404,7 @@

                                                                Submodules
                                                                -plot_projectors(ax: plt.Axes = None, fontsize=12, **kwargs)[source]
                                                                +plot_projectors(ax: plt.Axes = None, fontsize=12, **kwargs)[source]

                                                                Plot the PAW projectors.

                                                                Parameters:
                                                                @@ -3469,7 +3458,7 @@

                                                                Submodules
                                                                -plot_waves(ax: plt.Axes = None, fontsize=12, **kwargs)[source]
                                                                +plot_waves(ax: plt.Axes = None, fontsize=12, **kwargs)[source]

                                                                Plot the AE and the pseudo partial waves.

                                                                Parameters:
                                                                @@ -3526,43 +3515,43 @@

                                                                Submodules
                                                                -projector_functions()[source]
                                                                +projector_functions()[source]

                                                                Dictionary with the PAW projectors indexed by state.

                                                                -pseudo_core_density()[source]
                                                                +pseudo_core_density()[source]

                                                                The pseudized radial density.

                                                                -property pseudo_partial_waves[source]
                                                                +property pseudo_partial_waves[source]

                                                                Dictionary with the pseudo partial waves indexed by state.

                                                                -root()[source]
                                                                +root()[source]

                                                                Root tree of XML.

                                                                -property summary[source]
                                                                +property summary[source]

                                                                String summarizing the most important properties.

                                                                -property supports_soc[source]
                                                                +property supports_soc[source]

                                                                Here I assume that the ab-initio code can treat the SOC within the on-site approximation.

                                                                -yield_figs(**kwargs)[source]
                                                                +yield_figs(**kwargs)[source]

                                                                This function generates a predefined list of matplotlib figures with minimal input from the user.

                                                                @@ -3570,31 +3559,31 @@

                                                                Submodules
                                                                -class Pseudo[source]
                                                                +class Pseudo[source]

                                                                Bases: MSONable, ABC

                                                                Abstract base class defining the methods that must be implemented by the concrete pseudo-potential sub-classes.

                                                                -abstract property Z: int[source]
                                                                +abstract property Z: int[source]

                                                                The atomic number of the atom.

                                                                -abstract property Z_val: int[source]
                                                                +abstract property Z_val: int[source]

                                                                Valence charge.

                                                                -as_dict(**kwargs)[source]
                                                                +as_dict(**kwargs)[source]

                                                                Return dictionary for MSONable protocol.

                                                                -classmethod as_pseudo(obj: Self | str) Self[source]
                                                                +classmethod as_pseudo(obj: Self | str) Self[source]

                                                                Convert obj into a Pseudo.

                                                                Parameters:
                                                                @@ -3605,7 +3594,7 @@

                                                                Submodules
                                                                -as_tmpfile(tmpdir=None)[source]
                                                                +as_tmpfile(tmpdir=None)[source]

                                                                Copy the pseudopotential to a temporary a file and returns a new pseudopotential object. Useful for unit tests in which we have to change the content of the file.

                                                                @@ -3618,43 +3607,43 @@

                                                                Submodules
                                                                -property basename: str[source]
                                                                +property basename: str[source]

                                                                File basename.

                                                                -compute_md5()[source]
                                                                +compute_md5()[source]

                                                                Compute and return MD5 hash value.

                                                                -property djrepo_path[source]
                                                                +property djrepo_path[source]

                                                                The path of the djrepo file. None if file does not exist.

                                                                -property element: Element[source]
                                                                +property element: Element[source]

                                                                Pymatgen Element.

                                                                -property filepath: str[source]
                                                                +property filepath: str[source]

                                                                Absolute path to pseudopotential file.

                                                                -classmethod from_dict(dct: dict) Self[source]
                                                                +classmethod from_dict(dct: dict) Self[source]

                                                                Build instance from dictionary (MSONable protocol).

                                                                -classmethod from_file(filename: str) Self[source]
                                                                +classmethod from_file(filename: str) Self[source]

                                                                Build an instance of a concrete Pseudo subclass from filename. Note: the parser knows the concrete class that should be instantiated Client code should rely on the abstract interface provided by Pseudo.

                                                                @@ -3662,19 +3651,19 @@

                                                                Submodules
                                                                -property has_dojo_report[source]
                                                                +property has_dojo_report[source]

                                                                True if the pseudo has an associated DOJO_REPORT section.

                                                                -property has_hints[source]
                                                                +property has_hints[source]

                                                                True if self provides hints on the cutoff energy.

                                                                -hint_for_accuracy(accuracy='normal')[source]
                                                                +hint_for_accuracy(accuracy='normal')[source]

                                                                Get a Hint object with the suggested value of ecut [Ha] and pawecutdg [Ha] for the given accuracy. ecut and pawecutdg are set to zero if no hint is available.

                                                                @@ -3687,37 +3676,37 @@

                                                                Submodules
                                                                -property isnc: bool[source]
                                                                +property isnc: bool[source]

                                                                True if norm-conserving pseudopotential.

                                                                -property ispaw: bool[source]
                                                                +property ispaw: bool[source]

                                                                True if PAW pseudopotential.

                                                                -abstract property l_local: int[source]
                                                                +abstract property l_local: int[source]

                                                                Angular momentum used for the local part.

                                                                -abstract property l_max: int[source]
                                                                +abstract property l_max: int[source]

                                                                Maximum angular momentum.

                                                                -md5()[source]
                                                                +md5()[source]

                                                                MD5 hash value.

                                                                -open_pspsfile(ecut=20, pawecutdg=None)[source]
                                                                +open_pspsfile(ecut=20, pawecutdg=None)[source]

                                                                Calls Abinit to compute the internal tables for the application of the pseudopotential part. Returns PspsFile object providing methods to plot and analyze the data or None if file is not found or it’s not readable.

                                                                @@ -3733,32 +3722,32 @@

                                                                Submodules
                                                                -abstract property summary: str[source]
                                                                +abstract property summary: str[source]

                                                                String summarizing the most important properties.

                                                                -abstract property supports_soc[source]
                                                                +abstract property supports_soc[source]

                                                                True if the pseudo can be used in a calculation with spin-orbit coupling. Base classes should provide a concrete implementation that computes this value.

                                                                -property symbol: str[source]
                                                                +property symbol: str[source]

                                                                Element symbol.

                                                                -to_str(verbose=0) str[source]
                                                                +to_str(verbose=0) str[source]

                                                                String representation.

                                                                -property type: str[source]
                                                                +property type: str[source]

                                                                Type of pseudo.

                                                                @@ -3766,14 +3755,14 @@

                                                                Submodules
                                                                -exception PseudoParseError[source]
                                                                +exception PseudoParseError[source]

                                                                Bases: ParseError

                                                                Base Error class for the exceptions raised by PseudoParser.

                                                                -class PseudoParser[source]
                                                                +class PseudoParser[source]

                                                                Bases: object

                                                                Responsible for parsing pseudopotential files and returning pseudopotential objects.

                                                                @@ -3782,13 +3771,13 @@

                                                                Submodules
                                                                -Error[source]
                                                                +Error[source]

                                                                alias of PseudoParseError

                                                                -parse(filename)[source]
                                                                +parse(filename)[source]

                                                                Read and parse a pseudopotential file. Main entry point for client code.

                                                                Returns:
                                                                @@ -3799,31 +3788,31 @@

                                                                Submodules
                                                                -class ppdesc(pspcod: int, name: str, psp_type: str, format: None)[source]
                                                                +class ppdesc(pspcod: int, name: str, psp_type: str, format: None)[source]

                                                                Bases: NamedTuple

                                                                Supported values of pspcod.

                                                                Create new instance of ppdesc(pspcod, name, psp_type, format)

                                                                -format: None[source]
                                                                +format: None[source]

                                                                Alias for field number 3

                                                                -name: str[source]
                                                                +name: str[source]

                                                                Alias for field number 1

                                                                -psp_type: str[source]
                                                                +psp_type: str[source]

                                                                Alias for field number 2

                                                                -pspcod: int[source]
                                                                +pspcod: int[source]

                                                                Alias for field number 0

                                                                @@ -3831,7 +3820,7 @@

                                                                Submodules
                                                                -read_ppdesc(filename)[source]
                                                                +read_ppdesc(filename)[source]

                                                                Read the pseudopotential descriptor from filename.

                                                                Returns:
                                                                @@ -3845,7 +3834,7 @@

                                                                Submodules
                                                                -scan_directory(dirname, exclude_exts=(), exclude_fnames=())[source]
                                                                +scan_directory(dirname, exclude_exts=(), exclude_fnames=())[source]

                                                                Analyze the files contained in directory dirname.

                                                                Parameters:
                                                                @@ -3865,7 +3854,7 @@

                                                                Submodules
                                                                -class PseudoTable(pseudos: Sequence[Pseudo])[source]
                                                                +class PseudoTable(pseudos: Sequence[Pseudo])[source]

                                                                Bases: Sequence, MSONable

                                                                Define the pseudopotentials from the element table. Individidual elements are accessed by name, symbol or atomic number.

                                                                @@ -3882,7 +3871,7 @@

                                                                Submodules
                                                                -all_combinations_for_elements(element_symbols)[source]
                                                                +all_combinations_for_elements(element_symbols)[source]

                                                                Get a list with all the possible combination of pseudos for the given list of element_symbols. Each item is a list of pseudopotential objects.

                                                                @@ -3892,37 +3881,37 @@

                                                                Submodules
                                                                -property allnc: bool[source]
                                                                +property allnc: bool[source]

                                                                True if all pseudos are norm-conserving.

                                                                -property allpaw[source]
                                                                +property allpaw[source]

                                                                True if all pseudos are PAW.

                                                                -as_dict(**kwargs)[source]
                                                                +as_dict(**kwargs)[source]

                                                                Return dictionary for MSONable protocol.

                                                                -classmethod as_table(items)[source]
                                                                +classmethod as_table(items)[source]

                                                                Return an instance of PseudoTable from the iterable items.

                                                                -classmethod from_dict(dct: dict) Self[source]
                                                                +classmethod from_dict(dct: dict) Self[source]

                                                                Build instance from dictionary (MSONable protocol).

                                                                -classmethod from_dir(top, exts=None, exclude_dirs='_*') Self | None[source]
                                                                +classmethod from_dir(top, exts=None, exclude_dirs='_*') Self | None[source]

                                                                Find all pseudos in the directory tree starting from top.

                                                                Parameters:
                                                                @@ -3941,7 +3930,7 @@

                                                                Submodules
                                                                -get_pseudos_for_structure(structure: Structure)[source]
                                                                +get_pseudos_for_structure(structure: Structure)[source]

                                                                Get the list of Pseudo objects to be used for this Structure.

                                                                Parameters:
                                                                @@ -3958,13 +3947,13 @@

                                                                Submodules
                                                                -is_complete(zmax=118) bool[source]
                                                                +is_complete(zmax=118) bool[source]

                                                                True if table is complete i.e. all elements with Z < zmax have at least on pseudopotential.

                                                                -print_table(stream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>, filter_function=None)[source]
                                                                +print_table(stream=<_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>, filter_function=None)[source]

                                                                A pretty ASCII printer for the periodic table, based on some filter_function.

                                                                Parameters:
                                                                @@ -3980,7 +3969,7 @@

                                                                Submodules
                                                                -pseudo_with_symbol(symbol, allow_multi=False)[source]
                                                                +pseudo_with_symbol(symbol, allow_multi=False)[source]

                                                                Get the pseudo with the given chemical symbol.

                                                                Parameters:
                                                                @@ -3998,7 +3987,7 @@

                                                                Submodules
                                                                -pseudos_with_symbols(symbols)[source]
                                                                +pseudos_with_symbols(symbols)[source]

                                                                Get the pseudos with the given chemical symbols.

                                                                Raises:
                                                                @@ -4009,7 +3998,7 @@

                                                                Submodules
                                                                -select(condition) PseudoTable[source]
                                                                +select(condition) PseudoTable[source]

                                                                Select only those pseudopotentials for which condition is True.

                                                                Parameters:
                                                                @@ -4026,20 +4015,20 @@

                                                                Submodules
                                                                -select_family(family)[source]
                                                                +select_family(family)[source]

                                                                Return PseudoTable with element belonging to the specified family, e.g. family=”alkaline”.

                                                                -select_rows(rows)[source]
                                                                +select_rows(rows)[source]

                                                                Get new class:PseudoTable object with pseudos in the given rows of the periodic table. rows can be either a int or a list of integers.

                                                                -select_symbols(symbols, ret_list=False)[source]
                                                                +select_symbols(symbols, ret_list=False)[source]

                                                                Get a PseudoTable with the pseudopotentials with the given list of chemical symbols.

                                                                Parameters:
                                                                @@ -4054,13 +4043,13 @@

                                                                Submodules
                                                                -sort_by_z()[source]
                                                                +sort_by_z()[source]

                                                                Return a new PseudoTable with pseudos sorted by Z.

                                                                -sorted(attrname, reverse=False)[source]
                                                                +sorted(attrname, reverse=False)[source]

                                                                Sort the table according to the value of attribute attrname.

                                                                Returns:
                                                                @@ -4074,19 +4063,19 @@

                                                                Submodules
                                                                -to_table(filter_function=None)[source]
                                                                +to_table(filter_function=None)[source]

                                                                Return string with data in tabular form.

                                                                -with_dojo_report()[source]
                                                                +with_dojo_report()[source]

                                                                Select pseudos containing the DOJO_REPORT section. Return new class:PseudoTable object.

                                                                -property zlist[source]
                                                                +property zlist[source]

                                                                Ordered list with the atomic numbers available in the table.

                                                                @@ -4094,20 +4083,20 @@

                                                                Submodules
                                                                -class RadialFunction(mesh: Any, values: NDArray)[source]
                                                                +class RadialFunction(mesh: Any, values: NDArray)[source]

                                                                Bases: NamedTuple

                                                                Radial Function class.

                                                                TODO: use RadialFunction from pseudo_dojo.

                                                                Create new instance of RadialFunction(mesh, values)

                                                                -mesh: Any[source]
                                                                +mesh: Any[source]

                                                                Alias for field number 0

                                                                -values: NDArray[source]
                                                                +values: NDArray[source]

                                                                Alias for field number 1

                                                                @@ -4115,13 +4104,13 @@

                                                                Submodules
                                                                -l2str(l_ang_mom)[source]
                                                                +l2str(l_ang_mom)[source]

                                                                Convert the angular momentum l (int) to string.

                                                                -str2l(s)[source]
                                                                +str2l(s)[source]

                                                                Convert a string to the angular momentum l (int).

                                                                @@ -4131,7 +4120,7 @@

                                                                Submodules
                                                                -class InputVariable(name: str, value, units: str = '', valperline: int = 3)[source]
                                                                +class InputVariable(name: str, value, units: str = '', valperline: int = 3)[source]

                                                                Bases: object

                                                                An Abinit input variable.

                                                                @@ -4146,51 +4135,51 @@

                                                                Submodules
                                                                -property basename[source]
                                                                +property basename[source]

                                                                The name trimmed of any dataset index.

                                                                -property dataset[source]
                                                                +property dataset[source]

                                                                The dataset index in string form.

                                                                -format_list(values, float_decimal=0)[source]
                                                                +format_list(values, float_decimal=0)[source]

                                                                Format a list of values into a string. The result might be spread among several lines.

                                                                -static format_list2d(values, float_decimal=0)[source]
                                                                +static format_list2d(values, float_decimal=0)[source]

                                                                Format a list of lists.

                                                                -static format_scalar(val, float_decimal=0)[source]
                                                                +static format_scalar(val, float_decimal=0)[source]

                                                                Format a single numerical value into a string with the appropriate number of decimal.

                                                                -get_value()[source]
                                                                +get_value()[source]

                                                                Return the value.

                                                                -property name[source]
                                                                +property name[source]

                                                                Name of the variable.

                                                                -property units[source]
                                                                +property units[source]

                                                                The units.

                                                                @@ -4198,7 +4187,7 @@

                                                                Submodules
                                                                -flatten(iterable)[source]
                                                                +flatten(iterable)[source]

                                                                Make an iterable flat, i.e. a 1d iterable object.

                                                                diff --git a/docs/pymatgen.io.aims.html b/docs/pymatgen.io.aims.html index bd207a82191..cae81ee271d 100644 --- a/docs/pymatgen.io.aims.html +++ b/docs/pymatgen.io.aims.html @@ -1,23 +1,23 @@ + + - + - pymatgen.io.aims package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.io.aims package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                - 2024.10.27 -
                                                                @@ -399,12 +396,12 @@

                                                                Submodules
                                                                -class AimsControlIn(_parameters: dict[str, Any] = <factory>)[source]
                                                                +class AimsControlIn(_parameters: dict[str, Any] = <factory>)[source]

                                                                Bases: MSONable

                                                                An FHI-aims control.in file.

                                                                -_parameters[source]
                                                                +_parameters[source]

                                                                The parameters dictionary containing all input flags (key) and values for the control.in file

                                                                @@ -416,13 +413,13 @@

                                                                Submodules
                                                                -as_dict() dict[str, Any][source]
                                                                +as_dict() dict[str, Any][source]

                                                                Get a dictionary representation of the geometry.in file.

                                                                -classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                +classmethod from_dict(dct: dict[str, Any]) Self[source]

                                                                Initialize from dictionary.

                                                                Parameters:
                                                                @@ -436,7 +433,7 @@

                                                                Submodules
                                                                -get_aims_control_parameter_str(key: str, value: Any, fmt: str) str[source]
                                                                +get_aims_control_parameter_str(key: str, value: Any, fmt: str) str[source]

                                                                Get the string needed to add a parameter to the control.in file.

                                                                Parameters:
                                                                @@ -457,7 +454,7 @@

                                                                Submodules
                                                                -get_content(structure: Structure | Molecule, verbose_header: bool = False, directory: str | Path | None = None) str[source]
                                                                +get_content(structure: Structure | Molecule, verbose_header: bool = False, directory: str | Path | None = None) str[source]

                                                                Get the content of the file.

                                                                Parameters:
                                                                @@ -479,7 +476,7 @@

                                                                Submodules
                                                                -get_species_block(structure: Structure | Molecule, basis_set: str | dict[str, str], species_dir: str | Path | None = None) str[source]
                                                                +get_species_block(structure: Structure | Molecule, basis_set: str | dict[str, str], species_dir: str | Path | None = None) str[source]

                                                                Get the basis set information for a structure

                                                                Parameters:
                                                                @@ -502,13 +499,13 @@

                                                                Submodules
                                                                -property parameters: dict[str, Any][source]
                                                                +property parameters: dict[str, Any][source]

                                                                The dictionary of input parameters for control.in.

                                                                -write_file(structure: Structure | Molecule, directory: str | Path | None = None, verbose_header: bool = False, overwrite: bool = False) None[source]
                                                                +write_file(structure: Structure | Molecule, directory: str | Path | None = None, verbose_header: bool = False, overwrite: bool = False) None[source]

                                                                Write the control.in file.

                                                                Parameters:
                                                                @@ -534,12 +531,12 @@

                                                                Submodules
                                                                -class AimsCube(type: str = <factory>, origin: Sequence[float] | Tuple3Floats = <factory>, edges: Sequence[Sequence[float]] = <factory>, points: Sequence[int] | Tuple3Ints = <factory>, format: str = 'cube', spin_state: int | None = None, kpoint: int | None = None, filename: str | None = None, elf_type: int | None = None)[source]
                                                                +class AimsCube(type: str = <factory>, origin: Sequence[float] | Tuple3Floats = <factory>, edges: Sequence[Sequence[float]] = <factory>, points: Sequence[int] | Tuple3Ints = <factory>, format: str = 'cube', spin_state: int | None = None, kpoint: int | None = None, filename: str | None = None, elf_type: int | None = None)[source]

                                                                Bases: MSONable

                                                                The FHI-aims cubes.

                                                                -type[source]
                                                                +type[source]

                                                                The value to be outputted as a cube file

                                                                Type:
                                                                @@ -550,7 +547,7 @@

                                                                Submodules
                                                                -origin[source]
                                                                +origin[source]

                                                                The origin of the cube

                                                                Type:
                                                                @@ -561,7 +558,7 @@

                                                                Submodules
                                                                -edges[source]
                                                                +edges[source]

                                                                Specifies the edges of a cube: dx, dy, dz dx (float): The length of the step in the x direction dy (float): The length of the step in the y direction @@ -575,7 +572,7 @@

                                                                Submodules
                                                                -points[source]
                                                                +points[source]

                                                                The number of points along each edge

                                                                @@ -587,7 +584,7 @@

                                                                Submodules
                                                                -spin_state[source]
                                                                +spin_state[source]

                                                                The spin-channel to use either 1 or 2

                                                                Type:
                                                                @@ -598,7 +595,7 @@

                                                                Submodules
                                                                -kpoint[source]
                                                                +kpoint[source]

                                                                The k-point to use (the index of the list printed from output k_point_list)

                                                                @@ -610,7 +607,7 @@

                                                                Submodules
                                                                -filename[source]
                                                                +filename[source]

                                                                The filename to use

                                                                Type:
                                                                @@ -621,7 +618,7 @@

                                                                Submodules
                                                                -format[source]
                                                                +format[source]

                                                                The format to output the cube file in: cube, gOpenMol, or xsf

                                                                Type:
                                                                @@ -632,7 +629,7 @@

                                                                Submodules
                                                                -elf_type[source]
                                                                +elf_type[source]

                                                                The type of electron localization function to use ( see FHI-aims manual)

                                                                @@ -644,39 +641,39 @@

                                                                Submodules
                                                                -as_dict() dict[str, Any][source]
                                                                +as_dict() dict[str, Any][source]

                                                                Get a dictionary representation of the geometry.in file.

                                                                -property control_block: str[source]
                                                                +property control_block: str[source]

                                                                The block of text for the control.in file of the Cube.

                                                                -edges: Sequence[Sequence[float]][source]
                                                                +edges: Sequence[Sequence[float]][source]
                                                                -elf_type: int | None = None[source]
                                                                +elf_type: int | None = None[source]
                                                                -filename: str | None = None[source]
                                                                +filename: str | None = None[source]
                                                                -format: str = 'cube'[source]
                                                                +format: str = 'cube'[source]
                                                                -classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                +classmethod from_dict(dct: dict[str, Any]) Self[source]

                                                                Initialize from dictionary.

                                                                Parameters:
                                                                @@ -690,39 +687,39 @@

                                                                Submodules
                                                                -kpoint: int | None = None[source]
                                                                +kpoint: int | None = None[source]

                                                                -origin: Sequence[float] | Tuple3Floats[source]
                                                                +origin: Sequence[float] | Tuple3Floats[source]
                                                                -points: Sequence[int] | Tuple3Ints[source]
                                                                +points: Sequence[int] | Tuple3Ints[source]
                                                                -spin_state: int | None = None[source]
                                                                +spin_state: int | None = None[source]
                                                                -type: str[source]
                                                                +type: str[source]
                                                                -class AimsGeometryIn(_content: str, _structure: Structure | Molecule)[source]
                                                                +class AimsGeometryIn(_content: str, _structure: Structure | Molecule)[source]

                                                                Bases: MSONable

                                                                Representation of an aims geometry.in file.

                                                                -_content[source]
                                                                +_content[source]

                                                                The content of the input file

                                                                Type:
                                                                @@ -733,7 +730,7 @@

                                                                Submodules
                                                                -_structure[source]
                                                                +_structure[source]

                                                                The structure or molecule representation of the file

                                                                @@ -745,19 +742,19 @@

                                                                Submodules
                                                                -as_dict() dict[str, Any][source]
                                                                +as_dict() dict[str, Any][source]

                                                                Get a dictionary representation of the geometry.in file.

                                                                -property content: str[source]
                                                                +property content: str[source]

                                                                Access the contents of the file.

                                                                -classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                +classmethod from_dict(dct: dict[str, Any]) Self[source]

                                                                Initialize from dictionary.

                                                                Parameters:
                                                                @@ -771,7 +768,7 @@

                                                                Submodules
                                                                -classmethod from_file(filepath: str | Path) Self[source]
                                                                +classmethod from_file(filepath: str | Path) Self[source]

                                                                Create an AimsGeometryIn from an input file.

                                                                Parameters:
                                                                @@ -788,7 +785,7 @@

                                                                Submodules
                                                                -classmethod from_str(contents: str) Self[source]
                                                                +classmethod from_str(contents: str) Self[source]

                                                                Create an input from the content of an input file.

                                                                Parameters:
                                                                @@ -802,7 +799,7 @@

                                                                Submodules
                                                                -classmethod from_structure(structure: Structure | Molecule) Self[source]
                                                                +classmethod from_structure(structure: Structure | Molecule) Self[source]

                                                                Construct an input file from an input structure.

                                                                Parameters:
                                                                @@ -819,7 +816,7 @@

                                                                Submodules
                                                                -get_header(filename: str) str[source]
                                                                +get_header(filename: str) str[source]

                                                                A header of geometry.in file

                                                                Parameters:
                                                                @@ -830,13 +827,13 @@

                                                                Submodules
                                                                -property structure: Structure | Molecule[source]
                                                                +property structure: Structure | Molecule[source]

                                                                Access structure for the file.

                                                                -write_file(directory: str | Path | None = None, overwrite: bool = False) None[source]
                                                                +write_file(directory: str | Path | None = None, overwrite: bool = False) None[source]

                                                                Write the geometry.in file.

                                                                Parameters:
                                                                @@ -852,12 +849,12 @@

                                                                Submodules
                                                                -class AimsSpeciesFile(data: str = '', label: str | None = None)[source]
                                                                +class AimsSpeciesFile(data: str = '', label: str | None = None)[source]

                                                                Bases: object

                                                                An FHI-aims single species’ defaults file.

                                                                -data[source]
                                                                +data[source]

                                                                A string of the complete species defaults file

                                                                Type:
                                                                @@ -868,7 +865,7 @@

                                                                Submodules
                                                                -label[source]
                                                                +label[source]

                                                                A string representing the name of species

                                                                Type:
                                                                @@ -879,29 +876,29 @@

                                                                Submodules
                                                                -as_dict() dict[str, Any][source]
                                                                +as_dict() dict[str, Any][source]

                                                                Dictionary representation of the species’ defaults file.

                                                                -data: str = ''[source]
                                                                +data: str = ''[source]
                                                                -property element: str[source]
                                                                +property element: str[source]
                                                                -classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                +classmethod from_dict(dct: dict[str, Any]) Self[source]

                                                                Deserialization of the AimsSpeciesFile object

                                                                -classmethod from_element_and_basis_name(element: str, basis: str, *, species_dir: str | Path | None = None, label: str | None = None) Self[source]
                                                                +classmethod from_element_and_basis_name(element: str, basis: str, *, species_dir: str | Path | None = None, label: str | None = None) Self[source]

                                                                Initialize from element and basis names.

                                                                Parameters:
                                                                @@ -921,7 +918,7 @@

                                                                Submodules
                                                                -classmethod from_file(filename: str, label: str | None = None) Self[source]
                                                                +classmethod from_file(filename: str, label: str | None = None) Self[source]

                                                                Initialize from file.

                                                                Parameters:
                                                                @@ -938,14 +935,14 @@

                                                                Submodules
                                                                -label: str | None = None[source]
                                                                +label: str | None = None[source]

                                                                -class SpeciesDefaults(labels: Sequence[str], basis_set: str | dict[str, str], *, species_dir: str | Path | None = None, elements: dict[str, str] | None = None)[source]
                                                                +class SpeciesDefaults(labels: Sequence[str], basis_set: str | dict[str, str], *, species_dir: str | Path | None = None, elements: dict[str, str] | None = None)[source]

                                                                Bases: list, MSONable

                                                                A list containing a set of species’ defaults objects with methods to read and write them to files

                                                                @@ -964,19 +961,19 @@

                                                                Submodules
                                                                -classmethod from_dict(dct: dict[str, Any]) SpeciesDefaults[source]
                                                                +classmethod from_dict(dct: dict[str, Any]) SpeciesDefaults[source]

                                                                Deserialization of the SpeciesDefaults object

                                                                -classmethod from_structure(struct: Structure | Molecule, basis_set: str | dict[str, str], species_dir: str | Path | None = None)[source]
                                                                +classmethod from_structure(struct: Structure | Molecule, basis_set: str | dict[str, str], species_dir: str | Path | None = None)[source]

                                                                Initialize species defaults from a structure.

                                                                -to_dict()[source]
                                                                +to_dict()[source]

                                                                Dictionary representation of the species’ defaults

                                                                @@ -988,7 +985,7 @@

                                                                Submodules
                                                                -class AimsOutput(results: Molecule | Structure | Sequence[Molecule | Structure], metadata: dict[str, Any], structure_summary: dict[str, Any])[source]
                                                                +class AimsOutput(results: Molecule | Structure | Sequence[Molecule | Structure], metadata: dict[str, Any], structure_summary: dict[str, Any])[source]

                                                                Bases: MSONable

                                                                The main output file for FHI-aims.

                                                                @@ -1005,73 +1002,73 @@

                                                                Submodules
                                                                -property aims_version: str[source]
                                                                +property aims_version: str[source]

                                                                The version of FHI-aims used for the calculation.

                                                                -property all_forces: list[list[Vector3D]][source]
                                                                +property all_forces: list[list[Vector3D]][source]

                                                                The forces for all images in the calculation.

                                                                -as_dict() dict[str, Any][source]
                                                                +as_dict() dict[str, Any][source]

                                                                Create a dict representation of the outputs for MSONable.

                                                                -property band_gap: float[source]
                                                                +property band_gap: float[source]

                                                                The band gap for the final structure in the calculation.

                                                                -property cbm: float[source]
                                                                +property cbm: float[source]

                                                                The LUMO level for the final structure in the calculation.

                                                                -property completed: bool[source]
                                                                +property completed: bool[source]

                                                                Did the calculation complete.

                                                                -property direct_band_gap: float[source]
                                                                +property direct_band_gap: float[source]

                                                                The direct band gap for the final structure in the calculation.

                                                                -property fermi_energy: float[source]
                                                                +property fermi_energy: float[source]

                                                                The Fermi energy for the final structure in the calculation.

                                                                -property final_energy: float[source]
                                                                +property final_energy: float[source]

                                                                The total energy for the final structure in the calculation.

                                                                -property final_structure: Structure | Molecule[source]
                                                                +property final_structure: Structure | Molecule[source]

                                                                The final structure for the calculation.

                                                                -property forces: Sequence[Vector3D] | None[source]
                                                                +property forces: Sequence[Vector3D] | None[source]

                                                                The forces for the final image of the calculation.

                                                                -classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                +classmethod from_dict(dct: dict[str, Any]) Self[source]

                                                                Construct an AimsOutput from a dictionary.

                                                                Parameters:
                                                                @@ -1085,7 +1082,7 @@

                                                                Submodules
                                                                -classmethod from_outfile(outfile: str | Path) Self[source]
                                                                +classmethod from_outfile(outfile: str | Path) Self[source]

                                                                Construct an AimsOutput from an output file.

                                                                Parameters:
                                                                @@ -1099,7 +1096,7 @@

                                                                Submodules
                                                                -classmethod from_str(content: str) Self[source]
                                                                +classmethod from_str(content: str) Self[source]

                                                                Construct an AimsOutput from an output file.

                                                                Parameters:
                                                                @@ -1113,7 +1110,7 @@

                                                                Submodules
                                                                -get_results_for_image(image_ind: int) Structure | Molecule[source]
                                                                +get_results_for_image(image_ind: int) Structure | Molecule[source]

                                                                Get the results dictionary for a particular image or slice of images.

                                                                Parameters:
                                                                @@ -1127,49 +1124,49 @@

                                                                Submodules
                                                                -property initial_structure: Structure | Molecule[source]
                                                                +property initial_structure: Structure | Molecule[source]

                                                                The initial structure for the calculations.

                                                                -property metadata: dict[str, Any][source]
                                                                +property metadata: dict[str, Any][source]

                                                                The system metadata.

                                                                -property n_images: int[source]
                                                                +property n_images: int[source]

                                                                The number of images in results.

                                                                -property stress: Matrix3D[source]
                                                                +property stress: Matrix3D[source]

                                                                The stress for the final image of the calculation.

                                                                -property stresses: Sequence[Matrix3D] | None[source]
                                                                +property stresses: Sequence[Matrix3D] | None[source]

                                                                The atomic virial stresses for the final image of the calculation.

                                                                -property structure_summary: dict[str, Any][source]
                                                                +property structure_summary: dict[str, Any][source]

                                                                The summary of the material/molecule that the calculations represent.

                                                                -property structures: Sequence[Structure | Molecule][source]
                                                                +property structures: Sequence[Structure | Molecule][source]

                                                                All images in the output file.

                                                                -property vbm: float[source]
                                                                +property vbm: float[source]

                                                                The HOMO level for the final structure in the calculation.

                                                                @@ -1181,7 +1178,7 @@

                                                                Submodules
                                                                -class AimsOutCalcChunk(lines: list[str], header: AimsOutHeaderChunk)[source]
                                                                +class AimsOutCalcChunk(lines: list[str], header: AimsOutHeaderChunk)[source]

                                                                Bases: AimsOutChunk

                                                                A part of the aims.out file corresponding to a single structure.

                                                                Construct the AimsOutCalcChunk.

                                                                @@ -1196,235 +1193,235 @@

                                                                Submodules
                                                                -property E_f: float | None[source]
                                                                +property E_f: float | None[source]

                                                                The Fermi energy.

                                                                -property cbm: float[source]
                                                                +property cbm: float[source]

                                                                The conduction band minimnum.

                                                                -property converged: bool[source]
                                                                +property converged: bool[source]

                                                                True if the calculation is converged.

                                                                -property coords: list[Vector3D][source]
                                                                +property coords: list[Vector3D][source]

                                                                The cartesian coordinates of the atoms.

                                                                -property dielectric_tensor: Matrix3D | None[source]
                                                                +property dielectric_tensor: Matrix3D | None[source]

                                                                The dielectric tensor from the aims.out file.

                                                                -property dipole: Vector3D | None[source]
                                                                +property dipole: Vector3D | None[source]

                                                                The electric dipole moment from the aims.out file.

                                                                -property direct_gap: float[source]
                                                                +property direct_gap: float[source]

                                                                The direct bandgap.

                                                                -property electronic_temperature: float[source]
                                                                +property electronic_temperature: float[source]

                                                                The electronic temperature for the chunk.

                                                                -property energy: float[source]
                                                                +property energy: float[source]

                                                                The energy from the aims.out file.

                                                                -property forces: ndarray | None[source]
                                                                +property forces: ndarray | None[source]

                                                                The forces from the aims.out file.

                                                                -property free_energy: float | None[source]
                                                                +property free_energy: float | None[source]

                                                                The free energy of the calculation.

                                                                -property gap: float[source]
                                                                +property gap: float[source]

                                                                The band gap.

                                                                -property hirshfeld_atomic_dipoles: Sequence[Vector3D] | None[source]
                                                                +property hirshfeld_atomic_dipoles: Sequence[Vector3D] | None[source]

                                                                The Hirshfeld atomic dipoles of the system.

                                                                -property hirshfeld_charges: Sequence[float] | None[source]
                                                                +property hirshfeld_charges: Sequence[float] | None[source]

                                                                The Hirshfeld charges of the system.

                                                                -property hirshfeld_dipole: None | Vector3D[source]
                                                                +property hirshfeld_dipole: None | Vector3D[source]

                                                                The Hirshfeld dipole of the system.

                                                                -property hirshfeld_volumes: Sequence[float] | None[source]
                                                                +property hirshfeld_volumes: Sequence[float] | None[source]

                                                                The Hirshfeld atomic dipoles of the system.

                                                                -property initial_lattice: Lattice | None[source]
                                                                +property initial_lattice: Lattice | None[source]

                                                                The initial Lattice of the structure.

                                                                -property initial_structure: Structure | Molecule[source]
                                                                +property initial_structure: Structure | Molecule[source]

                                                                The initial structure for the calculation.

                                                                -property is_metallic: bool[source]
                                                                +property is_metallic: bool[source]

                                                                Is the system is metallic.

                                                                -property k_point_weights: Sequence[float][source]
                                                                +property k_point_weights: Sequence[float][source]

                                                                The k-point weights for the calculation.

                                                                -property k_points: Sequence[Vector3D][source]
                                                                +property k_points: Sequence[Vector3D][source]

                                                                All k-points listed in the calculation.

                                                                -property lattice: Lattice[source]
                                                                +property lattice: Lattice[source]

                                                                The Lattice object for the structure.

                                                                -property magmom: float | None[source]
                                                                +property magmom: float | None[source]

                                                                The magnetic moment of the structure.

                                                                -property mulliken_charges: Sequence[float] | None[source]
                                                                +property mulliken_charges: Sequence[float] | None[source]

                                                                The Mulliken charges of the system

                                                                -property mulliken_spins: Sequence[float] | None[source]
                                                                +property mulliken_spins: Sequence[float] | None[source]

                                                                The Mulliken spins of the system

                                                                -property n_atoms: int[source]
                                                                +property n_atoms: int[source]

                                                                The number of atoms in the structure.

                                                                -property n_bands: int[source]
                                                                +property n_bands: int[source]

                                                                The number of Kohn-Sham states for the chunk.

                                                                -property n_electrons: int[source]
                                                                +property n_electrons: int[source]

                                                                The number of electrons for the chunk.

                                                                -property n_iter: int | None[source]
                                                                +property n_iter: int | None[source]

                                                                The number of steps needed to converge the SCF cycle for the chunk.

                                                                -property n_k_points: int[source]
                                                                +property n_k_points: int[source]

                                                                The number of k_ppoints for the calculation.

                                                                -property n_spins: int[source]
                                                                +property n_spins: int[source]

                                                                The number of spin channels for the chunk.

                                                                -property polarization: Vector3D | None[source]
                                                                +property polarization: Vector3D | None[source]

                                                                The polarization vector from the aims.out file.

                                                                -property results: dict[str, Any][source]
                                                                +property results: dict[str, Any][source]

                                                                Convert an AimsOutChunk to a Results Dictionary.

                                                                -property species: list[str][source]
                                                                +property species: list[str][source]

                                                                The list of atomic symbols for all atoms in the structure.

                                                                -property stress: Matrix3D | None[source]
                                                                +property stress: Matrix3D | None[source]

                                                                The stress from the aims.out file and convert to kBar.

                                                                -property stresses: ndarray | None[source]
                                                                +property stresses: ndarray | None[source]

                                                                The stresses from the aims.out file and convert to kBar.

                                                                -property structure: Structure | Molecule[source]
                                                                +property structure: Structure | Molecule[source]

                                                                The pytmagen SiteCollection of the chunk.

                                                                -property vbm: float[source]
                                                                +property vbm: float[source]

                                                                The valance band maximum.

                                                                -property velocities: list[Vector3D][source]
                                                                +property velocities: list[Vector3D][source]

                                                                The velocities of the atoms.

                                                                @@ -1432,12 +1429,12 @@

                                                                Submodules
                                                                -class AimsOutChunk(lines: list[str] = <factory>)[source]
                                                                +class AimsOutChunk(lines: list[str] = <factory>)[source]

                                                                Bases: object

                                                                Base class for AimsOutChunks.

                                                                -lines[source]
                                                                +lines[source]

                                                                The list of all lines in the chunk

                                                                Type:
                                                                @@ -1448,12 +1445,12 @@

                                                                Submodules
                                                                -lines: list[str][source]
                                                                +lines: list[str][source]

                                                                -parse_scalar(property: str) float | None[source]
                                                                +parse_scalar(property: str) float | None[source]

                                                                Parse a scalar property from the chunk.

                                                                Parameters:
                                                                @@ -1467,7 +1464,7 @@

                                                                Submodules
                                                                -reverse_search_for(keys: list[str], line_start: int = 0) int[source]
                                                                +reverse_search_for(keys: list[str], line_start: int = 0) int[source]

                                                                Find the last time one of the keys appears in self.lines.

                                                                Parameters:
                                                                @@ -1484,7 +1481,7 @@

                                                                Submodules
                                                                -search_for_all(key: str, line_start: int = 0, line_end: int = -1) list[int][source]
                                                                +search_for_all(key: str, line_start: int = 0, line_end: int = -1) list[int][source]

                                                                Find the all times the key appears in self.lines.

                                                                Parameters:
                                                                @@ -1504,84 +1501,84 @@

                                                                Submodules
                                                                -class AimsOutHeaderChunk(lines: list[str] = <factory>, _cache: dict[str, Any] = <factory>)[source]
                                                                +class AimsOutHeaderChunk(lines: list[str] = <factory>, _cache: dict[str, Any] = <factory>)[source]

                                                                Bases: AimsOutChunk

                                                                The header of the aims.out file containing general information.

                                                                -property aims_uuid: str[source]
                                                                +property aims_uuid: str[source]

                                                                The aims-uuid for the calculation.

                                                                -property build_type: list[str][source]
                                                                +property build_type: list[str][source]

                                                                The optional build flags passed to cmake.

                                                                -property c_compiler: str | None[source]
                                                                +property c_compiler: str | None[source]

                                                                The C compiler used to make FHI-aims.

                                                                -property c_compiler_flags: str | None[source]
                                                                +property c_compiler_flags: str | None[source]

                                                                The C compiler flags used to make FHI-aims.

                                                                -property commit_hash: str[source]
                                                                +property commit_hash: str[source]

                                                                The commit hash for the FHI-aims version.

                                                                -property electronic_temperature: float[source]
                                                                +property electronic_temperature: float[source]

                                                                The electronic temperature for the chunk.

                                                                -property fortran_compiler: str | None[source]
                                                                +property fortran_compiler: str | None[source]

                                                                The fortran compiler used to make FHI-aims.

                                                                -property fortran_compiler_flags: str | None[source]
                                                                +property fortran_compiler_flags: str | None[source]

                                                                The fortran compiler flags used to make FHI-aims.

                                                                -property header_summary: dict[str, Any][source]
                                                                +property header_summary: dict[str, Any][source]

                                                                Dictionary summarizing the information inside the header.

                                                                -property initial_charges: Sequence[float][source]
                                                                +property initial_charges: Sequence[float][source]

                                                                The initial charges for the structure.

                                                                -property initial_lattice: Lattice | None[source]
                                                                +property initial_lattice: Lattice | None[source]

                                                                The initial lattice vectors from the aims.out file.

                                                                -property initial_magnetic_moments: Sequence[float][source]
                                                                +property initial_magnetic_moments: Sequence[float][source]

                                                                The initial magnetic Moments.

                                                                -property initial_structure: Structure | Molecule[source]
                                                                +property initial_structure: Structure | Molecule[source]

                                                                The initial structure.

                                                                Using the FHI-aims output file recreate the initial structure for the calculation.

                                                                @@ -1589,78 +1586,78 @@

                                                                Submodules
                                                                -property is_md: bool[source]
                                                                +property is_md: bool[source]

                                                                Is the output for a molecular dynamics calculation?

                                                                -property is_relaxation: bool[source]
                                                                +property is_relaxation: bool[source]

                                                                Is the output for a relaxation?

                                                                -property k_point_weights: Sequence[float][source]
                                                                +property k_point_weights: Sequence[float][source]

                                                                The k-point weights for the calculation.

                                                                -property k_points: Sequence[Vector3D][source]
                                                                +property k_points: Sequence[Vector3D][source]

                                                                All k-points listed in the calculation.

                                                                -lines: list[str][source]
                                                                +lines: list[str][source]
                                                                -property linked_against: list[str][source]
                                                                +property linked_against: list[str][source]

                                                                All libraries used to link the FHI-aims executable.

                                                                -property metadata_summary: dict[str, list[str] | str | None][source]
                                                                +property metadata_summary: dict[str, list[str] | str | None][source]

                                                                Dictionary containing all metadata for FHI-aims build.

                                                                -property n_atoms: int[source]
                                                                +property n_atoms: int[source]

                                                                The number of atoms for the material.

                                                                -property n_bands: int | None[source]
                                                                +property n_bands: int | None[source]

                                                                The number of Kohn-Sham states for the chunk.

                                                                -property n_electrons: int | None[source]
                                                                +property n_electrons: int | None[source]

                                                                The number of electrons for the chunk.

                                                                -property n_k_points: int | None[source]
                                                                +property n_k_points: int | None[source]

                                                                The number of k_ppoints for the calculation.

                                                                -property n_spins: int | None[source]
                                                                +property n_spins: int | None[source]

                                                                The number of spin channels for the chunk.

                                                                -property version_number: str[source]
                                                                +property version_number: str[source]

                                                                The commit hash for the FHI-aims version.

                                                                @@ -1668,7 +1665,7 @@

                                                                Submodules
                                                                -exception AimsParseError(message: str)[source]
                                                                +exception AimsParseError(message: str)[source]

                                                                Bases: Exception

                                                                Exception raised if an error occurs when parsing an Aims output file.

                                                                Initialize the error with the message, message.

                                                                @@ -1676,14 +1673,14 @@

                                                                Submodules
                                                                -exception ParseError[source]
                                                                +exception ParseError[source]

                                                                Bases: Exception

                                                                Parse error during reading of a file.

                                                                -check_convergence(chunks: list[AimsOutCalcChunk], non_convergence_ok: bool = False) bool[source]
                                                                +check_convergence(chunks: list[AimsOutCalcChunk], non_convergence_ok: bool = False) bool[source]

                                                                Check if the aims output file is for a converged calculation.

                                                                Parameters:
                                                                @@ -1702,7 +1699,7 @@

                                                                Submodules
                                                                -get_aims_out_chunks(content: str | TextIOWrapper, header_chunk: AimsOutHeaderChunk) Generator[source]
                                                                +get_aims_out_chunks(content: str | TextIOWrapper, header_chunk: AimsOutHeaderChunk) Generator[source]

                                                                Yield unprocessed chunks (header, lines) for each AimsOutChunk image.

                                                                Parameters:
                                                                @@ -1719,7 +1716,7 @@

                                                                Submodules
                                                                -get_header_chunk(content: str | TextIOWrapper) AimsOutHeaderChunk[source]
                                                                +get_header_chunk(content: str | TextIOWrapper) AimsOutHeaderChunk[source]

                                                                Get the header chunk for an output.

                                                                Parameters:
                                                                @@ -1733,7 +1730,7 @@

                                                                Submodules
                                                                -get_lines(content: str | TextIOWrapper) list[str][source]
                                                                +get_lines(content: str | TextIOWrapper) list[str][source]

                                                                Get a list of lines from a str or file of content.

                                                                Parameters:
                                                                @@ -1747,7 +1744,7 @@

                                                                Submodules
                                                                -read_aims_header_info(filename: str | Path) tuple[dict[str, None | list[str] | str], dict[str, Any]][source]
                                                                +read_aims_header_info(filename: str | Path) tuple[dict[str, None | list[str] | str], dict[str, Any]][source]

                                                                Read the FHI-aims header information.

                                                                Parameters:
                                                                @@ -1761,7 +1758,7 @@

                                                                Submodules
                                                                -read_aims_header_info_from_content(content: str) tuple[dict[str, list[str] | None | str], dict[str, Any]][source]
                                                                +read_aims_header_info_from_content(content: str) tuple[dict[str, list[str] | None | str], dict[str, Any]][source]

                                                                Read the FHI-aims header information.

                                                                Parameters:
                                                                @@ -1775,7 +1772,7 @@

                                                                Submodules
                                                                -read_aims_output(filename: str | Path, index: int | slice = -1, non_convergence_ok: bool = False) Structure | Molecule | Sequence[Structure | Molecule][source]
                                                                +read_aims_output(filename: str | Path, index: int | slice = -1, non_convergence_ok: bool = False) Structure | Molecule | Sequence[Structure | Molecule][source]

                                                                Import FHI-aims output files with all data available.

                                                                Includes all structures for relaxations and MD runs with FHI-aims

                                                                @@ -1794,7 +1791,7 @@

                                                                Submodules
                                                                -read_aims_output_from_content(content: str, index: int | slice = -1, non_convergence_ok: bool = False) Structure | Molecule | Sequence[Structure | Molecule][source]
                                                                +read_aims_output_from_content(content: str, index: int | slice = -1, non_convergence_ok: bool = False) Structure | Molecule | Sequence[Structure | Molecule][source]

                                                                Read and aims output file from the content of a file.

                                                                Parameters:
                                                                diff --git a/docs/pymatgen.io.aims.sets.html b/docs/pymatgen.io.aims.sets.html index 73ddeeb8264..38fab31cc4d 100644 --- a/docs/pymatgen.io.aims.sets.html +++ b/docs/pymatgen.io.aims.sets.html @@ -1,23 +1,23 @@ + + - + - pymatgen.io.aims.sets package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.io.aims.sets package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                - 2024.10.27 -
                                                                @@ -194,12 +191,12 @@

                                                                Submodules
                                                                -class AimsInputGenerator(user_params: dict[str, ~typing.Any] = <factory>, user_kpoints_settings: dict[str, ~typing.Any] = <factory>, use_structure_charge: bool = False)[source]
                                                                +class AimsInputGenerator(user_params: dict[str, ~typing.Any] = <factory>, user_kpoints_settings: dict[str, ~typing.Any] = <factory>, use_structure_charge: bool = False)[source]

                                                                Bases: InputGenerator

                                                                A class to generate Aims input sets.

                                                                -user_params[source]
                                                                +user_params[source]

                                                                Updates the default parameters for the FHI-aims calculator

                                                                @@ -211,7 +208,7 @@

                                                                Submodules
                                                                -user_kpoints_settings[source]
                                                                +user_kpoints_settings[source]

                                                                The settings used to create the k-grid parameters for FHI-aims

                                                                @@ -223,7 +220,7 @@

                                                                Submodules
                                                                -use_structure_charge[source]
                                                                +use_structure_charge[source]

                                                                If set to True, then the overall charge of the structure (structure.charge) is used to set the charge variable in the control.in. Default is False.

                                                                @@ -236,7 +233,7 @@

                                                                Submodules
                                                                -d2k(structure: Structure, kpt_density: float | tuple[float, float, float] = 5.0, even: bool = True) Iterable[float][source]
                                                                +d2k(structure: Structure, kpt_density: float | tuple[float, float, float] = 5.0, even: bool = True) Iterable[float][source]

                                                                Convert k-point density to Monkhorst-Pack grid size.

                                                                inspired by [ase.calculators.calculator.kptdensity2monkhorstpack]

                                                                @@ -260,7 +257,7 @@

                                                                Submodules
                                                                -static d2k_recip_cell(recip_cell: np.ndarray, pbc: Sequence[bool], kpt_density: float | tuple[float, float, float] = 5.0, even: bool = True) Sequence[int][source]
                                                                +static d2k_recip_cell(recip_cell: np.ndarray, pbc: Sequence[bool], kpt_density: float | tuple[float, float, float] = 5.0, even: bool = True) Sequence[int][source]

                                                                Convert k-point density to Monkhorst-Pack grid size.

                                                                Parameters:
                                                                @@ -286,7 +283,7 @@

                                                                Submodules
                                                                -get_input_set(structure: Structure | Molecule | None = None, prev_dir: PathLike | None = None, properties: list[str] | None = None) AimsInputSet[source]
                                                                +get_input_set(structure: Structure | Molecule | None = None, prev_dir: PathLike | None = None, properties: list[str] | None = None) AimsInputSet[source]

                                                                Generate an AimsInputSet object.

                                                                Parameters:
                                                                @@ -308,7 +305,7 @@

                                                                Submodules
                                                                -get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[str, Any][source]
                                                                +get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[str, Any][source]

                                                                Update the parameters for a given calculation type.

                                                                Parameters:
                                                                @@ -328,7 +325,7 @@

                                                                Submodules
                                                                -k2d(structure: Structure, k_grid: ndarray[int])[source]
                                                                +k2d(structure: Structure, k_grid: ndarray[int])[source]

                                                                Generate the kpoint density in each direction from given k_grid.

                                                                Parameters:
                                                                @@ -350,24 +347,24 @@

                                                                Submodules
                                                                -use_structure_charge: bool = False[source]
                                                                +use_structure_charge: bool = False[source]

                                                                -user_kpoints_settings: dict[str, Any][source]
                                                                +user_kpoints_settings: dict[str, Any][source]
                                                                -user_params: dict[str, Any][source]
                                                                +user_params: dict[str, Any][source]

                                                                -class AimsInputSet(parameters: dict[str, Any], structure: Structure | Molecule, properties: Sequence[str] = ('energy', 'free_energy'))[source]
                                                                +class AimsInputSet(parameters: dict[str, Any], structure: Structure | Molecule, properties: Sequence[str] = ('energy', 'free_energy'))[source]

                                                                Bases: InputSet

                                                                A class to represent a set of Aims inputs.

                                                                Construct the AimsInputSet.

                                                                @@ -383,19 +380,19 @@

                                                                Submodules
                                                                -property control_in: str | slice | InputFile[source]
                                                                +property control_in: str | slice | InputFile[source]

                                                                The control.in file contents.

                                                                -property geometry_in: str | slice | InputFile[source]
                                                                +property geometry_in: str | slice | InputFile[source]

                                                                The geometry.in file contents.

                                                                -get_input_files() tuple[str, str][source]
                                                                +get_input_files() tuple[str, str][source]

                                                                Get the input file contents for the calculation.

                                                                Returns:
                                                                @@ -409,13 +406,13 @@

                                                                Submodules
                                                                -property params_json: str | slice | InputFile[source]
                                                                +property params_json: str | slice | InputFile[source]

                                                                The JSON representation of the parameters dict.

                                                                -remove_parameters(keys: Iterable[str] | str, strict: bool = True) dict[str, Any][source]
                                                                +remove_parameters(keys: Iterable[str] | str, strict: bool = True) dict[str, Any][source]

                                                                Remove the aims parameters listed in keys.

                                                                This removes the aims variables from the parameters object.

                                                                @@ -438,7 +435,7 @@

                                                                Submodules
                                                                -set_parameters(*args, **kwargs) dict[str, Any][source]
                                                                +set_parameters(*args, **kwargs) dict[str, Any][source]

                                                                Set the parameters object for the AimsTemplate.

                                                                This sets the parameters object that is passed to an AimsTemplate and resets the control.in file

                                                                @@ -457,7 +454,7 @@

                                                                Submodules
                                                                -set_structure(structure: Structure | Molecule)[source]
                                                                +set_structure(structure: Structure | Molecule)[source]

                                                                Set the structure object for this input set.

                                                                Parameters:
                                                                @@ -471,7 +468,7 @@

                                                                Submodules
                                                                -recursive_update(dct: dict, up: dict) dict[source]
                                                                +recursive_update(dct: dict, up: dict) dict[source]

                                                                Update a dictionary recursively and return it.

                                                                Parameters:
                                                                @@ -499,12 +496,12 @@

                                                                Submodules
                                                                -class BandStructureSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'bands', k_point_density: float = 20)[source]
                                                                +class BandStructureSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'bands', k_point_density: float = 20)[source]

                                                                Bases: AimsInputGenerator

                                                                A generator for the band structure calculation input set.

                                                                -calc_type[source]
                                                                +calc_type[source]

                                                                The type of calculations

                                                                Type:
                                                                @@ -515,7 +512,7 @@

                                                                Submodules
                                                                -k_point_density[source]
                                                                +k_point_density[source]

                                                                The number of k_points per angstrom

                                                                Type:
                                                                @@ -526,12 +523,12 @@

                                                                Submodules
                                                                -calc_type: str = 'bands'[source]
                                                                +calc_type: str = 'bands'[source]

                                                                -get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[str, Sequence[str]][source]
                                                                +get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[str, Sequence[str]][source]

                                                                Get the parameter updates for the calculation.

                                                                Parameters:
                                                                @@ -551,19 +548,19 @@

                                                                Submodules
                                                                -k_point_density: float = 20[source]
                                                                +k_point_density: float = 20[source]

                                                                -class GWSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'GW', k_point_density: float = 20)[source]
                                                                +class GWSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'GW', k_point_density: float = 20)[source]

                                                                Bases: AimsInputGenerator

                                                                A generator for the input set for calculations employing GW self-energy correction.

                                                                -calc_type[source]
                                                                +calc_type[source]

                                                                The type of calculations

                                                                Type:
                                                                @@ -574,7 +571,7 @@

                                                                Submodules
                                                                -k_point_density[source]
                                                                +k_point_density[source]

                                                                The number of k_points per angstrom

                                                                Type:
                                                                @@ -585,12 +582,12 @@

                                                                Submodules
                                                                -calc_type: str = 'GW'[source]
                                                                +calc_type: str = 'GW'[source]

                                                                -get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[str, Any][source]
                                                                +get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[str, Any][source]

                                                                Get the parameter updates for the calculation.

                                                                Parameters:
                                                                @@ -610,14 +607,14 @@

                                                                Submodules
                                                                -k_point_density: float = 20[source]
                                                                +k_point_density: float = 20[source]

                                                                -prepare_band_input(structure: Structure, density: float = 20)[source]
                                                                +prepare_band_input(structure: Structure, density: float = 20)[source]

                                                                Prepare the band information needed for the FHI-aims control.in file.

                                                                Parameters:
                                                                @@ -635,7 +632,7 @@

                                                                Submodules
                                                                -class MDSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'md', ensemble: str = 'nve', ensemble_specs: dict[str, Any] = <factory>, temp: float | None = None, time: float = 5.0, time_step: float = 0.001, init_velocities: bool = True)[source]
                                                                +class MDSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'md', ensemble: str = 'nve', ensemble_specs: dict[str, Any] = <factory>, temp: float | None = None, time: float = 5.0, time_step: float = 0.001, init_velocities: bool = True)[source]

                                                                Bases: AimsInputGenerator

                                                                A class for generating FHI-aims input sets for molecular dynamics calculations.

                                                                @@ -657,22 +654,22 @@

                                                                Submodules
                                                                -calc_type: str = 'md'[source]
                                                                +calc_type: str = 'md'[source]

                                                                -ensemble: str = 'nve'[source]
                                                                +ensemble: str = 'nve'[source]
                                                                -ensemble_specs: dict[str, Any][source]
                                                                +ensemble_specs: dict[str, Any][source]
                                                                -get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[source]
                                                                +get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[source]

                                                                Get the parameter updates for the calculation.

                                                                Parameters:
                                                                @@ -693,34 +690,34 @@

                                                                Submodules
                                                                -init_velocities: bool = True[source]
                                                                +init_velocities: bool = True[source]

                                                                -temp: float | None = None[source]
                                                                +temp: float | None = None[source]
                                                                -time: float = 5.0[source]
                                                                +time: float = 5.0[source]
                                                                -time_step: float = 0.001[source]
                                                                +time_step: float = 0.001[source]
                                                                -class RelaxSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'relaxation', relax_cell: bool = True, max_force: float = 0.001, method: str = 'trm')[source]
                                                                +class RelaxSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'relaxation', relax_cell: bool = True, max_force: float = 0.001, method: str = 'trm')[source]

                                                                Bases: AimsInputGenerator

                                                                Generate FHI-aims relax sets for optimizing internal coordinates and lattice params.

                                                                -calc_type[source]
                                                                +calc_type[source]

                                                                The type of calculation

                                                                Type:
                                                                @@ -731,7 +728,7 @@

                                                                Submodules
                                                                -relax_cell[source]
                                                                +relax_cell[source]

                                                                If True then relax the unit cell from the structure

                                                                Type:
                                                                @@ -742,7 +739,7 @@

                                                                Submodules
                                                                -max_force[source]
                                                                +max_force[source]

                                                                Maximum allowed force in the calculation

                                                                Type:
                                                                @@ -753,7 +750,7 @@

                                                                Submodules
                                                                -method[source]
                                                                +method[source]

                                                                Method used for the geometry optimization

                                                                Type:
                                                                @@ -764,12 +761,12 @@

                                                                Submodules
                                                                -calc_type: str = 'relaxation'[source]
                                                                +calc_type: str = 'relaxation'[source]

                                                                -get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[source]
                                                                +get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[source]

                                                                Get the parameter updates for the calculation.

                                                                Parameters:
                                                                @@ -789,29 +786,29 @@

                                                                Submodules
                                                                -max_force: float = 0.001[source]
                                                                +max_force: float = 0.001[source]

                                                                -method: str = 'trm'[source]
                                                                +method: str = 'trm'[source]
                                                                -relax_cell: bool = True[source]
                                                                +relax_cell: bool = True[source]
                                                                -class SocketIOSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'multi_scf', host: str = 'localhost', port: int = 12345)[source]
                                                                +class SocketIOSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'multi_scf', host: str = 'localhost', port: int = 12345)[source]

                                                                Bases: AimsInputGenerator

                                                                Generate FHI-aims input sets for running with the socket.

                                                                -calc_type[source]
                                                                +calc_type[source]

                                                                The type of calculation

                                                                Type:
                                                                @@ -822,7 +819,7 @@

                                                                Submodules
                                                                -host[source]
                                                                +host[source]

                                                                The hostname for the server the socket is on

                                                                Type:
                                                                @@ -833,7 +830,7 @@

                                                                Submodules
                                                                -port[source]
                                                                +port[source]

                                                                The port the socket server is listening on

                                                                Type:
                                                                @@ -844,12 +841,12 @@

                                                                Submodules
                                                                -calc_type: str = 'multi_scf'[source]
                                                                +calc_type: str = 'multi_scf'[source]

                                                                -get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[source]
                                                                +get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[source]

                                                                Get the parameter updates for the calculation.

                                                                Parameters:
                                                                @@ -869,24 +866,24 @@

                                                                Submodules
                                                                -host: str = 'localhost'[source]
                                                                +host: str = 'localhost'[source]

                                                                -port: int = 12345[source]
                                                                +port: int = 12345[source]
                                                                -class StaticSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'static')[source]
                                                                +class StaticSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'static')[source]

                                                                Bases: AimsInputGenerator

                                                                Common class for ground-state generators.

                                                                -calc_type[source]
                                                                +calc_type[source]

                                                                The type of calculation

                                                                Type:
                                                                @@ -897,12 +894,12 @@

                                                                Submodules
                                                                -calc_type: str = 'static'[source]
                                                                +calc_type: str = 'static'[source]

                                                                -get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[str, Any][source]
                                                                +get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[str, Any][source]

                                                                Get the parameter updates for the calculation.

                                                                Parameters:
                                                                @@ -928,12 +925,12 @@

                                                                Submodules
                                                                -class MagneticRelaxSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'relaxation', relax_cell: bool = True, max_force: float = 0.001, method: str = 'trm')[source]
                                                                +class MagneticRelaxSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'relaxation', relax_cell: bool = True, max_force: float = 0.001, method: str = 'trm')[source]

                                                                Bases: RelaxSetGenerator

                                                                Generate FHI-aims relax sets for optimizing internal coordinates and lattice params.

                                                                -calc_type[source]
                                                                +calc_type[source]

                                                                The type of calculation

                                                                Type:
                                                                @@ -944,7 +941,7 @@

                                                                Submodules
                                                                -relax_cell[source]
                                                                +relax_cell[source]

                                                                If True then relax the unit cell from the structure

                                                                Type:
                                                                @@ -955,7 +952,7 @@

                                                                Submodules
                                                                -max_force[source]
                                                                +max_force[source]

                                                                Maximum allowed force in the calculation

                                                                Type:
                                                                @@ -966,7 +963,7 @@

                                                                Submodules
                                                                -method[source]
                                                                +method[source]

                                                                Method used for the geometry optimization

                                                                Type:
                                                                @@ -977,7 +974,7 @@

                                                                Submodules
                                                                -get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[source]
                                                                +get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[source]

                                                                Get the parameter updates for the calculation.

                                                                Parameters:
                                                                @@ -999,12 +996,12 @@

                                                                Submodules
                                                                -class MagneticStaticSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'static')[source]
                                                                +class MagneticStaticSetGenerator(user_params: dict[str, Any] = <factory>, user_kpoints_settings: dict[str, Any] = <factory>, use_structure_charge: bool = False, calc_type: str = 'static')[source]

                                                                Bases: StaticSetGenerator

                                                                Common class for ground-state generators.

                                                                -calc_type[source]
                                                                +calc_type[source]

                                                                The type of calculation

                                                                Type:
                                                                @@ -1015,12 +1012,12 @@

                                                                Submodules
                                                                -calc_type: str = 'static'[source]
                                                                +calc_type: str = 'static'[source]

                                                                -get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[str, Any][source]
                                                                +get_parameter_updates(structure: Structure | Molecule, prev_parameters: dict[str, Any]) dict[str, Any][source]

                                                                Get the parameter updates for the calculation.

                                                                Parameters:
                                                                diff --git a/docs/pymatgen.io.cp2k.html b/docs/pymatgen.io.cp2k.html index 4735fd0d37d..34812295f23 100644 --- a/docs/pymatgen.io.cp2k.html +++ b/docs/pymatgen.io.cp2k.html @@ -1,23 +1,23 @@ + + - + - pymatgen.io.cp2k package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.io.cp2k package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                - 2024.10.27 -
                                                                @@ -449,12 +446,12 @@

                                                                Submodules
                                                                -class AtomicMetadata(info: BasisInfo | PotentialInfo | None = None, element: Element | None = None, potential: Literal['All Electron', 'Pseudopotential'] | None = None, name: str | None = None, alias_names: list = <factory>, filename: str | None = None, version: str | None = None)[source]
                                                                +class AtomicMetadata(info: BasisInfo | PotentialInfo | None = None, element: Element | None = None, potential: Literal['All Electron', 'Pseudopotential'] | None = None, name: str | None = None, alias_names: list = <factory>, filename: str | None = None, version: str | None = None)[source]

                                                                Bases: MSONable

                                                                Metadata for basis sets and potentials in CP2K.

                                                                -info[source]
                                                                +info[source]

                                                                Info about this object

                                                                Type:
                                                                @@ -465,7 +462,7 @@

                                                                Submodules
                                                                -element[source]
                                                                +element[source]

                                                                Element for this object

                                                                Type:
                                                                @@ -476,7 +473,7 @@

                                                                Submodules
                                                                -potential[source]
                                                                +potential[source]

                                                                The potential for this object

                                                                Type:
                                                                @@ -487,7 +484,7 @@

                                                                Submodules
                                                                -name[source]
                                                                +name[source]

                                                                Name of the object

                                                                Type:
                                                                @@ -498,7 +495,7 @@

                                                                Submodules
                                                                -alias_names[source]
                                                                +alias_names[source]

                                                                Optional aliases

                                                                Type:
                                                                @@ -509,7 +506,7 @@

                                                                Submodules
                                                                -filename[source]
                                                                +filename[source]

                                                                Name of the file containing this object

                                                                Type:
                                                                @@ -520,7 +517,7 @@

                                                                Submodules
                                                                -version[source]
                                                                +version[source]

                                                                Version

                                                                Type:
                                                                @@ -531,49 +528,49 @@

                                                                Submodules
                                                                -alias_names: list[source]
                                                                +alias_names: list[source]

                                                                -element: Element | None = None[source]
                                                                +element: Element | None = None[source]
                                                                -filename: str | None = None[source]
                                                                +filename: str | None = None[source]
                                                                -get_hash() str[source]
                                                                +get_hash() str[source]

                                                                Get a hash of this object.

                                                                -get_str() str[source]
                                                                +get_str() str[source]

                                                                Get string representation.

                                                                -info: BasisInfo | PotentialInfo | None = None[source]
                                                                +info: BasisInfo | PotentialInfo | None = None[source]
                                                                -name: str | None = None[source]
                                                                +name: str | None = None[source]
                                                                -potential: Literal['All Electron', 'Pseudopotential'] | None = None[source]
                                                                +potential: Literal['All Electron', 'Pseudopotential'] | None = None[source]
                                                                -softmatch(other)[source]
                                                                +softmatch(other)[source]

                                                                Soft matching to see if a desired basis/potential matches requirements.

                                                                Does soft matching on the “info” attribute first. Then soft matches against the element and name/aliases.

                                                                @@ -581,14 +578,14 @@

                                                                Submodules
                                                                -version: str | None = None[source]
                                                                +version: str | None = None[source]

                                                                -class BandStructure(kpoint_sets: Sequence[KpointSet], filename: str = 'BAND.bs', added_mos: int = -1, keywords: dict | None = None, subsections: dict | None = None)[source]
                                                                +class BandStructure(kpoint_sets: Sequence[KpointSet], filename: str = 'BAND.bs', added_mos: int = -1, keywords: dict | None = None, subsections: dict | None = None)[source]

                                                                Bases: Section

                                                                Specify high symmetry paths for outputting the band structure in CP2K.

                                                                @@ -604,7 +601,7 @@

                                                                Submodules
                                                                -classmethod from_kpoints(kpoints: VaspKpoints, kpoints_line_density: int = 20) Self[source]
                                                                +classmethod from_kpoints(kpoints: VaspKpoints, kpoints_line_density: int = 20) Self[source]

                                                                Initialize band structure section from a line-mode Kpoint object.

                                                                Parameters:
                                                                @@ -622,7 +619,7 @@

                                                                Submodules
                                                                -class Band_Structure(kpoint_sets: Sequence[KpointSet], filename: str = 'BAND.bs', added_mos: int = -1, keywords: dict | None = None, subsections: dict | None = None)[source]
                                                                +class Band_Structure(kpoint_sets: Sequence[KpointSet], filename: str = 'BAND.bs', added_mos: int = -1, keywords: dict | None = None, subsections: dict | None = None)[source]

                                                                Bases: BandStructure

                                                                Parameters:
                                                                @@ -639,12 +636,12 @@

                                                                Submodules
                                                                -class BasisFile(objects: Sequence | None = None)[source]
                                                                +class BasisFile(objects: Sequence | None = None)[source]

                                                                Bases: DataFile

                                                                Data file for basis sets only.

                                                                -classmethod from_str(string: str) Self[source]
                                                                +classmethod from_str(string: str) Self[source]

                                                                Initialize from a string representation.

                                                                @@ -652,12 +649,12 @@

                                                                Submodules
                                                                -class BasisInfo(electrons: int | None = None, core: int | None = None, valence: int | None = None, polarization: int | None = None, diffuse: int | None = None, cc: bool | None = False, pc: bool | None = False, sr: bool | None = False, molopt: bool | None = False, admm: bool | None = False, lri: bool | None = False, contracted: bool | None = None, xc: str | None = None)[source]
                                                                +class BasisInfo(electrons: int | None = None, core: int | None = None, valence: int | None = None, polarization: int | None = None, diffuse: int | None = None, cc: bool | None = False, pc: bool | None = False, sr: bool | None = False, molopt: bool | None = False, admm: bool | None = False, lri: bool | None = False, contracted: bool | None = None, xc: str | None = None)[source]

                                                                Bases: MSONable

                                                                Summary info about a basis set.

                                                                -electrons[source]
                                                                +electrons[source]

                                                                Number of electrons

                                                                Type:
                                                                @@ -668,7 +665,7 @@

                                                                Submodules
                                                                -core[source]
                                                                +core[source]

                                                                Number of basis functions per core electron

                                                                Type:
                                                                @@ -679,7 +676,7 @@

                                                                Submodules
                                                                -valence[source]
                                                                +valence[source]

                                                                Number of basis functions per valence electron OR number of exp if it is a FIT formatted admm basis

                                                                @@ -691,7 +688,7 @@

                                                                Submodules
                                                                -polarization[source]
                                                                +polarization[source]

                                                                Number of polarization functions

                                                                Type:
                                                                @@ -702,7 +699,7 @@

                                                                Submodules
                                                                -diffuse[source]
                                                                +diffuse[source]

                                                                Number of added, diffuse/augmentation functions

                                                                Type:
                                                                @@ -713,7 +710,7 @@

                                                                Submodules
                                                                -cc[source]
                                                                +cc[source]

                                                                Correlation consistent

                                                                Type:
                                                                @@ -724,7 +721,7 @@

                                                                Submodules
                                                                -pc[source]
                                                                +pc[source]

                                                                Polarization consistent

                                                                Type:
                                                                @@ -735,7 +732,7 @@

                                                                Submodules
                                                                -sr[source]
                                                                +sr[source]

                                                                Short-range optimized

                                                                Type:
                                                                @@ -746,7 +743,7 @@

                                                                Submodules
                                                                -molopt[source]
                                                                +molopt[source]

                                                                Optimized for molecules/solids

                                                                Type:
                                                                @@ -757,7 +754,7 @@

                                                                Submodules
                                                                -admm[source]
                                                                +admm[source]

                                                                Whether this is an auxiliary basis set for ADMM

                                                                Type:
                                                                @@ -768,7 +765,7 @@

                                                                Submodules
                                                                -lri[source]
                                                                +lri[source]

                                                                Whether this is a local resolution of identity auxiliary basis

                                                                Type:
                                                                @@ -779,7 +776,7 @@

                                                                Submodules
                                                                -contracted[source]
                                                                +contracted[source]

                                                                Whether this basis set is contracted

                                                                Type:
                                                                @@ -790,7 +787,7 @@

                                                                Submodules
                                                                -xc[source]
                                                                +xc[source]

                                                                Exchange correlation functional used for creating this potential

                                                                Type:
                                                                @@ -801,87 +798,87 @@

                                                                Submodules
                                                                -admm: bool | None = False[source]
                                                                +admm: bool | None = False[source]

                                                                -cc: bool | None = False[source]
                                                                +cc: bool | None = False[source]
                                                                -contracted: bool | None = None[source]
                                                                +contracted: bool | None = None[source]
                                                                -core: int | None = None[source]
                                                                +core: int | None = None[source]
                                                                -diffuse: int | None = None[source]
                                                                +diffuse: int | None = None[source]
                                                                -electrons: int | None = None[source]
                                                                +electrons: int | None = None[source]
                                                                -classmethod from_str(string: str) Self[source]
                                                                +classmethod from_str(string: str) Self[source]

                                                                Get summary info from a string.

                                                                -lri: bool | None = False[source]
                                                                +lri: bool | None = False[source]
                                                                -molopt: bool | None = False[source]
                                                                +molopt: bool | None = False[source]
                                                                -pc: bool | None = False[source]
                                                                +pc: bool | None = False[source]
                                                                -polarization: int | None = None[source]
                                                                +polarization: int | None = None[source]
                                                                -softmatch(other)[source]
                                                                +softmatch(other)[source]

                                                                Soft matching to see if two basis sets match.

                                                                Will only match those attributes which are defined for this basis info object (one way checking)

                                                                -sr: bool | None = False[source]
                                                                +sr: bool | None = False[source]
                                                                -valence: int | None = None[source]
                                                                +valence: int | None = None[source]
                                                                -xc: str | None = None[source]
                                                                +xc: str | None = None[source]

                                                                -class BrokenSymmetry(l_alpha: Sequence = (-1,), n_alpha: Sequence = (0,), nel_alpha: Sequence = (-1,), l_beta: Sequence = (-1,), n_beta: Sequence = (0,), nel_beta: Sequence = (-1,))[source]
                                                                +class BrokenSymmetry(l_alpha: Sequence = (-1,), n_alpha: Sequence = (0,), nel_alpha: Sequence = (-1,), l_beta: Sequence = (-1,), n_beta: Sequence = (0,), nel_beta: Sequence = (-1,))[source]

                                                                Bases: Section

                                                                Define the required atomic orbital occupation assigned in initialization of the density matrix, by adding or subtracting electrons from specific @@ -903,7 +900,7 @@

                                                                Submodules
                                                                -classmethod from_el(el: Element, oxi_state: int = 0, spin: int = 0) Self[source]
                                                                +classmethod from_el(el: Element, oxi_state: int = 0, spin: int = 0) Self[source]

                                                                Create section from element, oxidation state, and spin.

                                                                @@ -911,7 +908,7 @@

                                                                Submodules
                                                                -class Cell(lattice: Lattice, keywords: dict | None = None, **kwargs)[source]
                                                                +class Cell(lattice: Lattice, keywords: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls the cell/lattice parameters for the simulation.

                                                                Initialize the cell section.

                                                                @@ -927,7 +924,7 @@

                                                                Submodules
                                                                -class Coord(structure: Structure | Molecule, aliases: dict | None = None, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class Coord(structure: Structure | Molecule, aliases: dict | None = None, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Specify the coordinates of the atoms using a pymatgen structure object.

                                                                @@ -945,7 +942,7 @@

                                                                Submodules
                                                                -class Cp2kInput(name: str = 'CP2K_INPUT', subsections: dict | None = None, **kwargs)[source]
                                                                +class Cp2kInput(name: str = 'CP2K_INPUT', subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Special instance of ‘Section’ class that is meant to represent the overall CP2K input. Distinguishes itself from Section by overriding get_str() to not print this section’s @@ -953,31 +950,31 @@

                                                                Submodules
                                                                -classmethod from_file(filename: str | Path) Self[source]
                                                                +classmethod from_file(filename: str | Path) Self[source]

                                                                Initialize from a file.

                                                                -classmethod from_lines(lines: list | tuple) Self[source]
                                                                +classmethod from_lines(lines: list | tuple) Self[source]

                                                                Helper method to read lines of file.

                                                                -classmethod from_str(s: str) Self[source]
                                                                +classmethod from_str(s: str) Self[source]

                                                                Initialize from a string.

                                                                -get_str()[source]
                                                                +get_str()[source]

                                                                Get string representation of the Cp2kInput.

                                                                -write_file(input_filename: str = 'cp2k.inp', output_dir: str = '.', make_dir_if_not_present: bool = True)[source]
                                                                +write_file(input_filename: str = 'cp2k.inp', output_dir: str = '.', make_dir_if_not_present: bool = True)[source]

                                                                Write input to a file.

                                                                Parameters:
                                                                @@ -994,7 +991,7 @@

                                                                Submodules
                                                                -class DOS(ndigits: int = 6, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class DOS(ndigits: int = 6, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls printing of the density of states.

                                                                Initialize the DOS section.

                                                                @@ -1012,35 +1009,35 @@

                                                                Submodules
                                                                -class DataFile(objects: Sequence | None = None)[source]
                                                                +class DataFile(objects: Sequence | None = None)[source]

                                                                Bases: MSONable

                                                                A data file for a CP2K calc.

                                                                -classmethod from_file(filename) Self[source]
                                                                +classmethod from_file(filename) Self[source]

                                                                Load from a file, reserved for child classes.

                                                                -abstract classmethod from_str(string: str) None[source]
                                                                +abstract classmethod from_str(string: str) None[source]

                                                                Initialize from a string.

                                                                -get_str() str[source]
                                                                +get_str() str[source]

                                                                Get string representation.

                                                                -objects: Sequence | None = None[source]
                                                                +objects: Sequence | None = None[source]
                                                                -write_file(filename)[source]
                                                                +write_file(filename)[source]

                                                                Write to a file.

                                                                @@ -1048,7 +1045,7 @@

                                                                Submodules
                                                                -class Davidson(new_prec_each: int = 20, preconditioner: str = 'FULL_SINGLE_INVERSE', keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class Davidson(new_prec_each: int = 20, preconditioner: str = 'FULL_SINGLE_INVERSE', keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Parameters for davidson diagonalization.

                                                                @@ -1084,7 +1081,7 @@

                                                                Submodules
                                                                -class Dft(basis_set_filenames: Sequence[str] = ('BASIS_MOLOPT',), potential_filename: str = 'GTH_POTENTIALS', uks: bool = True, wfn_restart_file_name: str | None = None, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class Dft(basis_set_filenames: Sequence[str] = ('BASIS_MOLOPT',), potential_filename: str = 'GTH_POTENTIALS', uks: bool = True, wfn_restart_file_name: str | None = None, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls the DFT parameters in CP2K.

                                                                Initialize the DFT section.

                                                                @@ -1107,7 +1104,7 @@

                                                                Submodules
                                                                -class DftPlusU(eps_u_ramping=1e-05, init_u_ramping_each_scf=False, l=-1, u_minus_j=0, u_ramping=0, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class DftPlusU(eps_u_ramping=1e-05, init_u_ramping_each_scf=False, l=-1, u_minus_j=0, u_ramping=0, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls DFT+U for an atom kind.

                                                                Initialize the DftPlusU section.

                                                                @@ -1128,7 +1125,7 @@

                                                                Submodules
                                                                -class Diagonalization(eps_adapt: float = 0, eps_iter: float = 1e-08, eps_jacobi: float = 0, jacobi_threshold: float = 1e-07, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class Diagonalization(eps_adapt: float = 0, eps_iter: float = 1e-08, eps_jacobi: float = 0, jacobi_threshold: float = 1e-07, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls diagonalization settings (if using traditional diagonalization).

                                                                Initialize the diagonalization section.

                                                                @@ -1136,7 +1133,7 @@

                                                                Submodules
                                                                -class EDensityCube(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class EDensityCube(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls printing of the electron density cube file.

                                                                Basic object representing a CP2K Section. Sections activate different parts of the @@ -1179,7 +1176,7 @@

                                                                Submodules
                                                                -class E_Density_Cube(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class E_Density_Cube(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: EDensityCube

                                                                Basic object representing a CP2K Section. Sections activate different parts of the calculation. For example, FORCE_EVAL section will activate CP2K’s ability to calculate @@ -1221,7 +1218,7 @@

                                                                Submodules
                                                                -class ForceEval(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class ForceEval(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls the calculation of energy and forces in CP2K.

                                                                Initialize the ForceEval section.

                                                                @@ -1229,12 +1226,12 @@

                                                                Submodules
                                                                -class GaussianTypeOrbitalBasisSet(info: BasisInfo | None = None, element: Element | None = None, potential: Literal['All Electron', 'Pseudopotential'] | None = None, name: str | None = None, alias_names: list = <factory>, filename: str | None = None, version: str | None = None, nset: int | None = None, n: list[int] | None = None, lmax: list[int] | None = None, lmin: list[int] | None = None, nshell: list[dict[int, int]] | None = None, exponents: list[list[float]] | None = None, coefficients: list[dict[int, dict[int, dict[int, float]]]] | None = None)[source]
                                                                +class GaussianTypeOrbitalBasisSet(info: BasisInfo | None = None, element: Element | None = None, potential: Literal['All Electron', 'Pseudopotential'] | None = None, name: str | None = None, alias_names: list = <factory>, filename: str | None = None, version: str | None = None, nset: int | None = None, n: list[int] | None = None, lmax: list[int] | None = None, lmin: list[int] | None = None, nshell: list[dict[int, int]] | None = None, exponents: list[list[float]] | None = None, coefficients: list[dict[int, dict[int, dict[int, float]]]] | None = None)[source]

                                                                Bases: AtomicMetadata

                                                                Model definition of a GTO basis set.

                                                                -info[source]
                                                                +info[source]

                                                                Cardinality of this basis

                                                                Type:
                                                                @@ -1245,7 +1242,7 @@

                                                                Submodules
                                                                -nset[source]
                                                                +nset[source]

                                                                Number of exponent sets

                                                                Type:
                                                                @@ -1256,7 +1253,7 @@

                                                                Submodules
                                                                -n[source]
                                                                +n[source]

                                                                Principle quantum number for each set

                                                                Type:
                                                                @@ -1267,7 +1264,7 @@

                                                                Submodules
                                                                -lmax[source]
                                                                +lmax[source]

                                                                Maximum angular momentum quantum number for each set

                                                                Type:
                                                                @@ -1278,7 +1275,7 @@

                                                                Submodules
                                                                -lmin[source]
                                                                +lmin[source]

                                                                Minimum angular momentum quantum number for each set

                                                                Type:
                                                                @@ -1289,7 +1286,7 @@

                                                                Submodules
                                                                -nshell[source]
                                                                +nshell[source]

                                                                Number of shells for angular momentum l for each set

                                                                Type:
                                                                @@ -1300,7 +1297,7 @@

                                                                Submodules
                                                                -exponents[source]
                                                                +exponents[source]

                                                                Exponents for each set

                                                                Type:
                                                                @@ -1311,7 +1308,7 @@

                                                                Submodules
                                                                -coefficients[source]
                                                                +coefficients[source]

                                                                Contraction coefficients for each set. Dict[exp->l->shell]

                                                                Type:
                                                                @@ -1322,73 +1319,73 @@

                                                                Submodules
                                                                -coefficients: list[dict[int, dict[int, dict[int, float]]]] | None = None[source]
                                                                +coefficients: list[dict[int, dict[int, dict[int, float]]]] | None = None[source]

                                                                -exponents: list[list[float]] | None = None[source]
                                                                +exponents: list[list[float]] | None = None[source]
                                                                -classmethod from_str(string: str) Self[source]
                                                                +classmethod from_str(string: str) Self[source]

                                                                Read from standard CP2K GTO formatted string.

                                                                -get_keyword() Keyword[source]
                                                                +get_keyword() Keyword[source]

                                                                Convert basis to keyword object.

                                                                -get_str() str[source]
                                                                +get_str() str[source]

                                                                Get standard CP2K GTO formatted string.

                                                                -info: BasisInfo | None = None[source]
                                                                +info: BasisInfo | None = None[source]
                                                                -lmax: list[int] | None = None[source]
                                                                +lmax: list[int] | None = None[source]
                                                                -lmin: list[int] | None = None[source]
                                                                +lmin: list[int] | None = None[source]
                                                                -n: list[int] | None = None[source]
                                                                +n: list[int] | None = None[source]
                                                                -property nexp[source]
                                                                +property nexp[source]

                                                                Number of exponents.

                                                                -nset: int | None = None[source]
                                                                +nset: int | None = None[source]
                                                                -nshell: list[dict[int, int]] | None = None[source]
                                                                +nshell: list[dict[int, int]] | None = None[source]

                                                                -class Global(project_name: str = 'CP2K', run_type: str = 'ENERGY_FORCE', keywords: dict | None = None, **kwargs)[source]
                                                                +class Global(project_name: str = 'CP2K', run_type: str = 'ENERGY_FORCE', keywords: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls ‘global’ settings for CP2K execution such as RUN_TYPE and PROJECT_NAME.

                                                                Initialize the global section.

                                                                @@ -1405,12 +1402,12 @@

                                                                Submodules
                                                                -class GthPotential(info: PotentialInfo = None, element: Element | None = None, potential: Literal['All Electron', 'Pseudopotential'] | None = None, name: str | None = None, alias_names: list = <factory>, filename: str | None = None, version: str | None = None, n_elecs: dict[int, int] | None = None, r_loc: float | None = None, nexp_ppl: int | None = None, c_exp_ppl: Sequence | None = None, radii: dict[int, float] | None = None, nprj: int | None = None, nprj_ppnl: dict[int, int] | None = None, hprj_ppnl: dict[int, dict[int, dict[int, float]]] | None = None)[source]
                                                                +class GthPotential(info: PotentialInfo = None, element: Element | None = None, potential: Literal['All Electron', 'Pseudopotential'] | None = None, name: str | None = None, alias_names: list = <factory>, filename: str | None = None, version: str | None = None, n_elecs: dict[int, int] | None = None, r_loc: float | None = None, nexp_ppl: int | None = None, c_exp_ppl: Sequence | None = None, radii: dict[int, float] | None = None, nprj: int | None = None, nprj_ppnl: dict[int, int] | None = None, hprj_ppnl: dict[int, dict[int, dict[int, float]]] | None = None)[source]

                                                                Bases: AtomicMetadata

                                                                Representation of GTH-type (pseudo)potential.

                                                                -info[source]
                                                                +info[source]

                                                                Info about this potential

                                                                Type:
                                                                @@ -1421,7 +1418,7 @@

                                                                Submodules
                                                                -n_elecs[source]
                                                                +n_elecs[source]

                                                                Number of electrons for each quantum number

                                                                Type:
                                                                @@ -1432,7 +1429,7 @@

                                                                Submodules
                                                                -r_loc[source]
                                                                +r_loc[source]

                                                                Radius of local projectors

                                                                Type:
                                                                @@ -1443,7 +1440,7 @@

                                                                Submodules
                                                                -nexp_ppl[source]
                                                                +nexp_ppl[source]

                                                                Number of the local pseudopotential functions

                                                                Type:
                                                                @@ -1454,7 +1451,7 @@

                                                                Submodules
                                                                -c_exp_ppl[source]
                                                                +c_exp_ppl[source]

                                                                Sequence = field(None, description=”Coefficients of the local pseudopotential functions

                                                                Type:
                                                                @@ -1465,7 +1462,7 @@

                                                                Submodules
                                                                -radii[source]
                                                                +radii[source]

                                                                Radius of the nonlocal part for angular momentum quantum number l defined by the Gaussian function exponents alpha_prj_ppnl

                                                                @@ -1477,7 +1474,7 @@

                                                                Submodules
                                                                -nprj[source]
                                                                +nprj[source]

                                                                Number of projectors

                                                                Type:
                                                                @@ -1488,7 +1485,7 @@

                                                                Submodules
                                                                -nprj_ppnl[source]
                                                                +nprj_ppnl[source]

                                                                Number of the non-local projectors for the angular momentum quantum number

                                                                Type:
                                                                @@ -1499,7 +1496,7 @@

                                                                Submodules
                                                                -hprj_ppnl[source]
                                                                +hprj_ppnl[source]

                                                                Coefficients of the non-local projector functions. Coeff ij for ang momentum l

                                                                Type:
                                                                @@ -1515,79 +1512,79 @@

                                                                Submodules
                                                                -c_exp_ppl: Sequence | None = None[source]
                                                                +c_exp_ppl: Sequence | None = None[source]

                                                                -classmethod from_section(section: Section) Self[source]
                                                                +classmethod from_section(section: Section) Self[source]

                                                                Extract GTH-formatted string from a section and convert it to model.

                                                                -classmethod from_str(string: str) Self[source]
                                                                +classmethod from_str(string: str) Self[source]

                                                                Initialize model from a GTH formatted string.

                                                                -get_keyword() Keyword[source]
                                                                +get_keyword() Keyword[source]

                                                                Get keyword object for the potential.

                                                                -get_section() Section[source]
                                                                +get_section() Section[source]

                                                                Convert model to a GTH-formatted section object for input files.

                                                                -get_str() str[source]
                                                                +get_str() str[source]

                                                                Convert model to a GTH-formatted string.

                                                                -hprj_ppnl: dict[int, dict[int, dict[int, float]]] | None = None[source]
                                                                +hprj_ppnl: dict[int, dict[int, dict[int, float]]] | None = None[source]
                                                                -n_elecs: dict[int, int] | None = None[source]
                                                                +n_elecs: dict[int, int] | None = None[source]
                                                                -nexp_ppl: int | None = None[source]
                                                                +nexp_ppl: int | None = None[source]
                                                                -nprj: int | None = None[source]
                                                                +nprj: int | None = None[source]
                                                                -nprj_ppnl: dict[int, int] | None = None[source]
                                                                +nprj_ppnl: dict[int, int] | None = None[source]
                                                                -r_loc: float | None = None[source]
                                                                +r_loc: float | None = None[source]
                                                                -radii: dict[int, float] | None = None[source]
                                                                +radii: dict[int, float] | None = None[source]

                                                                -class Keyword(name: str, *values, description: str | None = None, units: str | None = None, verbose: bool | None = False, repeats: bool | None = False)[source]
                                                                +class Keyword(name: str, *values, description: str | None = None, units: str | None = None, verbose: bool | None = False, repeats: bool | None = False)[source]

                                                                Bases: MSONable

                                                                A keyword argument in CP2K. Within CP2K Sections, which activate features of the CP2K code, the keywords are arguments that control the functionality of that feature. @@ -1615,19 +1612,19 @@

                                                                Submodules
                                                                -as_dict()[source]
                                                                +as_dict()[source]

                                                                Get a dictionary representation of the Keyword.

                                                                -classmethod from_dict(dct: dict) Self[source]
                                                                +classmethod from_dict(dct: dict) Self[source]

                                                                Initialize from dictionary.

                                                                -classmethod from_str(s: str) Self[source]
                                                                +classmethod from_str(s: str) Self[source]

                                                                Initialize from a string.

                                                                Keywords must be labeled with strings. If the post-processor finds that the keywords is a number, then None is return (used by @@ -1641,13 +1638,13 @@

                                                                Submodules
                                                                -get_str() str[source]
                                                                +get_str() str[source]

                                                                String representation of Keyword.

                                                                -verbosity(v)[source]
                                                                +verbosity(v)[source]

                                                                Change the printing of this keyword’s description.

                                                                @@ -1655,7 +1652,7 @@

                                                                Submodules
                                                                -class KeywordList(keywords: Sequence[Keyword])[source]
                                                                +class KeywordList(keywords: Sequence[Keyword])[source]

                                                                Bases: MSONable

                                                                Some keywords can be repeated, which makes accessing them via the normal dictionary methods a little unnatural. This class deals with this by defining a collection @@ -1668,25 +1665,25 @@

                                                                Submodules
                                                                -append(item)[source]
                                                                +append(item)[source]

                                                                Append the keyword list.

                                                                -extend(lst: Sequence[Keyword]) None[source]
                                                                +extend(lst: Sequence[Keyword]) None[source]

                                                                Extend the keyword list.

                                                                -get_str(indent: int = 0) str[source]
                                                                +get_str(indent: int = 0) str[source]

                                                                String representation of Keyword.

                                                                -verbosity(verbosity)[source]
                                                                +verbosity(verbosity)[source]

                                                                Silence all keywords in keyword list.

                                                                @@ -1694,7 +1691,7 @@

                                                                Submodules
                                                                -class Kind(specie: str, alias: str | None = None, magnetization: float = 0.0, basis_set: GaussianTypeOrbitalBasisSet | str | None = 'GTH_BASIS', potential: GthPotential | str | None = 'GTH_POTENTIALS', ghost: bool = False, aux_basis: GaussianTypeOrbitalBasisSet | str | None = None, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class Kind(specie: str, alias: str | None = None, magnetization: float = 0.0, basis_set: GaussianTypeOrbitalBasisSet | str | None = 'GTH_BASIS', potential: GthPotential | str | None = 'GTH_POTENTIALS', ghost: bool = False, aux_basis: GaussianTypeOrbitalBasisSet | str | None = None, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Specify the information for the different atom types being simulated.

                                                                Initialize a KIND section.

                                                                @@ -1724,7 +1721,7 @@

                                                                Submodules
                                                                -class KpointSet(npoints: int, kpoints: Iterable, units: str = 'B_VECTOR')[source]
                                                                +class KpointSet(npoints: int, kpoints: Iterable, units: str = 'B_VECTOR')[source]

                                                                Bases: Section

                                                                Specify a kpoint line to be calculated between special points.

                                                                @@ -1746,7 +1743,7 @@

                                                                Submodules
                                                                -class Kpoint_Set(npoints: int, kpoints: Iterable, units: str = 'B_VECTOR')[source]
                                                                +class Kpoint_Set(npoints: int, kpoints: Iterable, units: str = 'B_VECTOR')[source]

                                                                Bases: KpointSet

                                                                Parameters:
                                                                @@ -1767,7 +1764,7 @@

                                                                Submodules
                                                                -class Kpoints(kpts: Sequence | Sequence[Sequence[int]], weights: Sequence | None = None, eps_geo: float = 1e-06, full_grid: bool = False, parallel_group_size: int = -1, scheme: str = 'MONKHORST-PACK', symmetry: bool = False, units: str = 'B_VECTOR', verbose: bool = False, wavefunctions: str = 'COMPLEX')[source]
                                                                +class Kpoints(kpts: Sequence | Sequence[Sequence[int]], weights: Sequence | None = None, eps_geo: float = 1e-06, full_grid: bool = False, parallel_group_size: int = -1, scheme: str = 'MONKHORST-PACK', symmetry: bool = False, units: str = 'B_VECTOR', verbose: bool = False, wavefunctions: str = 'COMPLEX')[source]

                                                                Bases: Section

                                                                Description of the k-points to use for the calculation.

                                                                @@ -1801,7 +1798,7 @@

                                                                Submodules
                                                                -classmethod from_kpoints(kpoints: VaspKpoints, structure: Structure | None = None) Self[source]
                                                                +classmethod from_kpoints(kpoints: VaspKpoints, structure: Structure | None = None) Self[source]

                                                                Initialize the section from a Kpoints object (pymatgen.io.vasp.inputs). CP2K does not have an automatic gamma-point constructor, so this is generally used to get the number of divisions from a kpoint static constructor and then @@ -1824,7 +1821,7 @@

                                                                Submodules
                                                                -class LDOS(index: int = 1, alias: str | None = None, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class LDOS(index: int = 1, alias: str | None = None, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls printing of the LDOS (List-Density of states). i.e. projects onto specific atoms.

                                                                Initialize the LDOS section.

                                                                @@ -1842,7 +1839,7 @@

                                                                Submodules
                                                                -class MOCubes(write_cube: bool = False, nhomo: int = 1, nlumo: int = 1, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class MOCubes(write_cube: bool = False, nhomo: int = 1, nlumo: int = 1, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls printing of the molecular orbital eigenvalues.

                                                                Initialize the MO_CUBES section.

                                                                @@ -1850,14 +1847,14 @@

                                                                Submodules
                                                                -class MO_Cubes(write_cube: bool = False, nhomo: int = 1, nlumo: int = 1, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class MO_Cubes(write_cube: bool = False, nhomo: int = 1, nlumo: int = 1, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: MOCubes

                                                                Initialize the MO_CUBES section.

                                                                -class Mgrid(cutoff: float = 1200, rel_cutoff: float = 80, ngrids: int = 5, progression_factor: int = 3, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class Mgrid(cutoff: float = 1200, rel_cutoff: float = 80, ngrids: int = 5, progression_factor: int = 3, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls the multigrid for numerical integration.

                                                                Initialize the MGRID section.

                                                                @@ -1881,7 +1878,7 @@

                                                                Submodules
                                                                -class OrbitalTransformation(minimizer: str = 'CG', preconditioner: str = 'FULL_ALL', algorithm: str = 'STRICT', rotation: bool = False, occupation_preconditioner: bool = False, energy_gap: float = -1, linesearch: str = '2PNT', keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class OrbitalTransformation(minimizer: str = 'CG', preconditioner: str = 'FULL_ALL', algorithm: str = 'STRICT', rotation: bool = False, occupation_preconditioner: bool = False, energy_gap: float = -1, linesearch: str = '2PNT', keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Turns on the Orbital Transformation scheme for diagonalizing the Hamiltonian. Often faster and with guaranteed convergence compared to normal diagonalization, but requires the system @@ -1926,7 +1923,7 @@

                                                                Submodules
                                                                -class PBE(parameterization: str = 'ORIG', scale_c: float = 1, scale_x: float = 1, keywords: dict | None = None, subsections: dict | None = None)[source]
                                                                +class PBE(parameterization: str = 'ORIG', scale_c: float = 1, scale_x: float = 1, keywords: dict | None = None, subsections: dict | None = None)[source]

                                                                Bases: Section

                                                                Info about the PBE functional.

                                                                @@ -1946,7 +1943,7 @@

                                                                Submodules
                                                                -class PDOS(nlumo: int = -1, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class PDOS(nlumo: int = -1, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls printing of projected density of states onto the different atom KINDS (elemental decomposed DOS).

                                                                @@ -1964,12 +1961,12 @@

                                                                Submodules
                                                                -class PotentialFile(objects: Sequence | None = None)[source]
                                                                +class PotentialFile(objects: Sequence | None = None)[source]

                                                                Bases: DataFile

                                                                Data file for potentials only.

                                                                -classmethod from_str(string: str) Self[source]
                                                                +classmethod from_str(string: str) Self[source]

                                                                Initialize from a string representation.

                                                                @@ -1977,12 +1974,12 @@

                                                                Submodules
                                                                -class PotentialInfo(electrons: int | None = None, potential_type: str | None = None, nlcc: bool | None = None, xc: str | None = None)[source]
                                                                +class PotentialInfo(electrons: int | None = None, potential_type: str | None = None, nlcc: bool | None = None, xc: str | None = None)[source]

                                                                Bases: MSONable

                                                                Metadata for this potential.

                                                                -electrons[source]
                                                                +electrons[source]

                                                                Total number of electrons

                                                                Type:
                                                                @@ -1993,7 +1990,7 @@

                                                                Submodules
                                                                -potential_type[source]
                                                                +potential_type[source]

                                                                Potential type (e.g. GTH)

                                                                Type:
                                                                @@ -2004,7 +2001,7 @@

                                                                Submodules
                                                                -nlcc[source]
                                                                +nlcc[source]

                                                                Nonlinear core corrected potential

                                                                Type:
                                                                @@ -2015,7 +2012,7 @@

                                                                Submodules
                                                                -xc[source]
                                                                +xc[source]

                                                                Exchange correlation functional used for creating this potential

                                                                Type:
                                                                @@ -2026,42 +2023,42 @@

                                                                Submodules
                                                                -electrons: int | None = None[source]
                                                                +electrons: int | None = None[source]

                                                                -classmethod from_str(string: str) Self[source]
                                                                +classmethod from_str(string: str) Self[source]

                                                                Get a CP2K formatted string representation.

                                                                -nlcc: bool | None = None[source]
                                                                +nlcc: bool | None = None[source]
                                                                -potential_type: str | None = None[source]
                                                                +potential_type: str | None = None[source]
                                                                -softmatch(other)[source]
                                                                +softmatch(other)[source]

                                                                Soft matching to see if two potentials match.

                                                                Will only match those attributes which are defined for this basis info object (one way checking)

                                                                -xc: str | None = None[source]
                                                                +xc: str | None = None[source]

                                                                -class QS(method: str = 'GPW', eps_default: float = 1e-10, eps_pgf_orb: float | None = None, extrapolation: str = 'ASPC', keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class QS(method: str = 'GPW', eps_default: float = 1e-10, eps_pgf_orb: float | None = None, extrapolation: str = 'ASPC', keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls the quickstep settings (DFT driver).

                                                                Initialize the QS Section.

                                                                @@ -2088,7 +2085,7 @@

                                                                Submodules
                                                                -class Scf(max_scf: int = 50, eps_scf: float = 1e-06, scf_guess: str = 'RESTART', keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class Scf(max_scf: int = 50, eps_scf: float = 1e-06, scf_guess: str = 'RESTART', keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls the self consistent field loop.

                                                                Initialize the Scf section.

                                                                @@ -2122,7 +2119,7 @@

                                                                Submodules
                                                                -class Section(name: str, subsections: dict | None = None, repeats: bool = False, description: str | None = None, keywords: dict | None = None, section_parameters: list | tuple | None = None, location: str | None = None, verbose: bool | None = False, alias: str | None = None, **kwargs)[source]
                                                                +class Section(name: str, subsections: dict | None = None, repeats: bool = False, description: str | None = None, keywords: dict | None = None, section_parameters: Sequence[str] = (), location: str | None = None, verbose: bool | None = False, alias: str | None = None, **kwargs)[source]

                                                                Bases: MSONable

                                                                Basic input representation of input to CP2K. Activates functionality inside of the CP2K executable.

                                                                @@ -2164,13 +2161,13 @@

                                                                Submodules
                                                                -add(other)[source]
                                                                +add(other)[source]

                                                                Add another keyword to the current section.

                                                                -by_path(path: str)[source]
                                                                +by_path(path: str)[source]

                                                                Access a sub-section using a path. Used by the file parser.

                                                                Parameters:
                                                                @@ -2181,7 +2178,7 @@

                                                                Submodules
                                                                -check(path: str)[source]
                                                                +check(path: str)[source]

                                                                Check if section exists within the current using a path. Can be useful for cross-checking whether or not required dependencies have been satisfied, which CP2K does not enforce.

                                                                @@ -2193,7 +2190,7 @@

                                                                Submodules
                                                                -get(d, default=None)[source]
                                                                +get(d, default=None)[source]

                                                                Similar to get for dictionaries. This will attempt to retrieve the section or keyword matching d. Will not raise an error if d does not exist.

                                                                @@ -2208,7 +2205,7 @@

                                                                Submodules
                                                                -get_keyword(d, default=None)[source]
                                                                +get_keyword(d, default=None)[source]

                                                                Get function, only for subsections.

                                                                Parameters:
                                                                @@ -2222,7 +2219,7 @@

                                                                Submodules
                                                                -get_section(d, default=None)[source]
                                                                +get_section(d, default=None)[source]

                                                                Get function, only for subsections.

                                                                Parameters:
                                                                @@ -2236,37 +2233,37 @@

                                                                Submodules
                                                                -get_str() str[source]
                                                                +get_str() str[source]

                                                                Get string representation of Section.

                                                                -inc(dct: dict)[source]
                                                                +inc(dct: dict)[source]

                                                                Mongo style dict modification. Include.

                                                                -insert(d: Section | SectionList) None[source]
                                                                +insert(d: Section | SectionList) None[source]

                                                                Insert a new section as a subsection of the current one.

                                                                -safeset(dct: dict)[source]
                                                                +safeset(dct: dict)[source]

                                                                Alias for update with strict (no insertions). Used by custodian.

                                                                -set(dct: dict)[source]
                                                                +set(dct: dict)[source]

                                                                Alias for update. Used by custodian.

                                                                -setitem(key, value, strict=False)[source]
                                                                +setitem(key, value, strict=False)[source]

                                                                Helper function for setting items. Kept separate from the double-underscore function so that “strict” option can be made possible.

                                                                strict will only set values for items that already have a key entry (no insertion).

                                                                @@ -2274,19 +2271,19 @@

                                                                Submodules
                                                                -silence()[source]
                                                                +silence()[source]

                                                                Recursively delete all print sections so that only defaults are printed out.

                                                                -unset(dct: dict)[source]
                                                                +unset(dct: dict)[source]

                                                                Dict based deletion. Used by custodian.

                                                                -update(dct: dict, strict=False) Section[source]
                                                                +update(dct: dict, strict=False) Section[source]

                                                                Update the Section according to a dictionary argument. This is most useful for providing user-override settings to default parameters. As you pass a dictionary the class variables like “description”, “location”, or “repeats” @@ -2320,7 +2317,7 @@

                                                                Submodules
                                                                -verbosity(verbosity: bool) None[source]
                                                                +verbosity(verbosity: bool) None[source]

                                                                Change the section verbosity recursively by turning on/off the printing of descriptions. Turning off descriptions may reduce the appealing documentation of input files, but also helps de-clutter them.

                                                                @@ -2330,7 +2327,7 @@

                                                                Submodules
                                                                -class SectionList(sections: Sequence[Section])[source]
                                                                +class SectionList(sections: Sequence[Section])[source]

                                                                Bases: MSONable

                                                                Section list.

                                                                Initialize a SectionList object using a sequence of sections.

                                                                @@ -2341,32 +2338,32 @@

                                                                Submodules
                                                                -append(item) None[source]
                                                                +append(item) None[source]

                                                                Append the section list.

                                                                -extend(lst: list) None[source]
                                                                +extend(lst: list) None[source]

                                                                Extend the section list.

                                                                -get(d, index=-1)[source]
                                                                +get(d, index=-1)[source]

                                                                Get for section list. If index is specified, return the section at that index. Otherwise, return a get on the last section.

                                                                -get_str() str[source]
                                                                +get_str() str[source]

                                                                Return string representation of section list.

                                                                -verbosity(verbosity) None[source]
                                                                +verbosity(verbosity) None[source]

                                                                Silence all sections in section list.

                                                                @@ -2374,7 +2371,7 @@

                                                                Submodules
                                                                -class Smear(elec_temp: float = 300, method: str = 'FERMI_DIRAC', fixed_magnetic_moment: float = -100.0, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class Smear(elec_temp: float = 300, method: str = 'FERMI_DIRAC', fixed_magnetic_moment: float = -100.0, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Control electron smearing.

                                                                Basic object representing a CP2K Section. Sections activate different parts of the @@ -2417,7 +2414,7 @@

                                                                Submodules
                                                                -class Subsys(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class Subsys(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls the definition of the system to be simulated.

                                                                Initialize the subsys section.

                                                                @@ -2425,7 +2422,7 @@

                                                                Submodules
                                                                -class VHartreeCube(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class VHartreeCube(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Controls printing of the hartree potential as a cube file.

                                                                Basic object representing a CP2K Section. Sections activate different parts of the @@ -2468,7 +2465,7 @@

                                                                Submodules
                                                                -class V_Hartree_Cube(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class V_Hartree_Cube(keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: VHartreeCube

                                                                Basic object representing a CP2K Section. Sections activate different parts of the calculation. For example, FORCE_EVAL section will activate CP2K’s ability to calculate @@ -2510,7 +2507,7 @@

                                                                Submodules
                                                                -class XCFunctional(functionals: Iterable | None = None, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class XCFunctional(functionals: Sequence[str] = (), keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: Section

                                                                Info about which XC functional to use.

                                                                Basic object representing a CP2K Section. Sections activate different parts of the @@ -2553,7 +2550,7 @@

                                                                Submodules
                                                                -class Xc_Functional(functionals: Iterable | None = None, keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]
                                                                +class Xc_Functional(functionals: Sequence[str] = (), keywords: dict | None = None, subsections: dict | None = None, **kwargs)[source]

                                                                Bases: XCFunctional

                                                                Basic object representing a CP2K Section. Sections activate different parts of the calculation. For example, FORCE_EVAL section will activate CP2K’s ability to calculate @@ -2600,7 +2597,7 @@

                                                                Submodules
                                                                -class Cp2kOutput(filename, verbose=False, auto_load=False)[source]
                                                                +class Cp2kOutput(filename, verbose=False, auto_load=False)[source]

                                                                Bases: object

                                                                Parse output file from CP2K. The CP2K output file is very flexible in the way that it is returned. This class will automatically parse parameters that should always be present, @@ -2619,93 +2616,93 @@

                                                                Submodules
                                                                -as_dict()[source]
                                                                +as_dict()[source]

                                                                Return dictionary representation of the output.

                                                                -property band_structure: BandStructure | None[source]
                                                                +property band_structure: BandStructure | None[source]

                                                                Band structure object if it has been parsed.

                                                                -property calculation_type: str[source]
                                                                +property calculation_type: str[source]

                                                                The calculation type (what io.vasp.outputs calls run_type).

                                                                -property charge: float[source]
                                                                +property charge: float[source]

                                                                Charge from the input file.

                                                                -property complete_dos: CompleteDos | None[source]
                                                                +property complete_dos: CompleteDos | None[source]

                                                                Complete dos object if it has been parsed.

                                                                -property completed[source]
                                                                +property completed[source]

                                                                Did the calculation complete.

                                                                -convergence()[source]
                                                                +convergence()[source]

                                                                Check whether or not the SCF and geometry optimization cycles converged.

                                                                -property cp2k_version[source]
                                                                +property cp2k_version[source]

                                                                The CP2K version used in the calculation.

                                                                -property is_hubbard: bool[source]
                                                                +property is_hubbard: bool[source]

                                                                True if hubbard +U correction was used.

                                                                -property is_metal: bool[source]
                                                                +property is_metal: bool[source]

                                                                Was a band gap found? i.e. is it a metal.

                                                                -property is_molecule: bool[source]
                                                                +property is_molecule: bool[source]

                                                                True if the CP2K output was generated for a molecule (i.e. no periodicity in the cell).

                                                                -property multiplicity: int[source]
                                                                +property multiplicity: int[source]

                                                                The spin multiplicity from input file.

                                                                -property num_warnings[source]
                                                                +property num_warnings[source]

                                                                How many warnings showed up during the run.

                                                                -parse_atomic_kind_info()[source]
                                                                +parse_atomic_kind_info()[source]

                                                                Parse info on what atomic kinds are present and what basis/pseudopotential is describing each of them.

                                                                -parse_bandstructure(bandstructure_filename=None) None[source]
                                                                +parse_bandstructure(bandstructure_filename=None) None[source]

                                                                Parse a CP2K bandstructure file.

                                                                Parameters:
                                                                @@ -2721,31 +2718,31 @@

                                                                Submodules
                                                                -parse_cell_params()[source]
                                                                +parse_cell_params()[source]

                                                                Parse the lattice parameters (initial) from the output file.

                                                                -parse_chi_tensor(chi_filename=None)[source]
                                                                +parse_chi_tensor(chi_filename=None)[source]

                                                                Parse the magnetic susceptibility tensor.

                                                                -parse_cp2k_params()[source]
                                                                +parse_cp2k_params()[source]

                                                                Parse the CP2K general parameters from CP2K output file into a dictionary.

                                                                -parse_dft_params()[source]
                                                                +parse_dft_params()[source]

                                                                Parse the DFT parameters (as well as functional, HF, vdW params).

                                                                -parse_dos(dos_file=None, pdos_files=None, ldos_files=None)[source]
                                                                +parse_dos(dos_file=None, pdos_files=None, ldos_files=None)[source]

                                                                Parse the dos files produced by CP2K calculation. CP2K produces different files based on the input file rather than assimilating them all into one file.

                                                                One file type is the overall DOS file, which is used for k-point calculations. For @@ -2770,7 +2767,7 @@

                                                                Submodules
                                                                -parse_energies()[source]
                                                                +parse_energies()[source]

                                                                Get the total energy from a CP2K calculation. Presently, the energy reported in the trajectory (pos.xyz) file takes precedence over the energy reported in the main output file. This is because the trajectory file keeps track of energies in between restarts, @@ -2780,69 +2777,69 @@

                                                                Submodules
                                                                -parse_files()[source]
                                                                +parse_files()[source]

                                                                Identify files present in the directory with the CP2K output file. Looks for trajectories, dos, and cubes.

                                                                -parse_forces()[source]
                                                                +parse_forces()[source]

                                                                Get the forces from the forces file, or from the main output file.

                                                                -parse_global_params()[source]
                                                                +parse_global_params()[source]

                                                                Parse the GLOBAL section parameters from CP2K output file into a dictionary.

                                                                -parse_gtensor(gtensor_filename=None)[source]
                                                                +parse_gtensor(gtensor_filename=None)[source]

                                                                Parse a file containing g tensor.

                                                                -parse_hirshfeld()[source]
                                                                +parse_hirshfeld()[source]

                                                                Parse the Hirshfeld population analysis for each step.

                                                                -parse_homo_lumo()[source]
                                                                +parse_homo_lumo()[source]

                                                                Find the HOMO - LUMO gap in [eV]. Returns the last value. For gaps/eigenvalues decomposed by spin up/spin down channel and over many ionic steps, see parse_mo_eigenvalues().

                                                                -parse_hyperfine(hyperfine_filename=None)[source]
                                                                +parse_hyperfine(hyperfine_filename=None)[source]

                                                                Parse a file containing hyperfine coupling tensors for each atomic site.

                                                                -parse_initial_structure()[source]
                                                                +parse_initial_structure()[source]

                                                                Parse the initial structure from the main CP2K output file.

                                                                -parse_input()[source]
                                                                +parse_input()[source]

                                                                Load in the input set from the input file (if it can be found).

                                                                -parse_ionic_steps()[source]
                                                                +parse_ionic_steps()[source]

                                                                Parse the ionic step info. If already parsed, this will just assimilate.

                                                                -parse_mo_eigenvalues()[source]
                                                                +parse_mo_eigenvalues()[source]

                                                                Parse the MO eigenvalues from the CP2K output file. Will get the eigenvalues (and band gap) at each ionic step (if more than one exist).

                                                                Everything is decomposed by spin channel. If calculation was performed without spin @@ -2852,68 +2849,68 @@

                                                                Submodules
                                                                -parse_mulliken()[source]
                                                                +parse_mulliken()[source]

                                                                Parse the mulliken population analysis info for each step.

                                                                -parse_nmr_shift()[source]
                                                                +parse_nmr_shift()[source]

                                                                Parse NMR calculation.

                                                                -parse_opt_steps()[source]
                                                                +parse_opt_steps()[source]

                                                                Parse the geometry optimization information.

                                                                -parse_overlap_condition()[source]
                                                                +parse_overlap_condition()[source]

                                                                Retrieve the overlap condition number.

                                                                -parse_plus_u_params()[source]
                                                                +parse_plus_u_params()[source]

                                                                Parse the DFT+U params.

                                                                -parse_qs_params()[source]
                                                                +parse_qs_params()[source]

                                                                Parse the DFT parameters (as well as functional, HF, vdW params).

                                                                -parse_raman()[source]
                                                                +parse_raman()[source]

                                                                Parse raman calculation.

                                                                -parse_scf_opt()[source]
                                                                +parse_scf_opt()[source]

                                                                Parse the SCF cycles (not usually important).

                                                                -parse_scf_params()[source]
                                                                +parse_scf_params()[source]

                                                                Retrieve the most import SCF parameters: the max number of scf cycles (max_scf), the convergence cutoff for scf (eps_scf),.

                                                                -parse_stresses()[source]
                                                                +parse_stresses()[source]

                                                                Get the stresses from stress file, or from the main output file.

                                                                -parse_structures(trajectory_file=None, lattice_file=None)[source]
                                                                +parse_structures(trajectory_file=None, lattice_file=None)[source]

                                                                Parse the structures from a CP2K calculation. Static calculations simply use the initial structure. For calculations with ionic motion, the function will look for the appropriate trajectory and lattice files based on naming convention. If no file is given, and no file @@ -2924,31 +2921,31 @@

                                                                Submodules
                                                                -parse_tddfpt()[source]
                                                                +parse_tddfpt()[source]

                                                                Parse TDDFPT calculation.

                                                                -parse_timing()[source]
                                                                +parse_timing()[source]

                                                                Parse the timing info (how long did the run take).

                                                                -parse_total_numbers()[source]
                                                                +parse_total_numbers()[source]

                                                                Parse total numbers (not usually important).

                                                                -property project_name: str[source]
                                                                +property project_name: str[source]

                                                                What project name was used for this calculation.

                                                                -ran_successfully()[source]
                                                                +ran_successfully()[source]

                                                                Sanity checks that the program ran successfully. Looks at the bottom of the CP2K output file for the “PROGRAM ENDED” line, which is printed when successfully ran. Also grabs the number of warnings issued.

                                                                @@ -2956,7 +2953,7 @@

                                                                Submodules
                                                                -read_pattern(patterns, reverse=False, terminate_on_match=False, postprocess=<class 'str'>)[source]
                                                                +read_pattern(patterns, reverse=False, terminate_on_match=False, postprocess=<class 'str'>)[source]

                                                                Originally from pymatgen.io.vasp.outputs.Outcar.

                                                                General pattern reading. Uses monty’s regrep method. Takes the same arguments.

                                                                @@ -2987,7 +2984,7 @@

                                                                Submodules
                                                                -read_table_pattern(header_pattern, row_pattern, footer_pattern, postprocess=<class 'str'>, attribute_name=None, last_one_only=True, strip=None)[source]
                                                                +read_table_pattern(header_pattern, row_pattern, footer_pattern, postprocess=<class 'str'>, attribute_name=None, last_one_only=True, strip=None)[source]

                                                                This function originated in pymatgen.io.vasp.outputs.Outcar.

                                                                Parse table-like data. A table composes of three parts: header, main body, footer. All the data matches “row pattern” in the main body @@ -3032,13 +3029,13 @@

                                                                Submodules
                                                                -property run_type[source]
                                                                +property run_type[source]

                                                                What type of run (Energy, MD, etc.) was performed.

                                                                -property spin_polarized: bool[source]
                                                                +property spin_polarized: bool[source]

                                                                Was the calculation spin polarized.

                                                                @@ -3046,19 +3043,19 @@

                                                                Submodules
                                                                -parse_dos(dos_file=None)[source]
                                                                +parse_dos(dos_file=None)[source]

                                                                Parse a dos file. This format is different from the pdos files.

                                                                -parse_energy_file(energy_file)[source]
                                                                +parse_energy_file(energy_file)[source]

                                                                Parse energy file for calculations with multiple ionic steps.

                                                                -parse_pdos(dos_file=None, spin_channel=None, total=False)[source]
                                                                +parse_pdos(dos_file=None, spin_channel=None, total=False)[source]

                                                                Parse a single DOS file created by CP2K. Must contain one PDOS snapshot. i.e. you cannot use this cannot deal with multiple concatenated dos files.

                                                                @@ -3114,13 +3111,17 @@

                                                                Submodules
                                                                -class CellOptSet(**kwargs)[source]
                                                                +class CellOptSet(**kwargs)[source]

                                                                Bases: DftSet

                                                                Quick Constructor for cell optimization relaxation.

                                                                Parameters:
                                                                • structure – Pymatgen structure or molecule object

                                                                • +
                                                                • basis_and_potential (dict) – Basis set and pseudo-potential to use for each element. +See DftSet.get_basis_and_potential for allowed formats.

                                                                • +
                                                                • element_defaults (dict) – Default settings such as initial magnetization for each +element. See DftSet.create_subsys for allowed formats.

                                                                • ot (bool) – Whether or not to use orbital transformation method for matrix diagonalization. OT is the flagship scf solver of CP2K, and will provide speed-ups for this part of the calculation, but the system must have a band gap @@ -3184,6 +3185,8 @@

                                                                  Submoduleshttps://manual.cp2k.org/trunk/CP2K_INPUT/FORCE_EVAL/SUBSYS/CELL.html#CP2K_INPUT.FORCE_EVAL.SUBSYS.CELL

                                                                @@ -3191,21 +3194,21 @@

                                                                Submodules
                                                                -exception Cp2kValidationError(message)[source]
                                                                +exception Cp2kValidationError(message)[source]

                                                                Bases: Exception

                                                                CP2K validation exception. Not exhausted. May raise validation errors for features which actually do work if using a newer version of CP2K.

                                                                -CP2K_VERSION = 'v2022.1'[source]
                                                                +CP2K_VERSION = 'v2022.1'[source]

                                                                -class DftSet(structure: Structure | Molecule, project_name: str = 'CP2K', basis_and_potential: dict | None = None, xc_functionals: list | str | None = None, multiplicity: int = 0, ot: bool = True, energy_gap: float = -1, qs_method: str = 'GPW', eps_default: float = 1e-12, eps_scf: float = 1e-06, max_scf: int | None = None, minimizer: str = 'DIIS', preconditioner: str = 'FULL_SINGLE_INVERSE', algorithm: str = 'IRAC', linesearch: str = '2PNT', rotation: bool = True, occupation_preconditioner: bool = False, cutoff: float | None = None, rel_cutoff: int = 50, ngrids: int = 5, progression_factor: int = 3, override_default_params: dict | None = None, wfn_restart_file_name: str | None = None, kpoints: Kpoints | None = None, smearing: bool = False, **kwargs)[source]
                                                                +class DftSet(structure: Structure | Molecule, project_name: str = 'CP2K', basis_and_potential: dict | None = None, element_defaults: dict[str, dict[str, Any]] | None = None, xc_functionals: list | str | None = None, multiplicity: int = 0, ot: bool = True, energy_gap: float = -1, qs_method: str = 'GPW', eps_default: float = 1e-12, eps_scf: float = 1e-06, max_scf: int | None = None, minimizer: str = 'DIIS', preconditioner: str = 'FULL_SINGLE_INVERSE', algorithm: str = 'IRAC', linesearch: str = '2PNT', rotation: bool = True, occupation_preconditioner: bool = False, cutoff: float | None = None, rel_cutoff: int = 50, ngrids: int = 5, progression_factor: int = 3, override_default_params: dict | None = None, wfn_restart_file_name: str | None = None, kpoints: Kpoints | None = None, smearing: bool = False, cell: dict[str, Any] | None = None, **kwargs)[source]

                                                                Bases: Cp2kInput

                                                                Base for an input set using the Quickstep module (i.e. a DFT calculation). The DFT section is pretty vast in CP2K, so this set hopes to make the DFT setup fairly simple. The provided @@ -3214,6 +3217,10 @@

                                                                SubmodulesParameters:

                                                                -activate_epr(**kwargs) None[source]
                                                                +activate_epr(**kwargs) None[source]

                                                                Calculate g-tensor. Requires localize. Suggested with GAPW.

                                                                -activate_fast_minimization(on) None[source]
                                                                +activate_fast_minimization(on) None[source]

                                                                Modify the set to use fast SCF minimization.

                                                                -activate_hybrid(hybrid_functional: str = 'PBE0', hf_fraction: float = 0.25, gga_x_fraction: float = 0.75, gga_c_fraction: float = 1, max_memory: int = 2000, cutoff_radius: float = 8.0, potential_type: str | None = None, omega: float = 0.11, scale_coulomb: float = 1, scale_gaussian: float = 1, scale_longrange: float = 1, admm: bool = True, admm_method: str = 'BASIS_PROJECTION', admm_purification_method: str = 'NONE', admm_exch_correction_func: str = 'DEFAULT', eps_schwarz: float = 1e-07, eps_schwarz_forces: float = 1e-06, screen_on_initial_p: bool = True, screen_p_forces: bool = True) None[source]
                                                                +activate_hybrid(hybrid_functional: str = 'PBE0', hf_fraction: float = 0.25, gga_x_fraction: float = 0.75, gga_c_fraction: float = 1, max_memory: int = 2000, cutoff_radius: float = 8.0, potential_type: str | None = None, omega: float = 0.11, scale_coulomb: float = 1, scale_gaussian: float = 1, scale_longrange: float = 1, admm: bool = True, admm_method: str = 'BASIS_PROJECTION', admm_purification_method: str = 'NONE', admm_exch_correction_func: str = 'DEFAULT', eps_schwarz: float = 1e-07, eps_schwarz_forces: float = 1e-06, screen_on_initial_p: bool = True, screen_p_forces: bool = True) None[source]

                                                                Basic set for activating hybrid DFT calculation using Auxiliary Density Matrix Method.

                                                                Note 1: When running ADMM with CP2K, memory is very important. If the memory requirements exceed what is available (see max_memory), then CP2K will have to calculate the 4-electron @@ -3362,13 +3371,13 @@

                                                                Submodules
                                                                -activate_hyperfine() None[source]
                                                                +activate_hyperfine() None[source]

                                                                Print the hyperfine coupling constants.

                                                                -activate_localize(states='OCCUPIED', preconditioner='FULL_ALL', restart=False) None[source]
                                                                +activate_localize(states='OCCUPIED', preconditioner='FULL_ALL', restart=False) None[source]

                                                                Activate calculation of the maximally localized wannier functions.

                                                                Parameters:
                                                                @@ -3384,7 +3393,7 @@

                                                                Submodules
                                                                -activate_motion(max_drift: float = 0.003, rms_drift: float = 0.0015, max_force: float = 0.00045, rms_force: float = 0.0003, max_iter: int = 200, optimizer: str = 'BFGS', trust_radius: float = 0.25, line_search: str = '2PNT', ensemble: str = 'NVE', temperature: float = 300, timestep: float = 0.5, nsteps: int = 3, thermostat: str = 'NOSE', nproc_rep: int = 1) None[source]
                                                                +activate_motion(max_drift: float = 0.003, rms_drift: float = 0.0015, max_force: float = 0.00045, rms_force: float = 0.0003, max_iter: int = 200, optimizer: str = 'BFGS', trust_radius: float = 0.25, line_search: str = '2PNT', ensemble: str = 'NVE', temperature: float = 300, timestep: float = 0.5, nsteps: int = 3, thermostat: str = 'NOSE', nproc_rep: int = 1) None[source]

                                                                Turns on the motion section for GEO_OPT, CELL_OPT, etc. calculations. Will turn on the printing subsections and also bind any constraints to their respective atoms.

                                                                @@ -3392,44 +3401,44 @@

                                                                Submodules
                                                                -activate_nmr(**kwargs) None[source]
                                                                +activate_nmr(**kwargs) None[source]

                                                                Calculate nmr shifts. Requires localize. Suggested with GAPW.

                                                                -activate_nonperiodic(solver='ANALYTIC') None[source]
                                                                +activate_nonperiodic(solver='ANALYTIC') None[source]

                                                                Activates a calculation with non-periodic calculations by turning of PBC and changing the poisson solver. Still requires a CELL to put the atoms.

                                                                -activate_polar(**kwargs) None[source]
                                                                +activate_polar(**kwargs) None[source]

                                                                Calculate polarizations (including raman).

                                                                -activate_robust_minimization() None[source]
                                                                +activate_robust_minimization() None[source]

                                                                Modify the set to use more robust SCF minimization technique.

                                                                -activate_spinspin(**kwargs) None[source]
                                                                +activate_spinspin(**kwargs) None[source]

                                                                Calculate spin-spin coupling tensor. Requires localize.

                                                                -activate_tddfpt(**kwargs) None[source]
                                                                +activate_tddfpt(**kwargs) None[source]

                                                                Activate TDDFPT for calculating excited states. Only works with GPW. Supports hfx.

                                                                -activate_vdw_potential(dispersion_functional: str, potential_type: str) None[source]
                                                                +activate_vdw_potential(dispersion_functional: str, potential_type: str) None[source]

                                                                Activate van der Waals dispersion corrections.

                                                                Parameters:
                                                                @@ -3445,19 +3454,19 @@

                                                                Submodules
                                                                -activate_very_strict_minimization() None[source]
                                                                +activate_very_strict_minimization() None[source]

                                                                Method to modify the set to use very strict SCF minimization scheme.

                                                                -create_subsys(structure: Structure | Molecule) None[source]
                                                                +create_subsys(structure: Structure | Molecule) None[source]

                                                                Create the structure for the input.

                                                                -static get_basis_and_potential(structure: Structure, basis_and_potential: dict[str, dict[str, Any]], cp2k_data_dir: str | Path | None = None) dict[str, dict[str, Any]][source]
                                                                +static get_basis_and_potential(structure: Structure, basis_and_potential: dict[str, dict[str, Any]], cp2k_data_dir: str | None = None) dict[str, dict[str, Any]][source]

                                                                Get a dictionary of basis and potential info for constructing the input file.

                                                                data in basis_and_potential argument can be specified in several ways:

                                                                @@ -3515,20 +3524,20 @@

                                                                Submodules
                                                                -static get_cutoff_from_basis(basis_sets, rel_cutoff) float[source]
                                                                +static get_cutoff_from_basis(basis_sets, rel_cutoff) float[source]

                                                                Given a basis and a relative cutoff. Determine the ideal cutoff variable.

                                                                -static get_xc_functionals(xc_functionals: list | str | None = None) list[source]
                                                                +static get_xc_functionals(xc_functionals: list | str | None = None) list[source]

                                                                Get XC functionals. If simplified names are provided in kwargs, they will be expanded into their corresponding X and C names.

                                                                -modify_dft_print_iters(iters, add_last: Literal['no', 'numeric', 'symbolic'] = 'no')[source]
                                                                +modify_dft_print_iters(iters, add_last: Literal['no', 'numeric', 'symbolic'] = 'no')[source]

                                                                Modify all DFT print iterations at once. Common use is to set iters to the max number of iterations + 1 and then set add_last to numeric. This would have the effect of printing only the first and last iteration, which might be useful for @@ -3549,7 +3558,7 @@

                                                                Submodules
                                                                -print_bandstructure(kpoints_line_density: int = 20) None[source]
                                                                +print_bandstructure(kpoints_line_density: int = 20) None[source]

                                                                Attaches a non-scf band structure calc the end of an SCF loop.

                                                                This requires a kpoint calculation, which is not always default in CP2K.

                                                                @@ -3561,7 +3570,7 @@

                                                                Submodules
                                                                -print_dos(ndigits=6) None[source]
                                                                +print_dos(ndigits=6) None[source]

                                                                Activate printing of the overall DOS file.

                                                                Note: As of 2022.1, ndigits needs to be set to a sufficient value to ensure data is not lost. Note: As of 2022.1, can only be used with a k-point calculation.

                                                                @@ -3569,25 +3578,25 @@

                                                                Submodules
                                                                -print_e_density(stride=(2, 2, 2)) None[source]
                                                                +print_e_density(stride=(2, 2, 2)) None[source]

                                                                Controls the printing of cube files with electronic density and, for UKS, the spin density.

                                                                -print_forces() None[source]
                                                                +print_forces() None[source]

                                                                Print out the forces and stress during calculation.

                                                                -print_hirshfeld(on=True) None[source]
                                                                +print_hirshfeld(on=True) None[source]

                                                                Activate or deactivate printing of Hirshfeld charges.

                                                                -print_ldos(nlumo: int = -1) None[source]
                                                                +print_ldos(nlumo: int = -1) None[source]

                                                                Activate the printing of LDOS files, printing one for each atom kind by default.

                                                                Parameters:
                                                                @@ -3600,13 +3609,13 @@

                                                                Submodules
                                                                -print_mo() None[source]
                                                                +print_mo() None[source]

                                                                Print molecular orbitals when running non-OT diagonalization.

                                                                -print_mo_cubes(write_cube: bool = False, nlumo: int = -1, nhomo: int = -1) None[source]
                                                                +print_mo_cubes(write_cube: bool = False, nlumo: int = -1, nhomo: int = -1) None[source]

                                                                Activate printing of molecular orbitals.

                                                                Parameters:
                                                                @@ -3621,13 +3630,13 @@

                                                                Submodules
                                                                -print_mulliken(on=False) None[source]
                                                                +print_mulliken(on=False) None[source]

                                                                Activate or deactivate printing of Mulliken charges.

                                                                -print_pdos(nlumo: int = -1) None[source]
                                                                +print_pdos(nlumo: int = -1) None[source]

                                                                Activate creation of the PDOS file.

                                                                Parameters:
                                                                @@ -3640,7 +3649,7 @@

                                                                Submodules
                                                                -print_v_hartree(stride=(2, 2, 2)) None[source]
                                                                +print_v_hartree(stride=(2, 2, 2)) None[source]
                                                                Controls the printing of a cube file with electrostatic potential generated by the

                                                                total density (electrons+ions). It is valid only for QS with GPW formalism.

                                                                @@ -3650,25 +3659,25 @@

                                                                Submodules
                                                                -set_charge(charge: int) None[source]
                                                                +set_charge(charge: int) None[source]

                                                                Set the overall charge of the simulation cell.

                                                                -validate()[source]
                                                                +validate()[source]

                                                                Implements a few checks for a valid input set.

                                                                -write_basis_set_file(basis_sets, fn='BASIS') None[source]
                                                                +write_basis_set_file(basis_sets, fn='BASIS') None[source]

                                                                Write the basis sets to a file.

                                                                -write_potential_file(potentials, fn='POTENTIAL') None[source]
                                                                +write_potential_file(potentials, fn='POTENTIAL') None[source]

                                                                Write the potentials to a file.

                                                                @@ -3676,13 +3685,17 @@

                                                                Submodules
                                                                -class HybridCellOptSet(**kwargs)[source]
                                                                +class HybridCellOptSet(**kwargs)[source]

                                                                Bases: DftSet

                                                                Quick Constructor for hybrid cell optimization relaxation.

                                                                Parameters:
                                                                • structure – Pymatgen structure or molecule object

                                                                • +
                                                                • basis_and_potential (dict) – Basis set and pseudo-potential to use for each element. +See DftSet.get_basis_and_potential for allowed formats.

                                                                • +
                                                                • element_defaults (dict) – Default settings such as initial magnetization for each +element. See DftSet.create_subsys for allowed formats.

                                                                • ot (bool) – Whether or not to use orbital transformation method for matrix diagonalization. OT is the flagship scf solver of CP2K, and will provide speed-ups for this part of the calculation, but the system must have a band gap @@ -3746,6 +3759,8 @@

                                                                  Submoduleshttps://manual.cp2k.org/trunk/CP2K_INPUT/FORCE_EVAL/SUBSYS/CELL.html#CP2K_INPUT.FORCE_EVAL.SUBSYS.CELL

                                                                @@ -3753,13 +3768,17 @@

                                                                Submodules
                                                                -class HybridRelaxSet(**kwargs)[source]
                                                                +class HybridRelaxSet(**kwargs)[source]

                                                                Bases: DftSet

                                                                Quick Constructor for hybrid geometry relaxation.

                                                                Parameters:
                                                                • structure – Pymatgen structure or molecule object

                                                                • +
                                                                • basis_and_potential (dict) – Basis set and pseudo-potential to use for each element. +See DftSet.get_basis_and_potential for allowed formats.

                                                                • +
                                                                • element_defaults (dict) – Default settings such as initial magnetization for each +element. See DftSet.create_subsys for allowed formats.

                                                                • ot (bool) – Whether or not to use orbital transformation method for matrix diagonalization. OT is the flagship scf solver of CP2K, and will provide speed-ups for this part of the calculation, but the system must have a band gap @@ -3823,6 +3842,8 @@

                                                                  Submoduleshttps://manual.cp2k.org/trunk/CP2K_INPUT/FORCE_EVAL/SUBSYS/CELL.html#CP2K_INPUT.FORCE_EVAL.SUBSYS.CELL

                                                                @@ -3830,13 +3851,17 @@

                                                                Submodules
                                                                -class HybridStaticSet(**kwargs)[source]
                                                                +class HybridStaticSet(**kwargs)[source]

                                                                Bases: DftSet

                                                                Quick Constructor for static calculations.

                                                                Parameters:
                                                                • structure – Pymatgen structure or molecule object

                                                                • +
                                                                • basis_and_potential (dict) – Basis set and pseudo-potential to use for each element. +See DftSet.get_basis_and_potential for allowed formats.

                                                                • +
                                                                • element_defaults (dict) – Default settings such as initial magnetization for each +element. See DftSet.create_subsys for allowed formats.

                                                                • ot (bool) – Whether or not to use orbital transformation method for matrix diagonalization. OT is the flagship scf solver of CP2K, and will provide speed-ups for this part of the calculation, but the system must have a band gap @@ -3900,6 +3925,8 @@

                                                                  Submoduleshttps://manual.cp2k.org/trunk/CP2K_INPUT/FORCE_EVAL/SUBSYS/CELL.html#CP2K_INPUT.FORCE_EVAL.SUBSYS.CELL

                                                                @@ -3907,13 +3934,17 @@

                                                                Submodules
                                                                -class RelaxSet(**kwargs)[source]
                                                                +class RelaxSet(**kwargs)[source]

                                                                Bases: DftSet

                                                                Quick Constructor for geometry relaxation.

                                                                Parameters:
                                                                • structure – Pymatgen structure or molecule object

                                                                • +
                                                                • basis_and_potential (dict) – Basis set and pseudo-potential to use for each element. +See DftSet.get_basis_and_potential for allowed formats.

                                                                • +
                                                                • element_defaults (dict) – Default settings such as initial magnetization for each +element. See DftSet.create_subsys for allowed formats.

                                                                • ot (bool) – Whether or not to use orbital transformation method for matrix diagonalization. OT is the flagship scf solver of CP2K, and will provide speed-ups for this part of the calculation, but the system must have a band gap @@ -3977,6 +4008,8 @@

                                                                  Submoduleshttps://manual.cp2k.org/trunk/CP2K_INPUT/FORCE_EVAL/SUBSYS/CELL.html#CP2K_INPUT.FORCE_EVAL.SUBSYS.CELL

                                                                @@ -3984,13 +4017,17 @@

                                                                Submodules
                                                                -class StaticSet(**kwargs)[source]
                                                                +class StaticSet(**kwargs)[source]

                                                                Bases: DftSet

                                                                Quick Constructor for static calculations.

                                                                Parameters:
                                                                • structure – Pymatgen structure or molecule object

                                                                • +
                                                                • basis_and_potential (dict) – Basis set and pseudo-potential to use for each element. +See DftSet.get_basis_and_potential for allowed formats.

                                                                • +
                                                                • element_defaults (dict) – Default settings such as initial magnetization for each +element. See DftSet.create_subsys for allowed formats.

                                                                • ot (bool) – Whether or not to use orbital transformation method for matrix diagonalization. OT is the flagship scf solver of CP2K, and will provide speed-ups for this part of the calculation, but the system must have a band gap @@ -4054,6 +4091,8 @@

                                                                  Submoduleshttps://manual.cp2k.org/trunk/CP2K_INPUT/FORCE_EVAL/SUBSYS/CELL.html#CP2K_INPUT.FORCE_EVAL.SUBSYS.CELL

                                                                @@ -4065,19 +4104,19 @@

                                                                Submodules
                                                                -chunk(string: str)[source]
                                                                +chunk(string: str)[source]

                                                                Chunk the string from a CP2K basis or potential file.

                                                                -get_truncated_coulomb_cutoff(inp_struct: Structure)[source]
                                                                +get_truncated_coulomb_cutoff(inp_struct: Structure)[source]

                                                                Get the truncated Coulomb cutoff for a given structure.

                                                                -get_unique_site_indices(struct: Structure | Molecule)[source]
                                                                +get_unique_site_indices(struct: Structure | Molecule)[source]

                                                                Get unique site indices for a structure according to site properties. Whatever site-property has the most unique values is used for indexing.

                                                                For example, if you have magnetic CoO with half Co atoms having a positive moment, and the @@ -4091,7 +4130,7 @@

                                                                Submodules
                                                                -natural_keys(text: str)[source]
                                                                +natural_keys(text: str)[source]

                                                                Sort text by numbers coming after an underscore with natural number convention, Ex: [file_1, file_12, file_2] becomes [file_1, file_2, file_12].

                                                                @@ -4099,7 +4138,7 @@

                                                                Submodules
                                                                -postprocessor(data: str) str | float | bool | None[source]
                                                                +postprocessor(data: str) str | float | bool | None[source]

                                                                Helper function to post process the results of the pattern matching functions in Cp2kOutput and turn them to Python types.

                                                                @@ -4120,7 +4159,7 @@

                                                                Submodules
                                                                -preprocessor(data: str, dir: str = '.') str[source]
                                                                +preprocessor(data: str, dir: str = '.') str[source]

                                                                CP2K contains internal preprocessor flags that are evaluated before execution. This helper function recognizes those preprocessor flags and replaces them with an equivalent CP2K input (this way everything is contained neatly in the CP2K input structure, even if the user preferred diff --git a/docs/pymatgen.io.exciting.html b/docs/pymatgen.io.exciting.html index 95d7ec91afb..7804a319e21 100644 --- a/docs/pymatgen.io.exciting.html +++ b/docs/pymatgen.io.exciting.html @@ -1,23 +1,23 @@ + + - + - pymatgen.io.exciting package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.io.exciting package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -

                                                                - 2024.10.27 -
                                                                @@ -105,13 +102,13 @@

                                                                Submodules
                                                                -class ExcitingInput(structure: Structure, title=None, lockxyz=None)[source]
                                                                +class ExcitingInput(structure: Structure, title: str | None = None, lockxyz: ArrayLike | None = None)[source]

                                                                Bases: MSONable

                                                                Object for representing the data stored in the structure part of the exciting input.

                                                                -structure[source]
                                                                +structure[source]

                                                                Associated Structure.

                                                                Type:
                                                                @@ -122,7 +119,7 @@

                                                                Submodules
                                                                -title[source]
                                                                +title[source]

                                                                Optional title string.

                                                                Type:
                                                                @@ -133,11 +130,11 @@

                                                                Submodules
                                                                -lockxyz[source]
                                                                -

                                                                Lockxyz attribute for each site if available. A Nx3 array of booleans.

                                                                +lockxyz[source] +

                                                                Lockxyz attribute for each site if available.

                                                                Type:
                                                                -

                                                                numpy.ndarray

                                                                +

                                                                Nx3 NDArray of booleans

                                                                @@ -155,12 +152,12 @@

                                                                Submodules
                                                                -bohr2ang = 0.5291692998219677[source]
                                                                +bohr2ang: ClassVar[float] = 0.5291692998219677[source]

                                                                -classmethod from_file(filename: str | Path) Self[source]
                                                                +classmethod from_file(filename: PathLike) Self[source]
                                                                Parameters:

                                                                filename – Filename.

                                                                @@ -173,20 +170,20 @@

                                                                Submodules
                                                                -classmethod from_str(data: str) Self[source]
                                                                +classmethod from_str(data: str) Self[source]

                                                                Reads the exciting input from a string.

                                                                -property lockxyz[source]
                                                                +property lockxyz: NDArray[source]

                                                                Selective dynamics site properties.

                                                                -write_etree(celltype, cartesian=False, bandstr=False, symprec: float = 0.4, angle_tolerance=5, **kwargs)[source]
                                                                -

                                                                Write the exciting input parameters to an XML object.

                                                                +write_etree(celltype: Literal['unchanged', 'conventional', 'primitive'], cartesian: bool = False, bandstr: bool = False, symprec: float = 0.4, angle_tolerance: float = 5, **kwargs) ET.Element[source] +

                                                                Convert the exciting input parameters to an XML Element object.

                                                                Parameters:
                                                                +
                                                              • MP24RelaxSet +
                                                              • +
                                                              • MP24StaticSet +
                                                              • MPAbsorptionSet
                                                                • MPAbsorptionSet.CONFIG
                                                                • MPAbsorptionSet.SUPPORTED_MODES
                                                                • @@ -3287,7 +3302,7 @@

                                                                  Submodules
                                                                  -class AdfInput(task)[source]
                                                                  +class AdfInput(task)[source]

                                                                  Bases: object

                                                                  A basic ADF input file writer.

                                                                  Initialization method.

                                                                  @@ -3298,7 +3313,7 @@

                                                                  Submodules
                                                                  -write_file(molecule, inp_file)[source]
                                                                  +write_file(molecule, inp_file)[source]

                                                                  Write an ADF input file.

                                                                  Parameters:
                                                                  @@ -3314,14 +3329,14 @@

                                                                  Submodules
                                                                  -exception AdfInputError[source]
                                                                  +exception AdfInputError[source]

                                                                  Bases: Exception

                                                                  The default error class for ADF.

                                                                  -class AdfKey(name, options=None, subkeys=None)[source]
                                                                  +class AdfKey(name, options=None, subkeys=None)[source]

                                                                  Bases: MSONable

                                                                  The basic input unit for ADF. A key is a string of characters that does not contain a delimiter (blank, comma or equal sign). A key may have multiple @@ -3343,7 +3358,7 @@

                                                                  Submodules
                                                                  -add_option(option)[source]
                                                                  +add_option(option)[source]

                                                                  Add a new option to this key.

                                                                  Parameters:
                                                                  @@ -3359,7 +3374,7 @@

                                                                  Submodules
                                                                  -add_subkey(subkey)[source]
                                                                  +add_subkey(subkey)[source]

                                                                  Add a new subkey to this key.

                                                                  Parameters:
                                                                  @@ -3372,18 +3387,18 @@

                                                                  Submodules
                                                                  -as_dict()[source]
                                                                  +as_dict()[source]

                                                                  A JSON-serializable dict representation of self.

                                                                  -block_keys = ('SCF', 'GEOMETRY', 'XC', 'UNITS', 'ATOMS', 'CHARGE', 'BASIS', 'SYMMETRY', 'RELATIVISTIC', 'OCCUPATIONS', 'SAVE', 'A1FIT', 'INTEGRATION', 'UNRESTRICTED', 'ZLMFIT', 'TITLE', 'EXACTDENSITY', 'TOTALENERGY', 'ANALYTICALFREQ')[source]
                                                                  +block_keys = ('SCF', 'GEOMETRY', 'XC', 'UNITS', 'ATOMS', 'CHARGE', 'BASIS', 'SYMMETRY', 'RELATIVISTIC', 'OCCUPATIONS', 'SAVE', 'A1FIT', 'INTEGRATION', 'UNRESTRICTED', 'ZLMFIT', 'TITLE', 'EXACTDENSITY', 'TOTALENERGY', 'ANALYTICALFREQ')[source]
                                                                  -classmethod from_dict(dct: dict) Self[source]
                                                                  +classmethod from_dict(dct: dict) Self[source]

                                                                  Construct a MSONable AdfKey object from the JSON dict.

                                                                  Parameters:
                                                                  @@ -3400,7 +3415,7 @@

                                                                  Submodules
                                                                  -classmethod from_str(string: str) Self[source]
                                                                  +classmethod from_str(string: str) Self[source]

                                                                  Construct an AdfKey object from the string.

                                                                  Parameters:
                                                                  @@ -3420,7 +3435,7 @@

                                                                  Submodules
                                                                  -has_option(option: str) bool[source]
                                                                  +has_option(option: str) bool[source]
                                                                  Parameters:

                                                                  option (str) – The option.

                                                                  @@ -3436,7 +3451,7 @@

                                                                  Submodules
                                                                  -has_subkey(subkey: str | AdfKey) bool[source]
                                                                  +has_subkey(subkey: str | AdfKey) bool[source]
                                                                  Parameters:

                                                                  subkey (str | AdfKey) – A key name or AdfKey object.

                                                                  @@ -3452,19 +3467,19 @@

                                                                  Submodules
                                                                  -is_block_key() bool[source]
                                                                  +is_block_key() bool[source]

                                                                  Return True if this key is a block key.

                                                                  -property key: str[source]
                                                                  +property key: str[source]

                                                                  The name of this key. If this is a block key, the name will be converted to upper cases.

                                                                  -remove_option(option: str | int) None[source]
                                                                  +remove_option(option: str | int) None[source]

                                                                  Remove an option.

                                                                  Parameters:
                                                                  @@ -3478,7 +3493,7 @@

                                                                  Submodules
                                                                  -remove_subkey(subkey)[source]
                                                                  +remove_subkey(subkey)[source]

                                                                  Remove the given subkey, if existed, from this AdfKey.

                                                                  Parameters:
                                                                  @@ -3489,19 +3504,19 @@

                                                                  Submodules
                                                                  -sub_keys = ('AtomDepQuality',)[source]
                                                                  +sub_keys = ('AtomDepQuality',)[source]

                                                                  -class AdfOutput(filename)[source]
                                                                  +class AdfOutput(filename)[source]

                                                                  Bases: object

                                                                  A basic ADF output file parser.

                                                                  -is_failed[source]
                                                                  +is_failed[source]

                                                                  Whether the ADF job is failed.

                                                                  Type:
                                                                  @@ -3512,7 +3527,7 @@

                                                                  Submodules
                                                                  -is_internal_crash[source]
                                                                  +is_internal_crash[source]

                                                                  Whether the job crashed. Please read ‘TAPE13’ of the ADF manual for more detail.

                                                                  @@ -3524,7 +3539,7 @@

                                                                  Submodules
                                                                  -error[source]
                                                                  +error[source]

                                                                  The error description.

                                                                  Type:
                                                                  @@ -3535,7 +3550,7 @@

                                                                  Submodules
                                                                  -run_type[source]
                                                                  +run_type[source]

                                                                  The RunType of this ADF job. Possible options are: ‘SinglePoint’, ‘GeometryOptimization’, ‘AnalyticalFreq’ and ‘NUmericalFreq’.

                                                                  @@ -3547,7 +3562,7 @@

                                                                  Submodules
                                                                  -final_energy[source]
                                                                  +final_energy[source]

                                                                  The final molecule energy (a.u).

                                                                  Type:
                                                                  @@ -3558,7 +3573,7 @@

                                                                  Submodules
                                                                  -final_structure[source]
                                                                  +final_structure[source]

                                                                  The final structure of the molecule.

                                                                  Type:
                                                                  @@ -3569,7 +3584,7 @@

                                                                  Submodules
                                                                  -energies[source]
                                                                  +energies[source]

                                                                  The energy of each cycle.

                                                                  Type:
                                                                  @@ -3580,7 +3595,7 @@

                                                                  Submodules
                                                                  -structures[source]
                                                                  +structures[source]

                                                                  The structure of each cycle If geometry optimization is performed.

                                                                  Type:
                                                                  @@ -3591,7 +3606,7 @@

                                                                  Submodules
                                                                  -frequencies[source]
                                                                  +frequencies[source]

                                                                  The frequencies of the molecule.

                                                                  Type:
                                                                  @@ -3602,7 +3617,7 @@

                                                                  Submodules
                                                                  -normal_modes[source]
                                                                  +normal_modes[source]

                                                                  The normal modes of the molecule.

                                                                  Type:
                                                                  @@ -3613,7 +3628,7 @@

                                                                  Submodules
                                                                  -freq_type[source]
                                                                  +freq_type[source]

                                                                  Either ‘Analytical’ or ‘Numerical’.

                                                                  Type:
                                                                  @@ -3632,14 +3647,14 @@

                                                                  Submodules
                                                                  -exception AdfOutputError[source]
                                                                  +exception AdfOutputError[source]

                                                                  Bases: Exception

                                                                  The default error class for errors raised by AdfOutput.

                                                                  -class AdfTask(operation='energy', basis_set=None, xc=None, title='ADF_RUN', units=None, geo_subkeys=None, scf=None, other_directives=None)[source]
                                                                  +class AdfTask(operation='energy', basis_set=None, xc=None, title='ADF_RUN', units=None, geo_subkeys=None, scf=None, other_directives=None)[source]

                                                                  Bases: MSONable

                                                                  Basic task for ADF. All settings in this class are independent of molecules.

                                                                  Notes

                                                                  @@ -3662,13 +3677,13 @@

                                                                  Submodules
                                                                  -as_dict()[source]
                                                                  +as_dict()[source]

                                                                  A JSON-serializable dict representation of self.

                                                                  -classmethod from_dict(dct: dict) Self[source]
                                                                  +classmethod from_dict(dct: dict) Self[source]

                                                                  Construct a MSONable AdfTask object from the JSON dict.

                                                                  Parameters:
                                                                  @@ -3682,37 +3697,37 @@

                                                                  Submodules
                                                                  -static get_default_basis_set()[source]
                                                                  +static get_default_basis_set()[source]

                                                                  Get Default basis set.

                                                                  -static get_default_geo()[source]
                                                                  +static get_default_geo()[source]

                                                                  Get ADFKey using default geometry.

                                                                  -static get_default_scf()[source]
                                                                  +static get_default_scf()[source]

                                                                  Get ADF using default SCF.

                                                                  -static get_default_units()[source]
                                                                  +static get_default_units()[source]

                                                                  Get Default units.

                                                                  -static get_default_xc()[source]
                                                                  +static get_default_xc()[source]

                                                                  Get ADFKey using default XC.

                                                                  -operations: ClassVar[dict[str, str]] = {'energy': 'Evaluate the single point energy.', 'freq': 'Same as frequencies.', 'frequencies': 'Compute second derivatives and print out an analysis of molecular vibrations.', 'numerical_frequencies': 'Compute molecular frequencies using numerical method.', 'optimize': 'Minimize the energy by varying the molecular structure.'}[source]
                                                                  +operations: ClassVar[dict[str, str]] = {'energy': 'Evaluate the single point energy.', 'freq': 'Same as frequencies.', 'frequencies': 'Compute second derivatives and print out an analysis of molecular vibrations.', 'numerical_frequencies': 'Compute molecular frequencies using numerical method.', 'optimize': 'Minimize the energy by varying the molecular structure.'}[source]
                                                                  @@ -3724,12 +3739,12 @@

                                                                  Submodules
                                                                  -class AseAtomsAdaptor[source]
                                                                  +class AseAtomsAdaptor[source]

                                                                  Bases: object

                                                                  Adaptor serves as a bridge between ASE Atoms and pymatgen objects.

                                                                  -static get_atoms(structure: SiteCollection, msonable: bool = True, **kwargs) MSONAtoms | Atoms[source]
                                                                  +static get_atoms(structure: SiteCollection, msonable: bool = True, **kwargs) MSONAtoms | Atoms[source]

                                                                  Get ASE Atoms object from pymatgen structure or molecule.

                                                                  Parameters:
                                                                  @@ -3750,7 +3765,7 @@

                                                                  Submodules
                                                                  -static get_molecule(atoms: ~ase.atoms.Atoms, cls: type[~pymatgen.core.structure.Molecule] = <class 'pymatgen.core.structure.Molecule'>, **cls_kwargs) Molecule[source]
                                                                  +static get_molecule(atoms: ~ase.atoms.Atoms, cls: type[~pymatgen.core.structure.Molecule] = <class 'pymatgen.core.structure.Molecule'>, **cls_kwargs) Molecule[source]

                                                                  Get pymatgen molecule from ASE Atoms.

                                                                  Parameters:
                                                                  @@ -3771,7 +3786,7 @@

                                                                  Submodules
                                                                  -static get_structure(atoms: ~ase.atoms.Atoms, cls: type[~pymatgen.core.structure.Structure] = <class 'pymatgen.core.structure.Structure'>, **cls_kwargs) Structure[source]
                                                                  +static get_structure(atoms: ~ase.atoms.Atoms, cls: type[~pymatgen.core.structure.Structure] = <class 'pymatgen.core.structure.Structure'>, **cls_kwargs) Structure[source]

                                                                  Get pymatgen structure from ASE Atoms.

                                                                  Parameters:
                                                                  @@ -3794,18 +3809,18 @@

                                                                  Submodules
                                                                  -class MSONAtoms(symbols=None, positions=None, numbers=None, tags=None, momenta=None, masses=None, magmoms=None, charges=None, scaled_positions=None, cell=None, pbc=None, celldisp=None, constraint=None, calculator=None, info=None, velocities=None)[source]
                                                                  +class MSONAtoms(symbols=None, positions=None, numbers=None, tags=None, momenta=None, masses=None, magmoms=None, charges=None, scaled_positions=None, cell=None, pbc=None, celldisp=None, constraint=None, calculator=None, info=None, velocities=None)[source]

                                                                  Bases: Atoms, MSONable

                                                                  A custom subclass of ASE Atoms that is MSONable, including .as_dict() and .from_dict() methods.

                                                                  -as_dict() dict[str, Any][source]
                                                                  +as_dict() dict[str, Any][source]

                                                                  A JSON serializable dict representation of an object.

                                                                  -classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                  +classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                  Parameters:

                                                                  d – Dict representation.

                                                                  @@ -3824,7 +3839,7 @@

                                                                  Submodules
                                                                  -class Mcsqs(structure: Structure)[source]
                                                                  +class Mcsqs(structure: Structure)[source]

                                                                  Bases: object

                                                                  Handle input/output for the crystal definition format used by mcsqs and other ATAT codes.

                                                                  @@ -3835,7 +3850,7 @@

                                                                  Submodules
                                                                  -static structure_from_str(data)[source]
                                                                  +static structure_from_str(data)[source]

                                                                  Parses a rndstr.in, lat.in or bestsqs.out file into pymatgen’s Structure format.

                                                                  @@ -3850,7 +3865,7 @@

                                                                  Submodules
                                                                  -to_str()[source]
                                                                  +to_str()[source]
                                                                  Returns:

                                                                  a structure in mcsqs rndstr.in format.

                                                                  @@ -3871,7 +3886,7 @@

                                                                  Submoduleshttps://openbabel.org.

                                                                  -class BabelMolAdaptor(mol: Molecule | OBMol | Molecule)[source]
                                                                  +class BabelMolAdaptor(mol: Molecule | openbabel.OBMol | pybel.Molecule)[source]

                                                                  Bases: object

                                                                  Adaptor serves as a bridge between OpenBabel’s Molecule and pymatgen’s Molecule.

                                                                  @@ -3883,13 +3898,13 @@

                                                                  Submodules
                                                                  -add_hydrogen() None[source]
                                                                  +add_hydrogen() None[source]

                                                                  Add hydrogens (make all hydrogen explicit).

                                                                  -confab_conformers(forcefield: str = 'mmff94', freeze_atoms: list[int] | None = None, rmsd_cutoff: float = 0.5, energy_cutoff: float = 50.0, conf_cutoff: int = 100000, verbose: bool = False) list[Molecule][source]
                                                                  +confab_conformers(forcefield: str = 'mmff94', freeze_atoms: list[int] | None = None, rmsd_cutoff: float = 0.5, energy_cutoff: float = 50.0, conf_cutoff: int = 100000, verbose: bool = False) list[Molecule][source]

                                                                  Conformer generation based on Confab to generate all diverse low-energy conformers for molecules. This is different from rotor_conformer or gen3d_conformer as it aims to not simply to find a low energy @@ -3920,7 +3935,7 @@

                                                                  Submodules
                                                                  -classmethod from_file(filename: str, file_format: str = 'xyz', return_all_molecules: bool = False) Self | list[Self][source]
                                                                  +classmethod from_file(filename: str, file_format: str = 'xyz', return_all_molecules: bool = False) Self | list[Self][source]

                                                                  Uses OpenBabel to read a molecule from a file in all supported formats.

                                                                  Parameters:
                                                                  @@ -3940,7 +3955,7 @@

                                                                  Submodules
                                                                  -classmethod from_molecule_graph(mol: MoleculeGraph) Self[source]
                                                                  +classmethod from_molecule_graph(mol: MoleculeGraph) Self[source]

                                                                  Read a molecule from a pymatgen MoleculeGraph object.

                                                                  Parameters:
                                                                  @@ -3954,7 +3969,7 @@

                                                                  Submodules
                                                                  -classmethod from_str(string_data: str, file_format: str = 'xyz') Self[source]
                                                                  +classmethod from_str(string_data: str, file_format: str = 'xyz') Self[source]

                                                                  Uses OpenBabel to read a molecule from a string in all supported formats.

                                                                  @@ -3972,7 +3987,7 @@

                                                                  Submodules
                                                                  -gen3d_conformer() None[source]
                                                                  +gen3d_conformer() None[source]

                                                                  A combined method to first generate 3D structures from 0D or 2D structures and then find the minimum energy conformer:

                                                                    @@ -3994,7 +4009,7 @@

                                                                    Submodules
                                                                    -localopt(forcefield: str = 'mmff94', steps: int = 500) None[source]
                                                                    +localopt(forcefield: str = 'mmff94', steps: int = 500) None[source]

                                                                    A wrapper to pybel’s localopt method to optimize a Molecule.

                                                                    Parameters:
                                                                    @@ -4009,7 +4024,7 @@

                                                                    Submodules
                                                                    -make3d(forcefield: str = 'mmff94', steps: int = 50) None[source]
                                                                    +make3d(forcefield: str = 'mmff94', steps: int = 50) None[source]

                                                                    A wrapper to pybel’s make3D method generate a 3D structure from a 2D or 0D structure. The 3D structure is made very quickly using a combination of rules @@ -4033,25 +4048,25 @@

                                                                    Submodules
                                                                    -property openbabel_mol[source]
                                                                    +property openbabel_mol[source]

                                                                    OpenBabel’s OBMol.

                                                                    -property pybel_mol: Molecule[source]
                                                                    +property pybel_mol: Molecule[source]

                                                                    Pybel’s Molecule object.

                                                                    -property pymatgen_mol: Molecule[source]
                                                                    +property pymatgen_mol: Molecule[source]

                                                                    Pymatgen Molecule object.

                                                                    -remove_bond(idx1: int, idx2: int) None[source]
                                                                    +remove_bond(idx1: int, idx2: int) None[source]

                                                                    Remove a bond from an openbabel molecule.

                                                                    Parameters:
                                                                    @@ -4065,7 +4080,7 @@

                                                                    Submodules
                                                                    -rotor_conformer(*rotor_args, algo: str = 'WeightedRotorSearch', forcefield: str = 'mmff94') None[source]
                                                                    +rotor_conformer(*rotor_args, algo: str = 'WeightedRotorSearch', forcefield: str = 'mmff94') None[source]

                                                                    Conformer search based on several Rotor Search algorithms of openbabel. If the input molecule is not 3D, make3d will be called (generate 3D structure, add hydrogen, a quick localopt). All hydrogen atoms need @@ -4092,7 +4107,7 @@

                                                                    Submodules
                                                                    -write_file(filename: str, file_format: str = 'xyz') None[source]
                                                                    +write_file(filename: str, file_format: str = 'xyz') None[source]

                                                                    Uses OpenBabel to output all supported formats.

                                                                    Parameters:
                                                                    @@ -4112,7 +4127,7 @@

                                                                    Submodules
                                                                    -class CifBlock(data: dict, loops: list[list[str]], header: str)[source]
                                                                    +class CifBlock(data: dict, loops: list[list[str]], header: str)[source]

                                                                    Bases: object

                                                                    Object for storing CIF data. All data is stored in a single dictionary. Data inside loops are stored in lists in the data dictionary, and @@ -4130,7 +4145,7 @@

                                                                    Submodules
                                                                    -classmethod from_str(string: str) Self[source]
                                                                    +classmethod from_str(string: str) Self[source]

                                                                    Read CifBlock from string.

                                                                    Parameters:
                                                                    @@ -4144,14 +4159,14 @@

                                                                    Submodules
                                                                    -max_len = 70[source]
                                                                    +max_len = 70[source]

                                                                    -class CifFile(data: dict[str, CifBlock], orig_string: str | None = None, comment: str | None = None)[source]
                                                                    +class CifFile(data: dict[str, CifBlock], orig_string: str | None = None, comment: str | None = None)[source]

                                                                    Bases: object

                                                                    Read and parse CifBlocks from a .cif file or string.

                                                                    @@ -4165,7 +4180,7 @@

                                                                    Submodules
                                                                    -classmethod from_file(filename: PathLike) Self[source]
                                                                    +classmethod from_file(filename: PathLike) Self[source]

                                                                    Read CifFile from a filename.

                                                                    Parameters:
                                                                    @@ -4179,7 +4194,7 @@

                                                                    Submodules
                                                                    -classmethod from_str(string: str) Self[source]
                                                                    +classmethod from_str(string: str) Self[source]

                                                                    Read CifFile from a string.

                                                                    Parameters:
                                                                    @@ -4195,7 +4210,7 @@

                                                                    Submodules
                                                                    -class CifParser(filename: PathLike | StringIO, occupancy_tolerance: float = 1.0, site_tolerance: float = 0.0001, frac_tolerance: float = 0.0001, check_cif: bool = True, comp_tol: float = 0.01)[source]
                                                                    +class CifParser(filename: PathLike | StringIO, occupancy_tolerance: float = 1.0, site_tolerance: float = 0.0001, frac_tolerance: float = 0.0001, check_cif: bool = True, comp_tol: float = 0.01)[source]

                                                                    Bases: object

                                                                    CIF file parser. Attempt to fix CIFs that are out-of-spec, but will issue warnings if corrections applied. These are also stored in the CifParser’s warnings attribute. @@ -4223,13 +4238,13 @@

                                                                    Submodules
                                                                    -as_dict() dict[source]
                                                                    +as_dict() dict[source]

                                                                    MSONable dict.

                                                                    -check(structure: Structure) str | None[source]
                                                                    +check(structure: Structure) str | None[source]

                                                                    Check whether a Structure created from CIF passes sanity checks.

                                                                    Checks:
                                                                      @@ -4269,7 +4284,7 @@

                                                                      Submodules
                                                                      -classmethod from_str(cif_string: str, **kwargs) Self[source]
                                                                      +classmethod from_str(cif_string: str, **kwargs) Self[source]

                                                                      Create a CifParser from a string.

                                                                      Parameters:
                                                                      @@ -4283,7 +4298,7 @@

                                                                      Submodules
                                                                      -get_bibtex_string() str[source]
                                                                      +get_bibtex_string() str[source]

                                                                      Get BibTeX reference from CIF file.

                                                                      Parameters:
                                                                      @@ -4297,7 +4312,7 @@

                                                                      Submodules
                                                                      -get_lattice(data: CifBlock, length_strings=('a', 'b', 'c'), angle_strings=('alpha', 'beta', 'gamma'), lattice_type=None) Lattice | None[source]
                                                                      +get_lattice(data: CifBlock, length_strings=('a', 'b', 'c'), angle_strings=('alpha', 'beta', 'gamma'), lattice_type=None) Lattice | None[source]

                                                                      Generate the lattice from the provided lattice parameters. In the absence of all six lattice parameters, the crystal system and necessary parameters are parsed.

                                                                      @@ -4305,7 +4320,7 @@

                                                                      Submodules
                                                                      -static get_lattice_no_exception(data: CifBlock, length_strings: tuple[str, str, str] = ('a', 'b', 'c'), angle_strings: tuple[str, str, str] = ('alpha', 'beta', 'gamma'), lattice_type: str | None = None) Lattice[source]
                                                                      +static get_lattice_no_exception(data: CifBlock, length_strings: tuple[str, str, str] = ('a', 'b', 'c'), angle_strings: tuple[str, str, str] = ('alpha', 'beta', 'gamma'), lattice_type: str | None = None) Lattice[source]

                                                                      Convert a CifBlock to a pymatgen Lattice.

                                                                      Parameters:
                                                                      @@ -4324,7 +4339,7 @@

                                                                      Submodules
                                                                      -get_magsymops(data: CifBlock) list[MagSymmOp][source]
                                                                      +get_magsymops(data: CifBlock) list[MagSymmOp][source]

                                                                      Equivalent to get_symops except for magnetic symmetry groups. Separate function since additional operation for time reversal symmetry (which changes magnetic moments on sites) needs to be returned.

                                                                      @@ -4332,7 +4347,7 @@

                                                                      Submodules
                                                                      -get_structures(*args, **kwargs) list[Structure][source]
                                                                      +get_structures(*args, **kwargs) list[Structure][source]

                                                                      Deprecated, use parse_structures instead. Only difference between these two methods is the default primitive=False in parse_structures. So parse_structures(primitive=True) is equivalent to the default @@ -4341,7 +4356,7 @@

                                                                      Submodules
                                                                      -get_symops(data: CifBlock) list[SymmOp][source]
                                                                      +get_symops(data: CifBlock) list[SymmOp][source]

                                                                      Get the symmetry operations, in order to generate symmetry equivalent positions. If no symops are present, the space group symbol is parsed, and symops are generated.

                                                                      @@ -4349,13 +4364,13 @@

                                                                      Submodules
                                                                      -property has_errors: bool[source]
                                                                      +property has_errors: bool[source]

                                                                      Whether there are errors/warnings detected in CIF parsing.

                                                                      -parse_structures(primitive: bool | None = None, symmetrized: bool = False, check_occu: bool = True, on_error: Literal['ignore', 'warn', 'raise'] = 'warn') list[Structure][source]
                                                                      +parse_structures(primitive: bool | None = None, symmetrized: bool = False, check_occu: bool = True, on_error: Literal['ignore', 'warn', 'raise'] = 'warn') list[Structure][source]

                                                                      Return list of structures in CIF file.

                                                                      Parameters:
                                                                      @@ -4392,7 +4407,7 @@

                                                                      Submodules
                                                                      -class CifWriter(struct: Structure, symprec: float | None = None, write_magmoms: bool = False, significant_figures: int = 8, angle_tolerance: float = 5, refine_struct: bool = True, write_site_properties: bool = False)[source]
                                                                      +class CifWriter(struct: Structure, symprec: float | None = None, write_magmoms: bool = False, significant_figures: int = 8, angle_tolerance: float = 5, refine_struct: bool = True, write_site_properties: bool = False)[source]

                                                                      Bases: object

                                                                      A wrapper around CifFile to write CIF files from pymatgen Structure.

                                                                      @@ -4418,13 +4433,13 @@

                                                                      Submodules
                                                                      -property cif_file: CifFile[source]
                                                                      +property cif_file: CifFile[source]

                                                                      CifFile associated with the CifWriter.

                                                                      -write_file(filename: str | Path, mode: Literal['w', 'a', 'wt', 'at'] = 'w') None[source]
                                                                      +write_file(filename: PathLike, mode: Literal['wt', 'at'] = 'wt') None[source]

                                                                      Write the CIF file.

                                                                      @@ -4432,7 +4447,7 @@

                                                                      Submodules
                                                                      -str2float(text: str) float[source]
                                                                      +str2float(text: str) float[source]

                                                                      Remove uncertainty brackets from strings and return the float.

                                                                      @@ -4442,7 +4457,7 @@

                                                                      Submodules
                                                                      -class PMGDir(dirname: str | Path)[source]
                                                                      +class PMGDir(dirname: str | Path)[source]

                                                                      Bases: Mapping

                                                                      User-friendly class to access all files in a directory as pymatgen objects in a dict. For now, only VASP files are implemented but there is no reason why this cannot be extended to other types of files. @@ -4461,12 +4476,12 @@

                                                                      Submodules
                                                                      -FILE_MAPPINGS: ClassVar = {'CHGCAR': 'pymatgen.io.vasp.Chgcar', 'CONTCAR': 'pymatgen.io.vasp.Poscar', 'DYNMAT': 'pymatgen.io.vasp.Dynmat', 'EIGENVAL': 'pymatgen.io.vasp.Eigenval', 'ELFCAR': 'pymatgen.io.vasp.Elfcar', 'IBZKPT': 'pymatgen.io.vasp.Kpoints', 'INCAR': 'pymatgen.io.vasp.Incar', 'KPOINTS': 'pymatgen.io.vasp.Kpoints', 'LOCPOT': 'pymatgen.io.vasp.Locpot', 'OSZICAR': 'pymatgen.io.vasp.Oszicar', 'OUTCAR': 'pymatgen.io.vasp.Outcar', 'POSCAR': 'pymatgen.io.vasp.Poscar', 'POTCAR': 'pymatgen.io.vasp.Potcar', 'PROCAR': 'pymatgen.io.vasp.Procar', 'WAVECAR': 'pymatgen.io.vasp.Wavecar', 'WAVEDER': 'pymatgen.io.vasp.Waveder', 'WSWQ': 'pymatgen.io.vasp.WSWQ', 'XDATCAR': 'pymatgen.io.vasp.Xdatcar', 'vasprun': 'pymatgen.io.vasp.Vasprun'}[source]
                                                                      +FILE_MAPPINGS: ClassVar = {'CHGCAR': 'pymatgen.io.vasp.Chgcar', 'CONTCAR': 'pymatgen.io.vasp.Poscar', 'DYNMAT': 'pymatgen.io.vasp.Dynmat', 'EIGENVAL': 'pymatgen.io.vasp.Eigenval', 'ELFCAR': 'pymatgen.io.vasp.Elfcar', 'IBZKPT': 'pymatgen.io.vasp.Kpoints', 'INCAR': 'pymatgen.io.vasp.Incar', 'KPOINTS': 'pymatgen.io.vasp.Kpoints', 'LOCPOT': 'pymatgen.io.vasp.Locpot', 'OSZICAR': 'pymatgen.io.vasp.Oszicar', 'OUTCAR': 'pymatgen.io.vasp.Outcar', 'POSCAR': 'pymatgen.io.vasp.Poscar', 'POTCAR': 'pymatgen.io.vasp.Potcar', 'PROCAR': 'pymatgen.io.vasp.Procar', 'WAVECAR': 'pymatgen.io.vasp.Wavecar', 'WAVEDER': 'pymatgen.io.vasp.Waveder', 'WSWQ': 'pymatgen.io.vasp.WSWQ', 'XDATCAR': 'pymatgen.io.vasp.Xdatcar', 'vasprun': 'pymatgen.io.vasp.Vasprun'}[source]

                                                                      -get_files_by_name(name: str) dict[str, Any][source]
                                                                      +get_files_by_name(name: str) dict[str, Any][source]

                                                                      Returns all files with a given name. E.g., if you want all the OUTCAR files, set name=”OUTCAR”.

                                                                      Returns:
                                                                      @@ -4480,7 +4495,7 @@

                                                                      Submodules
                                                                      -reset()[source]
                                                                      +reset()[source]

                                                                      Reset all loaded files and recheck the directory for files. Use this when the contents of the directory has changed.

                                                                      @@ -4489,14 +4504,15 @@

                                                                      Submodules
                                                                      -class VolumetricData(structure: Structure, data: dict[str, ndarray], distance_matrix: ndarray | None = None, data_aug: ndarray | None = None)[source]
                                                                      +class VolumetricData(structure: Structure, data: dict[str, ndarray], distance_matrix: ndarray | None = None, data_aug: ndarray | None = None)[source]

                                                                      Bases: MSONable

                                                                      -

                                                                      Simple volumetric object. Used to read LOCPOT/CHGCAR files produced by -vasp as well as cube files produced by other codes.

                                                                      +

                                                                      A representation of volumetric data commonly used in atomistic simulation outputs, +such as LOCPOT/CHGCAR files from VASP or cube files from other codes.

                                                                      -structure[source]
                                                                      -

                                                                      Structure associated with the Volumetric Data object.

                                                                      +structure[source] +

                                                                      The crystal structure associated with the volumetric data. +Represents the lattice and atomic coordinates using the Structure class.

                                                                      Type:

                                                                      Structure

                                                                      @@ -4506,8 +4522,9 @@

                                                                      Submodules
                                                                      -is_spin_polarized[source]
                                                                      -

                                                                      True if run is spin polarized.

                                                                      +is_spin_polarized[source] +

                                                                      Indicates if the simulation is spin-polarized. True for spin-polarized data +(contains both total and spin-difference densities), False otherwise.

                                                                      Type:

                                                                      bool

                                                                      @@ -4517,33 +4534,38 @@

                                                                      Submodules
                                                                      -dim[source]
                                                                      -

                                                                      Tuple of dimensions of volumetric grid in each direction (nx, ny, nz).

                                                                      +dim[source] +

                                                                      The dimensions of the 3D volumetric grid along each axis in the format +(nx, ny, nz), where nx, ny, and nz represent the number of grid points +in the x, y, and z directions, respectively.

                                                                      Type:
                                                                      -

                                                                      tuple

                                                                      +

                                                                      tuple[int, int, int]

                                                                      -data[source]
                                                                      -

                                                                      Actual data as a dict of {string: np.array}. The string are “total” -and “diff”, in accordance to the output format of Vasp LOCPOT and -CHGCAR files where the total spin density is written first, followed -by the difference spin density.

                                                                      +data[source] +

                                                                      A dictionary containing the volumetric data. Keys include: +- “total”: A 3D NumPy array representing the total spin density. +- “diff” (optional): A 3D NumPy array representing the spin-difference

                                                                      +
                                                                      +

                                                                      density (spin up - spin down). Typically present in spin-polarized calculations.

                                                                      +
                                                                      Type:
                                                                      -

                                                                      dict

                                                                      +

                                                                      dict[str, np.ndarray]

                                                                      -ngridpts[source]
                                                                      -

                                                                      Total number of grid points in volumetric data.

                                                                      +ngridpts[source] +

                                                                      The total number of grid points in the volumetric data, calculated as +nx * ny * nz using the grid dimensions.

                                                                      Type:

                                                                      int

                                                                      @@ -4569,13 +4591,13 @@

                                                                      Submodules
                                                                      -copy() Self[source]
                                                                      +copy() Self[source]

                                                                      Make a copy of VolumetricData object.

                                                                      -classmethod from_cube(filename: str | Path) Self[source]
                                                                      +classmethod from_cube(filename: str | Path) Self[source]

                                                                      Initialize the cube object and store the data as data.

                                                                      Parameters:
                                                                      @@ -4586,7 +4608,7 @@

                                                                      Submodules
                                                                      -classmethod from_hdf5(filename: str, **kwargs) Self[source]
                                                                      +classmethod from_hdf5(filename: str, **kwargs) Self[source]

                                                                      Reads VolumetricData from HDF5 file.

                                                                      Parameters:
                                                                      @@ -4600,7 +4622,7 @@

                                                                      Submodules
                                                                      -get_average_along_axis(ind)[source]
                                                                      +get_average_along_axis(ind)[source]

                                                                      Get the averaged total of the volumetric data a certain axis direction. For example, useful for visualizing Hartree Potentials from a LOCPOT file.

                                                                      @@ -4616,7 +4638,7 @@

                                                                      Submodules
                                                                      -get_axis_grid(ind)[source]
                                                                      +get_axis_grid(ind)[source]

                                                                      Get the grid for a particular axis.

                                                                      Parameters:
                                                                      @@ -4627,7 +4649,7 @@

                                                                      Submodules
                                                                      -get_integrated_diff(ind, radius, nbins=1)[source]
                                                                      +get_integrated_diff(ind, radius, nbins=1)[source]

                                                                      Get integrated difference of atom index ind up to radius. This can be an extremely computationally intensive process, depending on how many grid points are in the VolumetricData.

                                                                      @@ -4652,7 +4674,7 @@

                                                                      Submodules
                                                                      -linear_add(other, scale_factor=1.0)[source]
                                                                      +linear_add(other, scale_factor=1.0)[source]

                                                                      Method to do a linear sum of volumetric objects. Used by + and - operators as well. Returns a VolumetricData object containing the linear sum.

                                                                      @@ -4671,7 +4693,7 @@

                                                                      Submodules
                                                                      -linear_slice(p1, p2, n=100)[source]
                                                                      +linear_slice(p1, p2, n=100)[source]

                                                                      Get a linear slice of the volumetric data with n data points from point p1 to point p2, in the form of a list.

                                                                      @@ -4691,13 +4713,13 @@

                                                                      Submodules
                                                                      -scale(factor)[source]
                                                                      +scale(factor)[source]

                                                                      Scale the data in place by a factor.

                                                                      -property spin_data[source]
                                                                      +property spin_data[source]

                                                                      data}. Essentially, this provides the actual Spin.up and Spin.down data instead of the total and diff. Note that by definition, a @@ -4711,7 +4733,7 @@

                                                                      Submodules
                                                                      -to_cube(filename, comment: str = '')[source]
                                                                      +to_cube(filename, comment: str = '')[source]

                                                                      Write the total volumetric data to a cube file format, which consists of two comment lines, a header section defining the structure IN BOHR, and the data.

                                                                      @@ -4726,7 +4748,7 @@

                                                                      Submodules
                                                                      -to_hdf5(filename)[source]
                                                                      +to_hdf5(filename)[source]

                                                                      Write the VolumetricData to a HDF5 format, which is a highly optimized format for reading storing large data. The mapping of the VolumetricData to this file format is as follows:

                                                                      @@ -4750,7 +4772,7 @@

                                                                      Submodules
                                                                      -value_at(x, y, z)[source]
                                                                      +value_at(x, y, z)[source]

                                                                      Get a data value from self.data at a given point (x, y, z) in terms of fractional lattice parameters. Will be interpolated using a RegularGridInterpolator on self.data if (x, y, z) is not in the original @@ -4800,7 +4822,7 @@

                                                                      Submodules
                                                                      -class InputFile[source]
                                                                      +class InputFile[source]

                                                                      Bases: MSONable

                                                                      Abstract base class to represent a single input file. Note that use of this class is optional; it is possible create an InputSet that does not rely on underlying @@ -4811,7 +4833,7 @@

                                                                      Submodules
                                                                      -classmethod from_file(path: PathLike) None[source]
                                                                      +classmethod from_file(path: PathLike) None[source]

                                                                      Creates an InputFile object from a file.

                                                                      Parameters:
                                                                      @@ -4825,7 +4847,7 @@

                                                                      Submodules
                                                                      -abstract classmethod from_str(contents: str) None[source]
                                                                      +abstract classmethod from_str(contents: str) None[source]

                                                                      Create an InputFile object from a string.

                                                                      Parameters:
                                                                      @@ -4839,13 +4861,13 @@

                                                                      Submodules
                                                                      -abstract get_str() str[source]
                                                                      +abstract get_str() str[source]

                                                                      Return a string representation of an entire input file.

                                                                      -write_file(filename: PathLike) None[source]
                                                                      +write_file(filename: PathLike) None[source]

                                                                      Write the input file.

                                                                      Parameters:
                                                                      @@ -4858,14 +4880,14 @@

                                                                      Submodules
                                                                      -class InputGenerator[source]
                                                                      +class InputGenerator[source]

                                                                      Bases: MSONable

                                                                      InputGenerator classes serve as generators for Input objects. They contain settings or sets of instructions for how to create Input from a set of coordinates or a previous calculation directory.

                                                                      -abstract get_input_set(*args, **kwargs)[source]
                                                                      +abstract get_input_set(*args, **kwargs)[source]

                                                                      Generate an InputSet object. Typically the first argument to this method will be a Structure or other form of atomic coordinates.

                                                                      @@ -4874,7 +4896,7 @@

                                                                      Submodules
                                                                      -class InputSet(inputs: dict[PathLike, str | InputFile] | None = None, **kwargs)[source]
                                                                      +class InputSet(inputs: dict[PathLike, str | InputFile] | None = None, **kwargs)[source]

                                                                      Bases: MSONable, MutableMapping

                                                                      Abstract base class for all InputSet classes. InputSet are dict-like containers for all calculation input data.

                                                                      @@ -4901,7 +4923,7 @@

                                                                      Submodules
                                                                      -classmethod from_directory(directory: PathLike) None[source]
                                                                      +classmethod from_directory(directory: PathLike) None[source]

                                                                      Construct an InputSet from a directory of one or more files.

                                                                      Parameters:
                                                                      @@ -4912,7 +4934,7 @@

                                                                      Submodules
                                                                      -validate() bool[source]
                                                                      +validate() bool[source]

                                                                      A place to implement basic checks to verify the validity of an input set. Can be as simple or as complex as desired.

                                                                      Will raise a NotImplementedError unless overloaded by the inheriting class.

                                                                      @@ -4920,7 +4942,7 @@

                                                                      Submodules
                                                                      -write_input(directory: PathLike, make_dir: bool = True, overwrite: bool = True, zip_inputs: bool = False) None[source]
                                                                      +write_input(directory: PathLike, make_dir: bool = True, overwrite: bool = True, zip_inputs: bool = False) None[source]

                                                                      Write inputs to one or more files.

                                                                      Parameters:
                                                                      @@ -4940,7 +4962,7 @@

                                                                      Submodules
                                                                      -exception ParseError[source]
                                                                      +exception ParseError[source]

                                                                      Bases: SyntaxError

                                                                      Indicate a problem was encountered during parsing due to unexpected formatting.

                                                                      @@ -4951,7 +4973,7 @@

                                                                      Submodules
                                                                      -class Cssr(structure: Structure)[source]
                                                                      +class Cssr(structure: Structure)[source]

                                                                      Bases: object

                                                                      Basic object for working with Cssr file. Right now, only conversion from a Structure to a Cssr file is supported.

                                                                      @@ -4962,7 +4984,7 @@

                                                                      Submodules
                                                                      -classmethod from_file(filename: str | Path) Self[source]
                                                                      +classmethod from_file(filename: str | Path) Self[source]

                                                                      Reads a CSSR file to a Cssr object.

                                                                      Parameters:
                                                                      @@ -4976,7 +4998,7 @@

                                                                      Submodules
                                                                      -classmethod from_str(string: str) Self[source]
                                                                      +classmethod from_str(string: str) Self[source]

                                                                      Reads a string representation to a Cssr object.

                                                                      Parameters:
                                                                      @@ -4990,7 +5012,7 @@

                                                                      Submodules
                                                                      -write_file(filename)[source]
                                                                      +write_file(filename)[source]

                                                                      Write out a CSSR file.

                                                                      Parameters:
                                                                      @@ -5012,7 +5034,7 @@

                                                                      Submodules
                                                                      -class BSEOutput(filename)[source]
                                                                      +class BSEOutput(filename)[source]

                                                                      Bases: object

                                                                      A bse output file parser. The start…

                                                                      All energies are in eV.

                                                                      @@ -5025,7 +5047,7 @@

                                                                      Submodules
                                                                      -class BasisSetReader(filename)[source]
                                                                      +class BasisSetReader(filename)[source]

                                                                      Bases: object

                                                                      A basis set reader. Basis set are stored in data as a dict: @@ -5038,12 +5060,12 @@

                                                                      Submodules
                                                                      -infos_on_basis_set()[source]
                                                                      +infos_on_basis_set()[source]

                                                                      -set_n_nlmo()[source]
                                                                      +set_n_nlmo()[source]

                                                                      The number of nlm orbitals for the basis set.

                                                                      @@ -5051,7 +5073,7 @@

                                                                      Submodules
                                                                      -class FiestaInput(mol, correlation_grid: dict[str, str] | None = None, exc_dft_option: dict[str, str] | None = None, cohsex_options: dict[str, str] | None = None, gw_options: dict[str, str] | None = None, bse_tddft_options: dict[str, str] | None = None)[source]
                                                                      +class FiestaInput(mol, correlation_grid: dict[str, str] | None = None, exc_dft_option: dict[str, str] | None = None, cohsex_options: dict[str, str] | None = None, gw_options: dict[str, str] | None = None, bse_tddft_options: dict[str, str] | None = None)[source]

                                                                      Bases: MSONable

                                                                      Input File for Fiesta called “cell.in” by default (mandatory in Fiesta for now).

                                                                      @@ -5068,13 +5090,13 @@

                                                                      Submodules
                                                                      -as_dict()[source]
                                                                      +as_dict()[source]

                                                                      MSONable dict.

                                                                      -dump_bse_data_in_gw_run(BSE_dump=True)[source]
                                                                      +dump_bse_data_in_gw_run(BSE_dump=True)[source]

                                                                      Set the “do_bse” variable to 1 or 0 in cell.in.

                                                                      Parameters:
                                                                      @@ -5085,7 +5107,7 @@

                                                                      Submodules
                                                                      -dump_tddft_data_in_gw_run(tddft_dump: bool = True)[source]
                                                                      +dump_tddft_data_in_gw_run(tddft_dump: bool = True)[source]

                                                                      Set the do_tddft variable to 1 or 0 in cell.in.

                                                                      Parameters:
                                                                      @@ -5096,7 +5118,7 @@

                                                                      Submodules
                                                                      -classmethod from_dict(dct: dict) Self[source]
                                                                      +classmethod from_dict(dct: dict) Self[source]
                                                                      Parameters:

                                                                      dct (dict) – Dict representation.

                                                                      @@ -5109,7 +5131,7 @@

                                                                      Submodules
                                                                      -classmethod from_file(filename: str | Path) Self[source]
                                                                      +classmethod from_file(filename: str | Path) Self[source]

                                                                      Read an Fiesta input from a file. Currently tested to work with files generated from this class itself.

                                                                      @@ -5124,7 +5146,7 @@

                                                                      Submodules
                                                                      -classmethod from_str(string_input: str) Self[source]
                                                                      +classmethod from_str(string_input: str) Self[source]

                                                                      Read an FiestaInput from a string. Currently tested to work with files generated from this class itself.

                                                                      @@ -5139,25 +5161,25 @@

                                                                      Submodules
                                                                      -property infos_on_system[source]
                                                                      +property infos_on_system[source]

                                                                      Infos on initial parameters as in the log file of Fiesta.

                                                                      -static make_full_bse_densities_folder(folder)[source]
                                                                      +static make_full_bse_densities_folder(folder)[source]

                                                                      Mkdir “FULL_BSE_Densities” folder (needed for bse run) in the desired folder.

                                                                      -property molecule[source]
                                                                      +property molecule[source]

                                                                      Molecule associated with this FiestaInput.

                                                                      -set_auxiliary_basis_set(folder, auxiliary_folder, auxiliary_basis_set_type='aug_cc_pvtz')[source]
                                                                      +set_auxiliary_basis_set(folder, auxiliary_folder, auxiliary_basis_set_type='aug_cc_pvtz')[source]

                                                                      copy in the desired folder the needed auxiliary basis set “X2.ion” where X is a specie.

                                                                      Parameters:
                                                                      @@ -5172,7 +5194,7 @@

                                                                      Submodules
                                                                      -set_bse_options(n_excitations=10, nit_bse=200)[source]
                                                                      +set_bse_options(n_excitations=10, nit_bse=200)[source]

                                                                      Set parameters in cell.in for a BSE computation.

                                                                      Parameters:
                                                                      @@ -5188,7 +5210,7 @@

                                                                      Submodules
                                                                      -set_gw_options(nv_band=10, nc_band=10, n_iteration=5, n_grid=6, dE_grid=0.5)[source]
                                                                      +set_gw_options(nv_band=10, nc_band=10, n_iteration=5, n_grid=6, dE_grid=0.5)[source]

                                                                      Set parameters in cell.in for a GW computation.

                                                                      Parameters:
                                                                      @@ -5204,7 +5226,7 @@

                                                                      Submodules
                                                                      -write_file(filename: str | Path) None[source]
                                                                      +write_file(filename: str | Path) None[source]

                                                                      Write FiestaInput to a file.

                                                                      Parameters:
                                                                      @@ -5217,7 +5239,7 @@

                                                                      Submodules
                                                                      -class FiestaOutput(filename)[source]
                                                                      +class FiestaOutput(filename)[source]

                                                                      Bases: object

                                                                      A Fiesta output file parser.

                                                                      All energies are in eV.

                                                                      @@ -5230,7 +5252,7 @@

                                                                      Submodules
                                                                      -class FiestaRun(folder: str | None = None, grid: Tuple3Ints = (2, 2, 2), log_file: str = 'log')[source]
                                                                      +class FiestaRun(folder: str | None = None, grid: Tuple3Ints = (2, 2, 2), log_file: str = 'log')[source]

                                                                      Bases: MSONable

                                                                      To run FIESTA inside python:

                                                                      if grid is [x,x] then bse runs @@ -5249,19 +5271,19 @@

                                                                      Submodules
                                                                      -as_dict()[source]
                                                                      +as_dict()[source]

                                                                      MSONable dict.

                                                                      -bse_run()[source]
                                                                      +bse_run()[source]

                                                                      Perform BSE run.

                                                                      -classmethod from_dict(dct: dict) Self[source]
                                                                      +classmethod from_dict(dct: dict) Self[source]
                                                                      Parameters:

                                                                      dct (dict) – Dict representation.

                                                                      @@ -5274,7 +5296,7 @@

                                                                      Submodules
                                                                      -run()[source]
                                                                      +run()[source]

                                                                      Perform FIESTA (gw) run.

                                                                      @@ -5282,7 +5304,7 @@

                                                                      Submodules
                                                                      -class Nwchem2Fiesta(folder, filename='nwchem', log_file='log_n2f')[source]
                                                                      +class Nwchem2Fiesta(folder, filename='nwchem', log_file='log_n2f')[source]

                                                                      Bases: MSONable

                                                                      To run NWCHEM2FIESTA inside python:

                                                                      If nwchem.nw is the input, nwchem.out the output, and structure.movecs the @@ -5299,13 +5321,13 @@

                                                                      Submodules
                                                                      -as_dict()[source]
                                                                      +as_dict()[source]

                                                                      MSONable dict.

                                                                      -classmethod from_dict(dct: dict) Self[source]
                                                                      +classmethod from_dict(dct: dict) Self[source]
                                                                      Parameters:

                                                                      dct (dict) – Dict representation.

                                                                      @@ -5318,7 +5340,7 @@

                                                                      Submodules
                                                                      -run()[source]
                                                                      +run()[source]

                                                                      Perform actual NWCHEM2FIESTA run.

                                                                      @@ -5330,7 +5352,7 @@

                                                                      Submodules
                                                                      -class GaussianInput(mol, charge=None, spin_multiplicity=None, title=None, functional='HF', basis_set='6-31G(d)', route_parameters=None, input_parameters=None, link0_parameters=None, dieze_tag='#P', gen_basis=None)[source]
                                                                      +class GaussianInput(mol, charge=None, spin_multiplicity=None, title=None, functional='HF', basis_set='6-31G(d)', route_parameters=None, input_parameters=None, link0_parameters=None, dieze_tag='#P', gen_basis=None)[source]

                                                                      Bases: object

                                                                      A Gaussian input file.

                                                                      @@ -5370,13 +5392,13 @@

                                                                      Submodules
                                                                      -as_dict()[source]
                                                                      +as_dict()[source]

                                                                      MSONable dict.

                                                                      -classmethod from_dict(dct: dict) Self[source]
                                                                      +classmethod from_dict(dct: dict) Self[source]
                                                                      Parameters:

                                                                      dct – dict.

                                                                      @@ -5389,7 +5411,7 @@

                                                                      Submodules
                                                                      -classmethod from_file(filename: str | Path) Self[source]
                                                                      +classmethod from_file(filename: str | Path) Self[source]

                                                                      Creates GaussianInput from a file.

                                                                      Parameters:
                                                                      @@ -5403,7 +5425,7 @@

                                                                      Submodules
                                                                      -classmethod from_str(contents: str) Self[source]
                                                                      +classmethod from_str(contents: str) Self[source]

                                                                      Creates GaussianInput from a string.

                                                                      Parameters:
                                                                      @@ -5417,25 +5439,25 @@

                                                                      Submodules
                                                                      -get_cart_coords() str[source]
                                                                      +get_cart_coords() str[source]

                                                                      Return the Cartesian coordinates of the molecule.

                                                                      -get_zmatrix()[source]
                                                                      +get_zmatrix()[source]

                                                                      Get a z-matrix representation of the molecule.

                                                                      -property molecule[source]
                                                                      +property molecule[source]

                                                                      Molecule associated with this GaussianInput.

                                                                      -to_str(cart_coords=False)[source]
                                                                      +to_str(cart_coords=False)[source]

                                                                      Return GaussianInput string.

                                                                      Parameters:
                                                                      @@ -5447,22 +5469,22 @@

                                                                      Submodules
                                                                      -write_file(filename, cart_coords=False)[source]
                                                                      +write_file(filename, cart_coords=False)[source]

                                                                      Write the input string into a file.

                                                                      -

                                                                      Option: see __str__ method

                                                                      +

                                                                      Option: see __str__ method

                                                                      -class GaussianOutput(filename: PathLike)[source]
                                                                      +class GaussianOutput(filename: PathLike)[source]

                                                                      Bases: object

                                                                      Parser for Gaussian output files.

                                                                      Note: Still in early beta.

                                                                      -structures[source]
                                                                      +structures[source]

                                                                      All structures from the calculation in the standard orientation. If the symmetry is not considered, the standard orientation is not printed out and the input orientation is used instead. Check the standard_orientation @@ -5476,7 +5498,7 @@

                                                                      Submodules
                                                                      -structures_input_orientation[source]
                                                                      +structures_input_orientation[source]

                                                                      All structures from the calculation in the input orientation or the Z-matrix orientation (if an opt=z-matrix was requested).

                                                                      @@ -5488,7 +5510,7 @@

                                                                      Submodules
                                                                      -opt_structures[source]
                                                                      +opt_structures[source]

                                                                      All optimized structures from the calculation in the standard orientation, if the attribute ‘standard_orientation’ is True, otherwise in the input or the Z-matrix orientation.

                                                                      @@ -5501,7 +5523,7 @@

                                                                      Submodules
                                                                      -energies[source]
                                                                      +energies[source]

                                                                      All energies from the calculation.

                                                                      Type:
                                                                      @@ -5512,7 +5534,7 @@

                                                                      Submodules
                                                                      -eigenvalues[source]
                                                                      +eigenvalues[source]

                                                                      List of eigenvalues for the last geometry.

                                                                      Type:
                                                                      @@ -5523,7 +5545,7 @@

                                                                      Submodules
                                                                      -MO_coefficients[source]
                                                                      +MO_coefficients[source]

                                                                      Matrix of MO coefficients for the last geometry.

                                                                      Type:
                                                                      @@ -5534,7 +5556,7 @@

                                                                      Submodules
                                                                      -cart_forces[source]
                                                                      +cart_forces[source]

                                                                      All Cartesian forces from the calculation.

                                                                      Type:
                                                                      @@ -5545,7 +5567,7 @@

                                                                      Submodules
                                                                      -frequencies[source]
                                                                      +frequencies[source]

                                                                      A list for each freq calculation and for each mode of a dict with {

                                                                      @@ -5569,7 +5591,7 @@

                                                                      Submodules
                                                                      -hessian[source]
                                                                      +hessian[source]

                                                                      Matrix of second derivatives of the energy with respect to cartesian coordinates in the input orientation frame. Need #P in the route section in order to be in the output.

                                                                      @@ -5582,7 +5604,7 @@

                                                                      Submodules
                                                                      -properly_terminated[source]
                                                                      +properly_terminated[source]

                                                                      True if run has properly terminated.

                                                                      Type:
                                                                      @@ -5593,7 +5615,7 @@

                                                                      Submodules
                                                                      -is_pcm[source]
                                                                      +is_pcm[source]

                                                                      True if run is a PCM run.

                                                                      Type:
                                                                      @@ -5604,7 +5626,7 @@

                                                                      Submodules
                                                                      -is_spin[source]
                                                                      +is_spin[source]

                                                                      True if it is an unrestricted run.

                                                                      Type:
                                                                      @@ -5615,7 +5637,7 @@

                                                                      Submodules
                                                                      -stationary_type[source]
                                                                      +stationary_type[source]

                                                                      If it is a relaxation run, indicates whether it is a minimum (Minimum) or a saddle point (“Saddle”).

                                                                      @@ -5627,7 +5649,7 @@

                                                                      Submodules
                                                                      -corrections[source]
                                                                      +corrections[source]

                                                                      Thermochemical corrections if this run is a Freq run as a dict. Keys are “Zero-point”, “Thermal”, “Enthalpy” and “Gibbs Free Energy”.

                                                                      @@ -5639,7 +5661,7 @@

                                                                      Submodules
                                                                      -functional[source]
                                                                      +functional[source]

                                                                      Functional used in the run.

                                                                      Type:
                                                                      @@ -5650,7 +5672,7 @@

                                                                      Submodules
                                                                      -basis_set[source]
                                                                      +basis_set[source]

                                                                      Basis set used in the run.

                                                                      Type:
                                                                      @@ -5661,7 +5683,7 @@

                                                                      Submodules
                                                                      -route[source]
                                                                      +route[source]

                                                                      Additional route parameters as a dict. For example, {‘SP’:””, “SCF”:”Tight”}.

                                                                      @@ -5673,7 +5695,7 @@

                                                                      Submodules
                                                                      -dieze_tag[source]
                                                                      +dieze_tag[source]

                                                                      # preceding the route line, e.g. “#P”.

                                                                      Type:
                                                                      @@ -5684,7 +5706,7 @@

                                                                      Submodules
                                                                      -link0[source]
                                                                      +link0[source]

                                                                      Link0 parameters as a dict. e.g. {“%mem”: “1000MW”}.

                                                                      Type:
                                                                      @@ -5695,7 +5717,7 @@

                                                                      Submodules
                                                                      -charge[source]
                                                                      +charge[source]

                                                                      Charge for structure.

                                                                      Type:
                                                                      @@ -5706,7 +5728,7 @@

                                                                      Submodules
                                                                      -spin_multiplicity[source]
                                                                      +spin_multiplicity[source]

                                                                      Spin multiplicity for structure.

                                                                      Type:
                                                                      @@ -5717,7 +5739,7 @@

                                                                      Submodules
                                                                      -num_basis_func[source]
                                                                      +num_basis_func[source]

                                                                      Number of basis functions in the run.

                                                                      Type:
                                                                      @@ -5728,7 +5750,7 @@

                                                                      Submodules
                                                                      -electrons[source]
                                                                      +electrons[source]

                                                                      Number of alpha and beta electrons as (N alpha, N beta).

                                                                      Type:
                                                                      @@ -5739,7 +5761,7 @@

                                                                      Submodules
                                                                      -pcm[source]
                                                                      +pcm[source]

                                                                      PCM parameters and output if available.

                                                                      Type:
                                                                      @@ -5750,7 +5772,7 @@

                                                                      Submodules
                                                                      -errors[source]
                                                                      +errors[source]

                                                                      Error if not properly terminated (list to be completed in error_defs).

                                                                      Type:
                                                                      @@ -5761,7 +5783,7 @@

                                                                      Submodules
                                                                      -Mulliken_charges[source]
                                                                      +Mulliken_charges[source]

                                                                      Mulliken atomic charges.

                                                                      Type:
                                                                      @@ -5772,7 +5794,7 @@

                                                                      Submodules
                                                                      -eigenvectors[source]
                                                                      +eigenvectors[source]

                                                                      Matrix of shape (num_basis_func, num_basis_func). Each column is an eigenvectors and contains AO coefficients of an MO. eigenvectors[Spin] = mat(num_basis_func, num_basis_func).

                                                                      @@ -5785,7 +5807,7 @@

                                                                      Submodules
                                                                      -molecular_orbital[source]
                                                                      +molecular_orbital[source]

                                                                      MO development coefficients on AO in a more convenient array dict for each atom and basis set label. mo[Spin][OM j][atom i] = {AO_k: coeff, AO_k: coeff … }.

                                                                      @@ -5798,7 +5820,7 @@

                                                                      Submodules
                                                                      -atom_basis_labels[source]
                                                                      +atom_basis_labels[source]

                                                                      Labels of AO for each atoms. These labels are those used in the output of molecular orbital coefficients (POP=Full) and in the molecular_orbital array dict. atom_basis_labels[iatom] = [AO_k, AO_k, …].

                                                                      @@ -5811,7 +5833,7 @@

                                                                      Submodules
                                                                      -resumes[source]
                                                                      +resumes[source]

                                                                      List of gaussian data resume given at the end of the output file before the quotation. The resumes are given as string.

                                                                      @@ -5823,7 +5845,7 @@

                                                                      Submodules
                                                                      -title[source]
                                                                      +title[source]

                                                                      Title of the gaussian run.

                                                                      Type:
                                                                      @@ -5834,7 +5856,7 @@

                                                                      Submodules
                                                                      -standard_orientation[source]
                                                                      +standard_orientation[source]

                                                                      If True, the geometries stored in the structures are in the standard orientation. Else, the geometries are in the input orientation.

                                                                      @@ -5846,7 +5868,7 @@

                                                                      Submodules
                                                                      -bond_orders[source]
                                                                      +bond_orders[source]

                                                                      Dict of bond order values read in the output file such as: {(0, 1): 0.8709, (1, 6): 1.234, …}. The keys are the atom indexes and the values are the Wiberg bond indexes that are @@ -5860,26 +5882,26 @@

                                                                      Submodules
                                                                      -to_input()[source]
                                                                      +to_input()[source]

                                                                      Return a GaussianInput object using the last geometry and the same calculation parameters.

                                                                      -read_scan()[source]
                                                                      +read_scan()[source]

                                                                      Read a potential energy surface from a gaussian scan calculation.

                                                                      -get_scan_plot()[source]
                                                                      +get_scan_plot()[source]

                                                                      Get a matplotlib plot of the potential energy surface

                                                                      -save_scan_plot()[source]
                                                                      +save_scan_plot()[source]

                                                                      Save a matplotlib plot of the potential energy surface to a file

                                                                      @@ -5890,25 +5912,25 @@

                                                                      Submodules
                                                                      -as_dict()[source]
                                                                      +as_dict()[source]

                                                                      JSON-serializable dict representation.

                                                                      -property final_energy[source]
                                                                      +property final_energy[source]

                                                                      Final energy in Gaussian output.

                                                                      -property final_structure[source]
                                                                      +property final_structure[source]

                                                                      Final structure in Gaussian output.

                                                                      -get_scan_plot(coords=None)[source]
                                                                      +get_scan_plot(coords=None)[source]

                                                                      Get a matplotlib plot of the potential energy surface.

                                                                      Parameters:
                                                                      @@ -5919,7 +5941,7 @@

                                                                      Submodules
                                                                      -get_spectre_plot(sigma=0.05, step=0.01)[source]
                                                                      +get_spectre_plot(sigma=0.05, step=0.01)[source]

                                                                      Get a matplotlib plot of the UV-visible xas. Transitions are plotted as vertical lines and as a sum of normal functions with sigma with. The broadening is applied in energy and the xas is plotted as a function @@ -5948,7 +5970,7 @@

                                                                      Submodules
                                                                      -read_excitation_energies()[source]
                                                                      +read_excitation_energies()[source]

                                                                      Read a excitation energies after a TD-DFT calculation.

                                                                      Returns:
                                                                      @@ -5966,7 +5988,7 @@

                                                                      Submodules
                                                                      -read_scan()[source]
                                                                      +read_scan()[source]

                                                                      Read a potential energy surface from a gaussian scan calculation.

                                                                      Returns:
                                                                      @@ -5984,7 +6006,7 @@

                                                                      Submodules
                                                                      -save_scan_plot(filename='scan.pdf', img_format='pdf', coords=None)[source]
                                                                      +save_scan_plot(filename='scan.pdf', img_format='pdf', coords=None)[source]

                                                                      Save matplotlib plot of the potential energy surface to a file.

                                                                      Parameters:
                                                                      @@ -5999,7 +6021,7 @@

                                                                      Submodules
                                                                      -save_spectre_plot(filename='spectre.pdf', img_format='pdf', sigma=0.05, step=0.01)[source]
                                                                      +save_spectre_plot(filename='spectre.pdf', img_format='pdf', sigma=0.05, step=0.01)[source]

                                                                      Save matplotlib plot of the spectre to a file.

                                                                      Parameters:
                                                                      @@ -6015,7 +6037,7 @@

                                                                      Submodules
                                                                      -to_input(mol=None, charge=None, spin_multiplicity=None, title=None, functional=None, basis_set=None, route_parameters=None, input_parameters=None, link0_parameters=None, dieze_tag=None, cart_coords=False)[source]
                                                                      +to_input(mol=None, charge=None, spin_multiplicity=None, title=None, functional=None, basis_set=None, route_parameters=None, input_parameters=None, link0_parameters=None, dieze_tag=None, cart_coords=False)[source]

                                                                      Create a new input object using by default the last geometry read in the output file and with the same calculation parameters. Arguments are the same as GaussianInput class.

                                                                      @@ -6033,7 +6055,7 @@

                                                                      Submodules
                                                                      -read_route_line(route)[source]
                                                                      +read_route_line(route)[source]

                                                                      read route line in gaussian input/output and return functional basis_set and a dictionary of other route parameters.

                                                                      @@ -6056,7 +6078,7 @@

                                                                      Submodules

                                                                      pymatgen.io.icet module

                                                                      -class IcetSQS(structure: Structure, scaling: int, instances: int | None, cluster_cutoffs: dict[int, float], sqs_method: str | None = None, sqs_kwargs: dict | None = None)[source]
                                                                      +class IcetSQS(structure: Structure, scaling: int, instances: int | None, cluster_cutoffs: dict[int, float], sqs_method: str | None = None, sqs_kwargs: dict | None = None)[source]

                                                                      Bases: object

                                                                      Interface to the Icet library of SQS structure generation tools.

                                                                      https://icet.materialsmodeling.org

                                                                      @@ -6084,7 +6106,7 @@

                                                                      Submodules
                                                                      -enumerate_sqs_structures(cluster_space: _ClusterSpace | None = None) list[source]
                                                                      +enumerate_sqs_structures(cluster_space: _ClusterSpace | None = None) list[source]

                                                                      Generate an SQS by enumeration of all possible arrangements.

                                                                      Adapted from icet.tools.structure_generation.generate_sqs_by_enumeration to accommodate multiprocessing.

                                                                      @@ -6111,7 +6133,7 @@

                                                                      Submodules
                                                                      -get_icet_sqs_obj(material: Atoms | Structure, cluster_space: _ClusterSpace | None = None) float[source]
                                                                      +get_icet_sqs_obj(material: Atoms | Structure, cluster_space: _ClusterSpace | None = None) float[source]

                                                                      Get the SQS objective function.

                                                                      Parameters:
                                                                      @@ -6131,13 +6153,13 @@

                                                                      Submodules
                                                                      -monte_carlo_sqs_structures() list[source]
                                                                      +monte_carlo_sqs_structures() list[source]

                                                                      Run self.instances Monte Carlo SQS search with Icet.

                                                                      -run() Sqs[source]
                                                                      +run() Sqs[source]

                                                                      Run the SQS search with icet.

                                                                      Returns:
                                                                      @@ -6148,12 +6170,12 @@

                                                                      Submodules
                                                                      -sqs_kwarg_names: ClassVar[dict[str, tuple[str, ...]]] = {'enumeration': ('include_smaller_cells', 'pbc', 'optimality_weight', 'tol'), 'monte_carlo': ('include_smaller_cells', 'pbc', 'T_start', 'T_stop', 'n_steps', 'optimality_weight', 'random_seed', 'tol')}[source]
                                                                      +sqs_kwarg_names: ClassVar[dict[str, tuple[str, ...]]] = {'enumeration': ('include_smaller_cells', 'pbc', 'optimality_weight', 'tol'), 'monte_carlo': ('include_smaller_cells', 'pbc', 'T_start', 'T_stop', 'n_steps', 'optimality_weight', 'random_seed', 'tol')}[source]

                                                                      -sqs_methods: tuple[str, ...] = ('enumeration', 'monte_carlo')[source]
                                                                      +sqs_methods: tuple[str, ...] = ('enumeration', 'monte_carlo')[source]
                                                                      @@ -6165,12 +6187,12 @@

                                                                      Submodules
                                                                      -class JarvisAtomsAdaptor[source]
                                                                      +class JarvisAtomsAdaptor[source]

                                                                      Bases: object

                                                                      Adaptor serves as a bridge between JARVIS Atoms and pymatgen objects.

                                                                      -static get_atoms(structure)[source]
                                                                      +static get_atoms(structure)[source]

                                                                      Get JARVIS Atoms object from pymatgen structure.

                                                                      Parameters:
                                                                      @@ -6184,7 +6206,7 @@

                                                                      Submodules
                                                                      -static get_structure(atoms)[source]
                                                                      +static get_structure(atoms)[source]

                                                                      Get pymatgen structure from JARVIS Atoms.

                                                                      Parameters:
                                                                      @@ -6206,12 +6228,12 @@

                                                                      Submodules
                                                                      -class LMTOCopl(filename='COPL', to_eV=False)[source]
                                                                      +class LMTOCopl(filename='COPL', to_eV=False)[source]

                                                                      Bases: object

                                                                      Read COPL files, which contain COHP data.

                                                                      -cohp_data[source]
                                                                      +cohp_data[source]

                                                                      Contains the COHP data of the form: {bond: {“COHP”: {Spin.up: cohps, Spin.down:cohps},

                                                                      @@ -6227,7 +6249,7 @@

                                                                      Submodules
                                                                      -efermi[source]
                                                                      +efermi[source]

                                                                      The Fermi energy in Ry or eV.

                                                                      Type:
                                                                      @@ -6238,7 +6260,7 @@

                                                                      Submodules
                                                                      -energies[source]
                                                                      +energies[source]

                                                                      Sequence of energies in Ry or eV.

                                                                      Type:
                                                                      @@ -6249,7 +6271,7 @@

                                                                      Submodules
                                                                      -is_spin_polarized[source]
                                                                      +is_spin_polarized[source]

                                                                      True if the calculation is spin-polarized.

                                                                      Type:
                                                                      @@ -6271,7 +6293,7 @@

                                                                      Submodules
                                                                      -class LMTOCtrl(structure: Structure, header: str | None = None, version: str = 'LMASA-47')[source]
                                                                      +class LMTOCtrl(structure: Structure, header: str | None = None, version: str = 'LMASA-47')[source]

                                                                      Bases: object

                                                                      Parse CTRL files from the Stuttgart LMTO-ASA code. Currently, only HEADER, VERS and the structure can be used.

                                                                      @@ -6287,7 +6309,7 @@

                                                                      Submodules
                                                                      -as_dict()[source]
                                                                      +as_dict()[source]

                                                                      Get the CTRL as a dictionary. “SITE” and “CLASS” are of the form {‘CATEGORY’: {‘TOKEN’: value}}, the rest is of the form ‘TOKEN’/’CATEGORY’: value. It gets the conventional standard @@ -6298,7 +6320,7 @@

                                                                      Submodules
                                                                      -classmethod from_dict(dct: dict) Self[source]
                                                                      +classmethod from_dict(dct: dict) Self[source]

                                                                      Creates a CTRL file object from a dictionary. The dictionary must contain the items “ALAT”, PLAT” and “SITE”.

                                                                      @@ -6323,7 +6345,7 @@

                                                                      Submodules
                                                                      -classmethod from_file(filename: str | Path = 'CTRL', **kwargs) Self[source]
                                                                      +classmethod from_file(filename: str | Path = 'CTRL', **kwargs) Self[source]

                                                                      Creates a CTRL file object from an existing file.

                                                                      Parameters:
                                                                      @@ -6337,7 +6359,7 @@

                                                                      Submodules
                                                                      -classmethod from_str(data: str, sigfigs: int = 8) Self[source]
                                                                      +classmethod from_str(data: str, sigfigs: int = 8) Self[source]

                                                                      Creates a CTRL file object from a string. This will mostly be used to read an LMTOCtrl object from a CTRL file. Empty spheres are ignored.

                                                                      @@ -6353,14 +6375,14 @@

                                                                      Submodules
                                                                      -get_str(sigfigs=8) str[source]
                                                                      +get_str(sigfigs=8) str[source]

                                                                      Generate the string representation of the CTRL file. This is the minimal CTRL file necessary to execute lmhart.run.

                                                                      -write_file(filename='CTRL', **kwargs)[source]
                                                                      +write_file(filename='CTRL', **kwargs)[source]

                                                                      Write a CTRL file with structure, HEADER, and VERS that can be used as input for lmhart.run.

                                                                      @@ -6375,7 +6397,7 @@

                                                                      Submodules
                                                                      -add_atoms(molecule: Molecule, organized_cps: dict[str, dict[Any, dict[str, Any]]], bond_atom_criterion: Literal['qtaim', 'distance', 'combined'] = 'combined', dist_threshold_bond: float = 1.0, dist_threshold_ring_cage: float = 3.0, distance_margin: float = 0.5) dict[str, dict[str, dict[str, Any]]][source]
                                                                      +add_atoms(molecule: Molecule, organized_cps: dict[str, dict[Any, dict[str, Any]]], bond_atom_criterion: Literal['qtaim', 'distance', 'combined'] = 'combined', dist_threshold_bond: float = 1.0, dist_threshold_ring_cage: float = 3.0, distance_margin: float = 0.5) dict[str, dict[str, dict[str, Any]]][source]

                                                                      Modify bond, ring, and cage CPs to include information about surrounding critical points. Bonds will include information about the atoms that make up the bond. Rings will include the names of neighboring bonds and the indices of the atoms involved, and cages will include information on neighboring rings, bonds, and the atoms @@ -6415,7 +6437,7 @@

                                                                      Submodules
                                                                      -extract_info_from_cp_text(lines_split: list[list[str]], cp_type: Literal['atom', 'bond', 'ring', 'cage'], conditionals: dict[str, list[str]]) tuple[str, dict[str, Any]][source]
                                                                      +extract_info_from_cp_text(lines_split: list[list[str]], cp_type: Literal['atom', 'bond', 'ring', 'cage'], conditionals: dict[str, list[str]]) tuple[str, dict[str, Any]][source]

                                                                      Extract specific information from a Multiwfn QTAIM output.

                                                                      Parameters:
                                                                      @@ -6438,7 +6460,7 @@

                                                                      Submodules
                                                                      -get_qtaim_descs(file: PathLike) dict[str, dict[str, Any]][source]
                                                                      +get_qtaim_descs(file: PathLike) dict[str, dict[str, Any]][source]

                                                                      Parse CPprop file from multiwfn by parsing each individual critical-point section.

                                                                      Parameters:
                                                                      @@ -6455,7 +6477,7 @@

                                                                      Submodules
                                                                      -map_atoms_cps(molecule: Molecule, atom_cp_dict: dict[str, dict[str, Any]], max_distance: float = 0.5) tuple[dict[int, dict[str, Any]], list[int]][source]
                                                                      +map_atoms_cps(molecule: Molecule, atom_cp_dict: dict[str, dict[str, Any]], max_distance: float = 0.5) tuple[dict[int, dict[str, Any]], list[int]][source]

                                                                      Connect atom CPs to atoms by their positions.

                                                                      Parameters:
                                                                      @@ -6483,7 +6505,7 @@

                                                                      Submodules
                                                                      -match_atom_cp(molecule: Molecule, index: int, atom_cp_dict: dict[str, dict[str, Any]], max_distance: float = 0.5) tuple[str | None, dict][source]
                                                                      +match_atom_cp(molecule: Molecule, index: int, atom_cp_dict: dict[str, dict[str, Any]], max_distance: float = 0.5) tuple[str | None, dict][source]

                                                                      From a dictionary with an atom’s position and element symbol, find the corresponding cp in the atom CP dictionary

                                                                      Parameters:
                                                                      @@ -6512,7 +6534,7 @@

                                                                      Submodules
                                                                      -parse_cp(lines: list[str]) tuple[str | None, dict[str, Any]][source]
                                                                      +parse_cp(lines: list[str]) tuple[str | None, dict[str, Any]][source]

                                                                      Parse information from a single QTAIM critical point.

                                                                      Parameters:
                                                                      @@ -6530,7 +6552,7 @@

                                                                      Submodules
                                                                      -process_multiwfn_qtaim(molecule: Molecule, file: PathLike, bond_atom_criterion: Literal['qtaim', 'distance'] = 'distance', max_distance_atom: float = 0.5, dist_threshold_bond: float = 1.0, dist_threshold_ring_cage: float = 3.0, distance_margin: float = 0.5) dict[str, dict[Any, dict[str, Any]]][source]
                                                                      +process_multiwfn_qtaim(molecule: Molecule, file: PathLike, bond_atom_criterion: Literal['qtaim', 'distance'] = 'distance', max_distance_atom: float = 0.5, dist_threshold_bond: float = 1.0, dist_threshold_ring_cage: float = 3.0, distance_margin: float = 0.5) dict[str, dict[Any, dict[str, Any]]][source]

                                                                      Process quantum theory of atoms in molecules (QTAIM) outputs from Multiwfn.

                                                                      Parameters:
                                                                      @@ -6568,7 +6590,7 @@

                                                                      Submodules
                                                                      -separate_cps_by_type(qtaim_descs: dict[Any, dict[str, Any]]) dict[str, dict[Any, dict[str, Any]]][source]
                                                                      +separate_cps_by_type(qtaim_descs: dict[Any, dict[str, Any]]) dict[str, dict[Any, dict[str, Any]]][source]

                                                                      Separates QTAIM descriptors by type (atom, bond, ring, or cage)

                                                                      Parameters:
                                                                      @@ -6617,7 +6639,7 @@

                                                                      Submodules
                                                                      -class NwInput(mol, tasks, directives=None, geometry_options=('units', 'angstroms'), symmetry_options=None, memory_options=None)[source]
                                                                      +class NwInput(mol, tasks, directives=None, geometry_options=('units', 'angstroms'), symmetry_options=None, memory_options=None)[source]

                                                                      Bases: MSONable

                                                                      An object representing a Nwchem input file, which is essentially a list of tasks on a particular molecule.

                                                                      @@ -6642,13 +6664,13 @@

                                                                      Submodules
                                                                      -as_dict()[source]
                                                                      +as_dict()[source]

                                                                      Get MSONable dict.

                                                                      -classmethod from_dict(dct: dict) Self[source]
                                                                      +classmethod from_dict(dct: dict) Self[source]
                                                                      Parameters:

                                                                      dct (dict) – Dict representation.

                                                                      @@ -6661,7 +6683,7 @@

                                                                      Submodules
                                                                      -classmethod from_file(filename: str | Path) Self[source]
                                                                      +classmethod from_file(filename: str | Path) Self[source]

                                                                      Read an NwInput from a file. Currently tested to work with files generated from this class itself.

                                                                      @@ -6676,7 +6698,7 @@

                                                                      Submodules
                                                                      -classmethod from_str(string_input: str) Self[source]
                                                                      +classmethod from_str(string_input: str) Self[source]

                                                                      Read an NwInput from a string. Currently tested to work with files generated from this class itself.

                                                                      @@ -6691,13 +6713,13 @@

                                                                      Submodules
                                                                      -property molecule[source]
                                                                      +property molecule[source]

                                                                      Molecule associated with this GaussianInput.

                                                                      -write_file(filename)[source]
                                                                      +write_file(filename)[source]
                                                                      Parameters:

                                                                      filename (str) – Filename.

                                                                      @@ -6709,14 +6731,14 @@

                                                                      Submodules
                                                                      -exception NwInputError[source]
                                                                      +exception NwInputError[source]

                                                                      Bases: Exception

                                                                      Error class for NwInput.

                                                                      -class NwOutput(filename)[source]
                                                                      +class NwOutput(filename)[source]

                                                                      Bases: object

                                                                      A Nwchem output file parser. Very basic for now - supports only dft and only parses energies and geometries. Please note that Nwchem typically @@ -6729,7 +6751,7 @@

                                                                      Submodules
                                                                      -get_excitation_spectrum(width=0.1, npoints=2000)[source]
                                                                      +get_excitation_spectrum(width=0.1, npoints=2000)[source]

                                                                      Generate an excitation spectra from the singlet roots of TDDFT calculations.

                                                                      Parameters:
                                                                      @@ -6750,7 +6772,7 @@

                                                                      Submodules
                                                                      -parse_tddft()[source]
                                                                      +parse_tddft()[source]

                                                                      Parses TDDFT roots. Adapted from nw_spectrum.py script.

                                                                      Returns:
                                                                      @@ -6770,7 +6792,7 @@

                                                                      Submodules
                                                                      -class NwTask(charge, spin_multiplicity, basis_set, basis_set_option='cartesian', title=None, theory='dft', operation='optimize', theory_directives=None, alternate_directives=None)[source]
                                                                      +class NwTask(charge, spin_multiplicity, basis_set, basis_set_option='cartesian', title=None, theory='dft', operation='optimize', theory_directives=None, alternate_directives=None)[source]

                                                                      Bases: MSONable

                                                                      Base task for Nwchem.

                                                                      Very flexible arguments to support many types of potential setups. @@ -6805,13 +6827,13 @@

                                                                      Submodules
                                                                      -as_dict()[source]
                                                                      +as_dict()[source]

                                                                      Get MSONable dict.

                                                                      -classmethod dft_task(mol, xc='b3lyp', **kwargs)[source]
                                                                      +classmethod dft_task(mol, xc='b3lyp', **kwargs)[source]

                                                                      A class method for quickly creating DFT tasks with optional cosmo parameter .

                                                                      @@ -6828,7 +6850,7 @@

                                                                      Submodules
                                                                      -classmethod esp_task(mol, **kwargs)[source]
                                                                      +classmethod esp_task(mol, **kwargs)[source]

                                                                      A class method for quickly creating ESP tasks with RESP charge fitting.

                                                                      @@ -6844,7 +6866,7 @@

                                                                      Submodules
                                                                      -classmethod from_dict(dct: dict) Self[source]
                                                                      +classmethod from_dict(dct: dict) Self[source]
                                                                      Parameters:

                                                                      dct (dict) – Dict representation.

                                                                      @@ -6857,7 +6879,7 @@

                                                                      Submodules
                                                                      -classmethod from_molecule(mol, theory, charge=None, spin_multiplicity=None, basis_set='6-31g', basis_set_option='cartesian', title=None, operation='optimize', theory_directives=None, alternate_directives=None) Self[source]
                                                                      +classmethod from_molecule(mol, theory, charge=None, spin_multiplicity=None, basis_set='6-31g', basis_set_option='cartesian', title=None, operation='optimize', theory_directives=None, alternate_directives=None) Self[source]

                                                                      Very flexible arguments to support many types of potential setups. Users should use more friendly static methods unless they need the flexibility.

                                                                      @@ -6894,12 +6916,12 @@

                                                                      Submodules
                                                                      -operations: ClassVar[dict[str, str]] = {'': 'dummy', 'dynamics': 'Perform classical molecular dynamics.', 'energy': 'Evaluate the single point energy.', 'freq': 'Same as frequencies.', 'frequencies': 'Compute second derivatives and print out an analysis of molecular vibrations.', 'gradient': 'Evaluate the derivative of the energy with respect to nuclear coordinates.', 'hessian': 'Compute second derivatives.', 'optimize': 'Minimize the energy by varying the molecular structure.', 'property': 'Calculate the properties for the wave function.', 'saddle': 'Conduct a search for a transition state (or saddle point).', 'thermodynamics': 'Perform multi-configuration thermodynamic integration using classical MD.', 'vscf': 'Compute anharmonic contributions to the vibrational modes.'}[source]
                                                                      +operations: ClassVar[dict[str, str]] = {'': 'dummy', 'dynamics': 'Perform classical molecular dynamics.', 'energy': 'Evaluate the single point energy.', 'freq': 'Same as frequencies.', 'frequencies': 'Compute second derivatives and print out an analysis of molecular vibrations.', 'gradient': 'Evaluate the derivative of the energy with respect to nuclear coordinates.', 'hessian': 'Compute second derivatives.', 'optimize': 'Minimize the energy by varying the molecular structure.', 'property': 'Calculate the properties for the wave function.', 'saddle': 'Conduct a search for a transition state (or saddle point).', 'thermodynamics': 'Perform multi-configuration thermodynamic integration using classical MD.', 'vscf': 'Compute anharmonic contributions to the vibrational modes.'}[source]

                                                                      -theories: ClassVar[dict[str, str]] = {'band': 'Pseudopotential plane-wave DFT for solids using NWPW', 'ccsd': 'Coupled-cluster single and double excitations', 'ccsd(t)': 'Coupled-cluster linearized triples approximation', 'ccsd+t(ccsd)': 'Fourth order triples contribution', 'dft': 'DFT', 'direct_mp2': 'MP2 using a full-direct algorithm', 'esp': 'ESP', 'g3gn': 'some description', 'mcscf': 'Multiconfiguration SCF', 'md': 'Classical molecular dynamics simulation', 'mp2': 'MP2 using a semi-direct algorithm', 'pspw': 'Pseudopotential plane-wave DFT for molecules and insulating solids using NWPW', 'rimp2': 'MP2 using the RI approximation', 'scf': 'Hartree-Fock', 'selci': 'Selected CI with perturbation correction', 'sodft': 'Spin-Orbit DFT', 'tce': 'Tensor Contraction Engine', 'tddft': 'Time Dependent DFT'}[source]
                                                                      +theories: ClassVar[dict[str, str]] = {'band': 'Pseudopotential plane-wave DFT for solids using NWPW', 'ccsd': 'Coupled-cluster single and double excitations', 'ccsd(t)': 'Coupled-cluster linearized triples approximation', 'ccsd+t(ccsd)': 'Fourth order triples contribution', 'dft': 'DFT', 'direct_mp2': 'MP2 using a full-direct algorithm', 'esp': 'ESP', 'g3gn': 'some description', 'mcscf': 'Multiconfiguration SCF', 'md': 'Classical molecular dynamics simulation', 'mp2': 'MP2 using a semi-direct algorithm', 'pspw': 'Pseudopotential plane-wave DFT for molecules and insulating solids using NWPW', 'rimp2': 'MP2 using the RI approximation', 'scf': 'Hartree-Fock', 'selci': 'Selected CI with perturbation correction', 'sodft': 'Spin-Orbit DFT', 'tce': 'Tensor Contraction Engine', 'tddft': 'Time Dependent DFT'}[source]

                                                                      @@ -6910,7 +6932,7 @@

                                                                      Submodules
                                                                      -add_conformer(openff_mol: Molecule, geometry: Molecule | None) tuple[Molecule, dict[int, int]][source]
                                                                      +add_conformer(openff_mol: tk.Molecule, geometry: Molecule | None) tuple[tk.Molecule, dict[int, int]][source]

                                                                      Add conformers to an OpenFF Molecule based on the provided geometry.

                                                                      If a geometry is provided, infers an OpenFF Molecule from it, finds an atom mapping between the inferred molecule and the @@ -6940,7 +6962,7 @@

                                                                      Submodules
                                                                      -assign_partial_charges(openff_mol: Molecule, atom_map: dict[int, int], charge_method: str, partial_charges: None | list[float]) Molecule[source]
                                                                      +assign_partial_charges(openff_mol: tk.Molecule, atom_map: dict[int, int], charge_method: str, partial_charges: None | list[float]) tk.Molecule[source]

                                                                      Assign partial charges to an OpenFF Molecule.

                                                                      If partial charges are provided, assigns them to the molecule based on the atom mapping. If the molecule has only one atom, @@ -6968,7 +6990,7 @@

                                                                      Submodules
                                                                      -create_openff_mol(smile: str, geometry: Molecule | str | Path | None = None, charge_scaling: float = 1, partial_charges: list[float] | None = None, backup_charge_method: str = 'am1bcc') Molecule[source]
                                                                      +create_openff_mol(smile: str, geometry: Molecule | str | Path | None = None, charge_scaling: float = 1, partial_charges: list[float] | None = None, backup_charge_method: str = 'am1bcc') tk.Molecule[source]

                                                                      Create an OpenFF Molecule from a SMILES string and optional geometry.

                                                                      Constructs an OpenFF Molecule from the provided SMILES string, adds conformers based on the provided geometry (if @@ -7000,7 +7022,7 @@

                                                                      Submodules
                                                                      -get_atom_map(inferred_mol: Molecule, openff_mol: Molecule) tuple[bool, dict[int, int]][source]
                                                                      +get_atom_map(inferred_mol: tk.Molecule, openff_mol: tk.Molecule) tuple[bool, dict[int, int]][source]

                                                                      Compute an atom mapping between two OpenFF Molecules.

                                                                      Attempts to find an isomorphism between the molecules, considering various matching criteria such as formal charges, stereochemistry, and bond orders. Returns the atom @@ -7027,7 +7049,7 @@

                                                                      Submodules
                                                                      -infer_openff_mol(mol_geometry: Molecule) Molecule[source]
                                                                      +infer_openff_mol(mol_geometry: Molecule) tk.Molecule[source]

                                                                      Infer an OpenFF Molecule from a Pymatgen Molecule.

                                                                      Constructs a MoleculeGraph from the Pymatgen Molecule using the OpenBabelNN local environment strategy and extends metal edges. Converts the resulting MoleculeGraph @@ -7047,7 +7069,7 @@

                                                                      Submodules
                                                                      -mol_graph_from_openff_mol(molecule: Molecule) MoleculeGraph[source]
                                                                      +mol_graph_from_openff_mol(molecule: tk.Molecule) MoleculeGraph[source]

                                                                      This is designed to closely mirror the graph structure generated by tk.Molecule.to_networkx.

                                                                      Parameters:
                                                                      @@ -7064,7 +7086,7 @@

                                                                      Submodules
                                                                      -mol_graph_to_openff_mol(mol_graph: MoleculeGraph) Molecule[source]
                                                                      +mol_graph_to_openff_mol(mol_graph: MoleculeGraph) tk.Molecule[source]

                                                                      Convert a Pymatgen MoleculeGraph to an OpenFF Molecule.

                                                                      Parameters:
                                                                      @@ -7089,12 +7111,12 @@

                                                                      Submodules
                                                                      -class OptimadeStructureAdapter[source]
                                                                      +class OptimadeStructureAdapter[source]

                                                                      Bases: object

                                                                      Adapter serves as a bridge between OPTIMADE structures and pymatgen objects.

                                                                      -static get_optimade_structure(structure: Structure, **kwargs) dict[str, str | dict[str, Any]][source]
                                                                      +static get_optimade_structure(structure: Structure, **kwargs) dict[str, str | dict[str, Any]][source]

                                                                      Get a dictionary in the OPTIMADE Structure format from a pymatgen structure or molecule.

                                                                      Parameters:
                                                                      @@ -7111,7 +7133,7 @@

                                                                      Submodules
                                                                      -static get_structure(resource: dict) Structure[source]
                                                                      +static get_structure(resource: dict) Structure[source]

                                                                      Get pymatgen structure from an OPTIMADE structure resource.

                                                                      Parameters:
                                                                      @@ -7145,7 +7167,7 @@

                                                                      Submodules
                                                                      -class PackmolBoxGen(tolerance: float = 2.0, seed: int = 1, control_params: dict | None = None, inputfile: PathLike = 'packmol.inp', outputfile: PathLike = 'packmol_out.xyz', stdoutfile: PathLike = 'packmol.stdout')[source]
                                                                      +class PackmolBoxGen(tolerance: float = 2.0, seed: int = 1, control_params: dict | None = None, inputfile: PathLike = 'packmol.inp', outputfile: PathLike = 'packmol_out.xyz', stdoutfile: PathLike = 'packmol.stdout')[source]

                                                                      Bases: InputGenerator

                                                                      Generator for a Packmol InputSet that packs one or more molecules into a rectangular simulation box.

                                                                      @@ -7165,7 +7187,7 @@

                                                                      Submodules
                                                                      -get_input_set(molecules: list[dict], box: list[float] | None = None) PackmolSet[source]
                                                                      +get_input_set(molecules: list[dict], box: list[float] | None = None) PackmolSet[source]

                                                                      Generate a Packmol InputSet for a set of molecules.

                                                                      Parameters:
                                                                      @@ -7207,7 +7229,7 @@

                                                                      Submodules
                                                                      -class PackmolSet(inputs: dict[PathLike, str | InputFile] | None = None, **kwargs)[source]
                                                                      +class PackmolSet(inputs: dict[PathLike, str | InputFile] | None = None, **kwargs)[source]

                                                                      Bases: InputSet

                                                                      InputSet for the PACKMOL software. This class defines several attributes related to.

                                                                      Instantiate an InputSet.

                                                                      @@ -7227,7 +7249,7 @@

                                                                      Submodules
                                                                      -classmethod from_directory(directory: PathLike) None[source]
                                                                      +classmethod from_directory(directory: PathLike) None[source]

                                                                      Construct an InputSet from a directory of one or more files.

                                                                      Parameters:
                                                                      @@ -7238,7 +7260,7 @@

                                                                      Submodules
                                                                      -run(path: PathLike, timeout: float = 30) None[source]
                                                                      +run(path: PathLike, timeout: float = 30) None[source]

                                                                      Run PACKMOL and write out the packed structure.

                                                                      Parameters:
                                                                      @@ -7264,7 +7286,7 @@

                                                                      Submoduleshttps://atztogo.github.io/phonopy/.

                                                                      -eigvec_to_eigdispl(eig_vec, q, frac_coords, mass)[source]
                                                                      +eigvec_to_eigdispl(eig_vec, q, frac_coords, mass)[source]

                                                                      Converts a single eigenvector to an eigendisplacement in the primitive cell according to the formula:

                                                                      @@ -7286,7 +7308,7 @@

                                                                      Submodules
                                                                      -get_complete_ph_dos(partial_dos_path, phonopy_yaml_path)[source]
                                                                      +get_complete_ph_dos(partial_dos_path, phonopy_yaml_path)[source]

                                                                      Create a pymatgen CompletePhononDos from a partial_dos.dat and phonopy.yaml files. The second is produced when generating a Dos and is needed to extract @@ -7303,7 +7325,7 @@

                                                                      Submodules
                                                                      -get_displaced_structures(pmg_structure, atom_disp=0.01, supercell_matrix=None, yaml_fname=None, **kwargs)[source]
                                                                      +get_displaced_structures(pmg_structure, atom_disp=0.01, supercell_matrix=None, yaml_fname=None, **kwargs)[source]

                                                                      Generate a set of symmetrically inequivalent displaced structures for phonon calculations.

                                                                      @@ -7326,7 +7348,7 @@

                                                                      Submodules
                                                                      -get_gruneisen_ph_bs_symm_line(gruneisen_path, structure=None, structure_path=None, labels_dict=None, fit=False)[source]
                                                                      +get_gruneisen_ph_bs_symm_line(gruneisen_path, structure=None, structure_path=None, labels_dict=None, fit=False)[source]

                                                                      Create a pymatgen GruneisenPhononBandStructure from a band.yaml file. The labels will be extracted from the dictionary, if present. If the ‘eigenvector’ key is found the eigendisplacements will be @@ -7355,7 +7377,7 @@

                                                                      Submodules
                                                                      -get_gruneisenparameter(gruneisen_path, structure=None, structure_path=None) GruneisenParameter[source]
                                                                      +get_gruneisenparameter(gruneisen_path, structure=None, structure_path=None) GruneisenParameter[source]

                                                                      Get Gruneisen object from gruneisen.yaml file, as obtained from phonopy (Frequencies in THz!). The order is structure > structure path > structure from gruneisen dict. Newer versions of phonopy include the structure in the YAML file, @@ -7376,7 +7398,7 @@

                                                                      Submodules
                                                                      -get_gs_ph_bs_symm_line_from_dict(gruneisen_dict, structure=None, structure_path=None, labels_dict=None, fit=False) GruneisenPhononBandStructureSymmLine[source]
                                                                      +get_gs_ph_bs_symm_line_from_dict(gruneisen_dict, structure=None, structure_path=None, labels_dict=None, fit=False) GruneisenPhononBandStructureSymmLine[source]

                                                                      Create a pymatgen GruneisenPhononBandStructure object from the dictionary extracted by the gruneisen.yaml file produced by phonopy. The labels will be extracted from the dictionary, if present. If the ‘eigenvector’ @@ -7408,7 +7430,7 @@

                                                                      Submodules
                                                                      -get_ph_bs_symm_line(bands_path, has_nac=False, labels_dict=None)[source]
                                                                      +get_ph_bs_symm_line(bands_path, has_nac=False, labels_dict=None)[source]

                                                                      Create a pymatgen PhononBandStructure from a band.yaml file. The labels will be extracted from the dictionary, if present. If the ‘eigenvector’ key is found the eigendisplacements will be @@ -7431,7 +7453,7 @@

                                                                      Submodules
                                                                      -get_ph_bs_symm_line_from_dict(bands_dict, has_nac=False, labels_dict=None) PhononBandStructureSymmLine[source]
                                                                      +get_ph_bs_symm_line_from_dict(bands_dict, has_nac=False, labels_dict=None) PhononBandStructureSymmLine[source]

                                                                      Create a pymatgen PhononBandStructure object from the dictionary extracted by the band.yaml file produced by phonopy. The labels will be extracted from the dictionary, if present. If the ‘eigenvector’ @@ -7462,7 +7484,7 @@

                                                                      Submodules
                                                                      -get_ph_dos(total_dos_path)[source]
                                                                      +get_ph_dos(total_dos_path)[source]

                                                                      Create a pymatgen PhononDos from a total_dos.dat file.

                                                                      Parameters:
                                                                      @@ -7473,7 +7495,7 @@

                                                                      Submodules
                                                                      -get_phonon_band_structure_from_fc(structure: Structure, supercell_matrix: ndarray, force_constants: ndarray, mesh_density: float = 100.0, **kwargs) PhononBandStructure[source]
                                                                      +get_phonon_band_structure_from_fc(structure: Structure, supercell_matrix: ndarray, force_constants: ndarray, mesh_density: float = 100.0, **kwargs) PhononBandStructure[source]

                                                                      Get a uniform phonon band structure from phonopy force constants.

                                                                      Parameters:
                                                                      @@ -7495,7 +7517,7 @@

                                                                      Submodules
                                                                      -get_phonon_band_structure_symm_line_from_fc(structure: Structure, supercell_matrix: ndarray, force_constants: ndarray, line_density: float = 20.0, symprec: float = 0.01, **kwargs) PhononBandStructureSymmLine[source]
                                                                      +get_phonon_band_structure_symm_line_from_fc(structure: Structure, supercell_matrix: ndarray, force_constants: ndarray, line_density: float = 20.0, symprec: float = 0.01, **kwargs) PhononBandStructureSymmLine[source]

                                                                      Get a phonon band structure along a high symmetry path from phonopy force constants.

                                                                      @@ -7519,7 +7541,7 @@

                                                                      Submodules
                                                                      -get_phonon_dos_from_fc(structure: Structure, supercell_matrix: ndarray, force_constants: ndarray, mesh_density: float = 100.0, num_dos_steps: int = 200, **kwargs) CompletePhononDos[source]
                                                                      +get_phonon_dos_from_fc(structure: Structure, supercell_matrix: ndarray, force_constants: ndarray, mesh_density: float = 100.0, num_dos_steps: int = 200, **kwargs) CompletePhononDos[source]

                                                                      Get a projected phonon density of states from phonopy force constants.

                                                                      Parameters:
                                                                      @@ -7542,7 +7564,7 @@

                                                                      Submodules
                                                                      -get_phonopy_structure(pmg_structure: Structure) PhonopyAtoms[source]
                                                                      +get_phonopy_structure(pmg_structure: Structure) PhonopyAtoms[source]

                                                                      Convert a pymatgen Structure object to a PhonopyAtoms object.

                                                                      Parameters:
                                                                      @@ -7553,7 +7575,7 @@

                                                                      Submodules
                                                                      -get_pmg_structure(phonopy_structure: PhonopyAtoms) Structure[source]
                                                                      +get_pmg_structure(phonopy_structure: PhonopyAtoms) Structure[source]

                                                                      Convert a PhonopyAtoms object to pymatgen Structure object.

                                                                      Parameters:
                                                                      @@ -7564,7 +7586,7 @@

                                                                      Submodules
                                                                      -get_structure_from_dict(dct) Structure[source]
                                                                      +get_structure_from_dict(dct) Structure[source]

                                                                      Extracts a structure from the dictionary extracted from the output files of phonopy like phonopy.yaml or band.yaml. Adds “phonopy_masses” in the site_properties of the structures. @@ -7573,7 +7595,7 @@

                                                                      Submodules
                                                                      -get_thermal_displacement_matrices(thermal_displacements_yaml='thermal_displacement_matrices.yaml', structure_path='POSCAR')[source]
                                                                      +get_thermal_displacement_matrices(thermal_displacements_yaml='thermal_displacement_matrices.yaml', structure_path='POSCAR')[source]

                                                                      Read “thermal_displacement_matrices.yaml” from phonopy and return a list of ThermalDisplacementMatrices objects.

                                                                      @@ -7595,7 +7617,7 @@

                                                                      Submoduleshttps://prism-em.com) input files.

                                                                      -class Prismatic(structure: Structure, comment: str = 'Generated by pymatgen')[source]
                                                                      +class Prismatic(structure: Structure, comment: str = 'Generated by pymatgen')[source]

                                                                      Bases: object

                                                                      Write Prismatic (https://prism-em.com) input files. This is designed for STEM image simulation.

                                                                      @@ -7609,7 +7631,7 @@

                                                                      Submodules
                                                                      -to_str() str[source]
                                                                      +to_str() str[source]
                                                                      Returns:

                                                                      @@ -7632,7 +7654,7 @@

                                                                      Submodules
                                                                      -class PWInput(structure, pseudo=None, control=None, system=None, electrons=None, ions=None, cell=None, kpoints_mode='automatic', kpoints_grid=(1, 1, 1), kpoints_shift=(0, 0, 0), format_options=None)[source]
                                                                      +class PWInput(structure, pseudo=None, control=None, system=None, electrons=None, ions=None, cell=None, kpoints_mode='automatic', kpoints_grid=(1, 1, 1), kpoints_shift=(0, 0, 0), format_options=None)[source]

                                                                      Bases: object

                                                                      Base input file class. Right now, only supports no symmetry and is very basic.

                                                                      @@ -7676,7 +7698,7 @@

                                                                      Submodules
                                                                      -as_dict()[source]
                                                                      +as_dict()[source]

                                                                      Create a dictionary representation of a PWInput object.

                                                                      Returns:
                                                                      @@ -7687,7 +7709,7 @@

                                                                      Submodules
                                                                      -classmethod from_dict(dct: dict) Self[source]
                                                                      +classmethod from_dict(dct: dict) Self[source]

                                                                      Load a PWInput object from a dictionary.

                                                                      Parameters:
                                                                      @@ -7701,7 +7723,7 @@

                                                                      Submodules
                                                                      -classmethod from_file(filename: str | Path) Self[source]
                                                                      +classmethod from_file(filename: str | Path) Self[source]

                                                                      Reads an PWInput object from a file.

                                                                      Parameters:
                                                                      @@ -7715,7 +7737,7 @@

                                                                      Submodules
                                                                      -classmethod from_str(string: str) Self[source]
                                                                      +classmethod from_str(string: str) Self[source]

                                                                      Reads an PWInput object from a string.

                                                                      Parameters:
                                                                      @@ -7729,7 +7751,7 @@

                                                                      Submodules
                                                                      -static proc_val(key, val)[source]
                                                                      +static proc_val(key, val)[source]

                                                                      Static helper method to convert PWINPUT parameters to proper type, e.g. integers, floats, etc.

                                                                      @@ -7744,7 +7766,7 @@

                                                                      Submodules
                                                                      -write_file(filename)[source]
                                                                      +write_file(filename)[source]

                                                                      Write the PWSCF input file.

                                                                      Parameters:
                                                                      @@ -7757,14 +7779,14 @@

                                                                      Submodules
                                                                      -exception PWInputError[source]
                                                                      +exception PWInputError[source]

                                                                      Bases: BaseException

                                                                      Error for PWInput.

                                                                      -class PWOutput(filename)[source]
                                                                      +class PWOutput(filename)[source]

                                                                      Bases: object

                                                                      Parser for PWSCF output file.

                                                                      @@ -7774,13 +7796,13 @@

                                                                      Submodules
                                                                      -property final_energy: float[source]
                                                                      +property final_energy: float[source]

                                                                      The final energy from the PW output.

                                                                      -get_celldm(idx: int)[source]
                                                                      +get_celldm(idx: int)[source]
                                                                      Parameters:

                                                                      idx (int) – index.

                                                                      @@ -7793,18 +7815,18 @@

                                                                      Submodules
                                                                      -property lattice_type: int[source]
                                                                      +property lattice_type: int[source]

                                                                      The lattice type.

                                                                      -patterns: ClassVar[dict[str, str]] = {'celldm1': 'celldm\\(1\\)=\\s+([\\d\\.]+)\\s', 'celldm2': 'celldm\\(2\\)=\\s+([\\d\\.]+)\\s', 'celldm3': 'celldm\\(3\\)=\\s+([\\d\\.]+)\\s', 'celldm4': 'celldm\\(4\\)=\\s+([\\d\\.]+)\\s', 'celldm5': 'celldm\\(5\\)=\\s+([\\d\\.]+)\\s', 'celldm6': 'celldm\\(6\\)=\\s+([\\d\\.]+)\\s', 'ecut': 'kinetic\\-energy cutoff\\s+=\\s+([\\d\\.\\-]+)\\s+Ry', 'energies': 'total energy\\s+=\\s+([\\d\\.\\-]+)\\sRy', 'lattice_type': 'bravais\\-lattice index\\s+=\\s+(\\d+)', 'nkpts': 'number of k points=\\s+([\\d]+)'}[source]
                                                                      +patterns: ClassVar[dict[str, str]] = {'celldm1': 'celldm\\(1\\)=\\s+([\\d\\.]+)\\s', 'celldm2': 'celldm\\(2\\)=\\s+([\\d\\.]+)\\s', 'celldm3': 'celldm\\(3\\)=\\s+([\\d\\.]+)\\s', 'celldm4': 'celldm\\(4\\)=\\s+([\\d\\.]+)\\s', 'celldm5': 'celldm\\(5\\)=\\s+([\\d\\.]+)\\s', 'celldm6': 'celldm\\(6\\)=\\s+([\\d\\.]+)\\s', 'ecut': 'kinetic\\-energy cutoff\\s+=\\s+([\\d\\.\\-]+)\\s+Ry', 'energies': 'total energy\\s+=\\s+([\\d\\.\\-]+)\\sRy', 'lattice_type': 'bravais\\-lattice index\\s+=\\s+(\\d+)', 'nkpts': 'number of k points=\\s+([\\d]+)'}[source]
                                                                      -read_pattern(patterns, reverse=False, terminate_on_match=False, postprocess=<class 'str'>)[source]
                                                                      +read_pattern(patterns, reverse=False, terminate_on_match=False, postprocess=<class 'str'>)[source]

                                                                      General pattern reading. Uses monty’s regrep method. Takes the same arguments.

                                                                      @@ -7846,7 +7868,7 @@

                                                                      Submodules
                                                                      -class AirssProvider(res: Res, parse_rems: Literal['gentle', 'strict'] = 'gentle')[source]
                                                                      +class AirssProvider(res: Res, parse_rems: Literal['gentle', 'strict'] = 'gentle')[source]

                                                                      Bases: ResProvider

                                                                      Provides access to the res file as does ResProvider. This class additionally provides access to fields in the TITL entry and various other fields found in the REM entries @@ -7866,7 +7888,7 @@

                                                                      Submodulesfrom_str() and from_file() methods should be used instead of constructing this directly.

                                                                      -property appearances: int[source]
                                                                      +property appearances: int[source]

                                                                      This is sometimes the number of times a structure was found in an AIRSS search. Using the cryan tool that comes with AIRSS may be a better approach than relying on this property.

                                                                      @@ -7874,37 +7896,37 @@

                                                                      Submodules
                                                                      -as_dict(verbose: bool = True) dict[str, Any][source]
                                                                      +as_dict(verbose: bool = True) dict[str, Any][source]

                                                                      Get dict with title fields, structure and rems of this AirssProvider.

                                                                      -property energy: float[source]
                                                                      +property energy: float[source]

                                                                      Energy of the structure. With CASTEP, this is usually the enthalpy and is in eV.

                                                                      -property entry: ComputedStructureEntry[source]
                                                                      +property entry: ComputedStructureEntry[source]

                                                                      This res file as a ComputedStructureEntry.

                                                                      -classmethod from_file(filename: str | Path, parse_rems: Literal['gentle', 'strict'] = 'gentle') Self[source]
                                                                      +classmethod from_file(filename: str | Path, parse_rems: Literal['gentle', 'strict'] = 'gentle') Self[source]

                                                                      Construct a Provider from a file.

                                                                      -classmethod from_str(string: str, parse_rems: Literal['gentle', 'strict'] = 'gentle') Self[source]
                                                                      +classmethod from_str(string: str, parse_rems: Literal['gentle', 'strict'] = 'gentle') Self[source]

                                                                      Construct a Provider from a string.

                                                                      -get_airss_version() tuple[str, date] | None[source]
                                                                      +get_airss_version() tuple[str, date] | None[source]

                                                                      Retrieves the version of AIRSS that was used along with the build date (not compile date).

                                                                      Returns:
                                                                      @@ -7915,7 +7937,7 @@

                                                                      Submodules
                                                                      -get_castep_version() str | None[source]
                                                                      +get_castep_version() str | None[source]

                                                                      Retrieves the version of CASTEP that the res file was computed with from the REM entries.

                                                                      Returns:
                                                                      @@ -7926,7 +7948,7 @@

                                                                      Submodules
                                                                      -get_cut_grid_gmax_fsbc() tuple[float, float, float, str] | None[source]
                                                                      +get_cut_grid_gmax_fsbc() tuple[float, float, float, str] | None[source]

                                                                      Retrieves the cut-off energy, grid scale, Gmax, and finite basis set correction setting from the REM entries.

                                                                      @@ -7941,7 +7963,7 @@

                                                                      Submodules
                                                                      -get_func_rel_disp() tuple[str, str, str] | None[source]
                                                                      +get_func_rel_disp() tuple[str, str, str] | None[source]

                                                                      Retrieves the functional, relativity scheme, and dispersion correction from the REM entries.

                                                                      Returns:
                                                                      @@ -7955,7 +7977,7 @@

                                                                      Submodules
                                                                      -get_mpgrid_offset_nkpts_spacing() tuple[Tuple3Ints, Vector3D, int, float] | None[source]
                                                                      +get_mpgrid_offset_nkpts_spacing() tuple[Tuple3Ints, Vector3D, int, float] | None[source]

                                                                      Retrieves the MP grid, the grid offsets, number of kpoints, and maximum kpoint spacing.

                                                                      Returns:
                                                                      @@ -7969,7 +7991,7 @@

                                                                      Submodules
                                                                      -get_pspots() dict[str, str][source]
                                                                      +get_pspots() dict[str, str][source]

                                                                      Retrieves the OTFG pseudopotential string that can be used to generate the pseudopotentials used in the calculation.

                                                                      @@ -7981,7 +8003,7 @@

                                                                      Submodules
                                                                      -get_run_start_info() tuple[date, str] | None[source]
                                                                      +get_run_start_info() tuple[date, str] | None[source]

                                                                      Retrieves the run start date and the path it was started in from the REM entries.

                                                                      Returns:
                                                                      @@ -7995,38 +8017,38 @@

                                                                      Submodules
                                                                      -property integrated_absolute_spin_density: float[source]
                                                                      +property integrated_absolute_spin_density: float[source]

                                                                      Corresponds to the last Integrated |Spin Density| in the CASTEP file.

                                                                      -property integrated_spin_density: float[source]
                                                                      +property integrated_spin_density: float[source]

                                                                      Corresponds to the last Integrated Spin Density in the CASTEP file.

                                                                      -property pressure: float[source]
                                                                      +property pressure: float[source]

                                                                      Pressure for the run. This is in GPa if CASTEP was used.

                                                                      -property seed: str[source]
                                                                      +property seed: str[source]

                                                                      The seed name, typically also the name of the res file.

                                                                      -property spacegroup_label: str[source]
                                                                      +property spacegroup_label: str[source]

                                                                      The Hermann-Mauguin notation of the spacegroup with ascii characters. So no. 225 would be Fm-3m, and no. 194 would be P6_3/mmc.

                                                                      -property volume: float[source]
                                                                      +property volume: float[source]

                                                                      Volume of the structure. This is in cubic Angstroms if CASTEP was used.

                                                                      @@ -8034,152 +8056,152 @@

                                                                      Submodules
                                                                      -class AirssTITL(seed: 'str', pressure: 'float', volume: 'float', energy: 'float', integrated_spin_density: 'float', integrated_absolute_spin_density: 'float', spacegroup_label: 'str', appearances: 'int')[source]
                                                                      +class AirssTITL(seed: 'str', pressure: 'float', volume: 'float', energy: 'float', integrated_spin_density: 'float', integrated_absolute_spin_density: 'float', spacegroup_label: 'str', appearances: 'int')[source]

                                                                      Bases: object

                                                                      -appearances: int[source]
                                                                      +appearances: int[source]
                                                                      -energy: float[source]
                                                                      +energy: float[source]
                                                                      -integrated_absolute_spin_density: float[source]
                                                                      +integrated_absolute_spin_density: float[source]
                                                                      -integrated_spin_density: float[source]
                                                                      +integrated_spin_density: float[source]
                                                                      -pressure: float[source]
                                                                      +pressure: float[source]
                                                                      -seed: str[source]
                                                                      +seed: str[source]
                                                                      -spacegroup_label: str[source]
                                                                      +spacegroup_label: str[source]
                                                                      -volume: float[source]
                                                                      +volume: float[source]

                                                                      -class Ion(specie: 'str', specie_num: 'int', pos: 'Vector3D', occupancy: 'float', spin: 'float | None')[source]
                                                                      +class Ion(specie: 'str', specie_num: 'int', pos: 'Vector3D', occupancy: 'float', spin: 'float | None')[source]

                                                                      Bases: object

                                                                      -occupancy: float[source]
                                                                      +occupancy: float[source]
                                                                      -pos: Vector3D[source]
                                                                      +pos: Vector3D[source]
                                                                      -specie: str[source]
                                                                      +specie: str[source]
                                                                      -specie_num: int[source]
                                                                      +specie_num: int[source]
                                                                      -spin: float | None[source]
                                                                      +spin: float | None[source]
                                                                      -class Res(TITL: AirssTITL | None, REMS: list[str], CELL: ResCELL, SFAC: ResSFAC)[source]
                                                                      +class Res(TITL: AirssTITL | None, REMS: list[str], CELL: ResCELL, SFAC: ResSFAC)[source]

                                                                      Bases: object

                                                                      Representation for the data in a res file.

                                                                      -CELL: ResCELL[source]
                                                                      +CELL: ResCELL[source]
                                                                      -REMS: list[str][source]
                                                                      +REMS: list[str][source]
                                                                      -SFAC: ResSFAC[source]
                                                                      +SFAC: ResSFAC[source]
                                                                      -TITL: AirssTITL | None[source]
                                                                      +TITL: AirssTITL | None[source]
                                                                      -class ResCELL(unknown_field_1: 'float', a: 'float', b: 'float', c: 'float', alpha: 'float', beta: 'float', gamma: 'float')[source]
                                                                      +class ResCELL(unknown_field_1: 'float', a: 'float', b: 'float', c: 'float', alpha: 'float', beta: 'float', gamma: 'float')[source]

                                                                      Bases: object

                                                                      -a: float[source]
                                                                      +a: float[source]
                                                                      -alpha: float[source]
                                                                      +alpha: float[source]
                                                                      -b: float[source]
                                                                      +b: float[source]
                                                                      -beta: float[source]
                                                                      +beta: float[source]
                                                                      -c: float[source]
                                                                      +c: float[source]
                                                                      -gamma: float[source]
                                                                      +gamma: float[source]
                                                                      -unknown_field_1: float[source]
                                                                      +unknown_field_1: float[source]
                                                                      -exception ResError[source]
                                                                      +exception ResError[source]

                                                                      Bases: ValueError

                                                                      This exception indicates a problem was encountered while trying to retrieve a value or perform an action that a provider for the res file does not support.

                                                                      @@ -8187,7 +8209,7 @@

                                                                      Submodules
                                                                      -class ResIO[source]
                                                                      +class ResIO[source]

                                                                      Bases: object

                                                                      Convenience methods for converting a Structure or ComputedStructureEntry to/from a string or file in the res format as used by AIRSS.

                                                                      @@ -8200,49 +8222,49 @@

                                                                      Submodules
                                                                      -classmethod entry_from_file(filename: str) ComputedStructureEntry[source]
                                                                      +classmethod entry_from_file(filename: str) ComputedStructureEntry[source]

                                                                      Produce a pymatgen ComputedStructureEntry from a res file.

                                                                      -classmethod entry_from_str(string: str) ComputedStructureEntry[source]
                                                                      +classmethod entry_from_str(string: str) ComputedStructureEntry[source]

                                                                      Produce a pymatgen ComputedStructureEntry from contents of a res file.

                                                                      -classmethod entry_to_file(entry: ComputedStructureEntry, filename: str) None[source]
                                                                      +classmethod entry_to_file(entry: ComputedStructureEntry, filename: str) None[source]

                                                                      Write a pymatgen ComputedStructureEntry to a res file.

                                                                      -classmethod entry_to_str(entry: ComputedStructureEntry) str[source]
                                                                      +classmethod entry_to_str(entry: ComputedStructureEntry) str[source]

                                                                      Produce the contents of a res file from a pymatgen ComputedStructureEntry.

                                                                      -classmethod structure_from_file(filename: str) Structure[source]
                                                                      +classmethod structure_from_file(filename: str) Structure[source]

                                                                      Produces a pymatgen Structure from a res file.

                                                                      -classmethod structure_from_str(string: str) Structure[source]
                                                                      +classmethod structure_from_str(string: str) Structure[source]

                                                                      Produces a pymatgen Structure from contents of a res file.

                                                                      -classmethod structure_to_file(structure: Structure, filename: str) None[source]
                                                                      +classmethod structure_to_file(structure: Structure, filename: str) None[source]

                                                                      Write a pymatgen Structure to a res file.

                                                                      -classmethod structure_to_str(structure: Structure) str[source]
                                                                      +classmethod structure_to_str(structure: Structure) str[source]

                                                                      Produce the contents of a res file from a pymatgen Structure.

                                                                      @@ -8250,57 +8272,57 @@

                                                                      Submodules
                                                                      -exception ResParseError[source]
                                                                      +exception ResParseError[source]

                                                                      Bases: ParseError

                                                                      This exception indicates a problem was encountered during parsing due to unexpected formatting.

                                                                      -class ResParser[source]
                                                                      +class ResParser[source]

                                                                      Bases: object

                                                                      Parser for the ShelX res file.

                                                                      -class ResProvider(res: Res)[source]
                                                                      +class ResProvider(res: Res)[source]

                                                                      Bases: MSONable

                                                                      Access elements of the RES file as familiar pymatgen objects.

                                                                      The from_str() and from_file() methods should be used instead of constructing this directly.

                                                                      -classmethod from_file(filename: str | Path) Self[source]
                                                                      +classmethod from_file(filename: str | Path) Self[source]

                                                                      Construct a Provider from a file.

                                                                      -classmethod from_str(string: str) Self[source]
                                                                      +classmethod from_str(string: str) Self[source]

                                                                      Construct a Provider from a string.

                                                                      -property lattice: Lattice[source]
                                                                      +property lattice: Lattice[source]

                                                                      Construct a Lattice from the res file.

                                                                      -property rems: list[str][source]
                                                                      +property rems: list[str][source]

                                                                      The full list of REM entries contained within the res file.

                                                                      -property sites: list[PeriodicSite][source]
                                                                      +property sites: list[PeriodicSite][source]

                                                                      Construct a list of PeriodicSites from the res file.

                                                                      -property structure: Structure[source]
                                                                      +property structure: Structure[source]

                                                                      Construct a Structure from the res file.

                                                                      @@ -8308,35 +8330,35 @@

                                                                      Submodules
                                                                      -class ResSFAC(species: 'list[str]', ions: 'list[Ion]')[source]
                                                                      +class ResSFAC(species: 'list[str]', ions: 'list[Ion]')[source]

                                                                      Bases: object

                                                                      -ions: list[Ion][source]
                                                                      +ions: list[Ion][source]
                                                                      -species: list[str][source]
                                                                      +species: list[str][source]

                                                                      -class ResWriter(entry: Structure | ComputedStructureEntry)[source]
                                                                      +class ResWriter(entry: Structure | ComputedStructureEntry)[source]

                                                                      Bases: object

                                                                      This class provides a means to write a Structure or ComputedStructureEntry to a res file.

                                                                      This class can be constructed from either a pymatgen Structure or ComputedStructureEntry object.

                                                                      -property string: str[source]
                                                                      +property string: str[source]

                                                                      The contents of the res file.

                                                                      -write(filename: str) None[source]
                                                                      +write(filename: str) None[source]

                                                                      Write the res data to a file.

                                                                      @@ -8348,7 +8370,7 @@

                                                                      Submodules
                                                                      -class Control(ngrid: list[int] | None = None, temperature: float | dict[str, float] = 300, **kwargs)[source]
                                                                      +class Control(ngrid: list[int] | None = None, temperature: float | dict[str, float] = 300, **kwargs)[source]

                                                                      Bases: MSONable, dict

                                                                      Read, update, and write ShengBTE CONTROL files. See https://bitbucket.org/sousaw/shengbte/src/master/ for more @@ -8384,33 +8406,33 @@

                                                                      Submodules
                                                                      -allocations_keys = ('nelements', 'natoms', 'ngrid', 'norientations')[source]
                                                                      +allocations_keys = ('nelements', 'natoms', 'ngrid', 'norientations')[source]

                                                                      -as_dict()[source]
                                                                      +as_dict()[source]

                                                                      Get MSONable dict.

                                                                      -crystal_keys = ('lfactor', 'lattvec', 'types', 'elements', 'positions', 'masses', 'gfactors', 'epsilon', 'born', 'scell', 'orientations')[source]
                                                                      +crystal_keys = ('lfactor', 'lattvec', 'types', 'elements', 'positions', 'masses', 'gfactors', 'epsilon', 'born', 'scell', 'orientations')[source]
                                                                      -data_keys = ('nelements', 'natoms', 'ngrid', 'lattvec', 'types', 'elements', 'positions', 'scell')[source]
                                                                      +data_keys = ('nelements', 'natoms', 'ngrid', 'lattvec', 'types', 'elements', 'positions', 'scell')[source]
                                                                      -flags_keys = ('nonanalytic', 'convergence', 'isotopes', 'autoisotopes', 'nanowires', 'onlyharmonic', 'espresso')[source]
                                                                      +flags_keys = ('nonanalytic', 'convergence', 'isotopes', 'autoisotopes', 'nanowires', 'onlyharmonic', 'espresso')[source]
                                                                      -classmethod from_dict(control_dict: dict) Self[source]
                                                                      +classmethod from_dict(control_dict: dict) Self[source]

                                                                      Write a CONTROL file from a Python dictionary. Description and default parameters can be found at https://bitbucket.org/sousaw/shengbte/src/master/. @@ -8425,7 +8447,7 @@

                                                                      Submodules
                                                                      -classmethod from_file(filepath: str) Self[source]
                                                                      +classmethod from_file(filepath: str) Self[source]

                                                                      Read a CONTROL namelist file and output a ‘Control’ object.

                                                                      Parameters:
                                                                      @@ -8439,7 +8461,7 @@

                                                                      Submodules
                                                                      -classmethod from_structure(structure: Structure, reciprocal_density: int | None = 50000, **kwargs) Self[source]
                                                                      +classmethod from_structure(structure: Structure, reciprocal_density: int | None = 50000, **kwargs) Self[source]

                                                                      Get a ShengBTE control object from a structure.

                                                                      Parameters:
                                                                      @@ -8459,7 +8481,7 @@

                                                                      Submodules
                                                                      -get_structure() Structure[source]
                                                                      +get_structure() Structure[source]

                                                                      Get a pymatgen Structure from a ShengBTE control object.

                                                                      The control object must have the “lattvec”, “types”, “elements”, and “positions” settings otherwise an error will be thrown.

                                                                      @@ -8472,17 +8494,17 @@

                                                                      Submodules
                                                                      -params_keys = ('t', 't_min', 't_max', 't_step', 'omega_max', 'scalebroad', 'rmin', 'rmax', 'dr', 'maxiter', 'nticks', 'eps')[source]
                                                                      +params_keys = ('t', 't_min', 't_max', 't_step', 'omega_max', 'scalebroad', 'rmin', 'rmax', 'dr', 'maxiter', 'nticks', 'eps')[source]

                                                                      -required_params = ('nelements', 'natoms', 'ngrid', 'lattvec', 'types', 'elements', 'positions', 'scell')[source]
                                                                      +required_params = ('nelements', 'natoms', 'ngrid', 'lattvec', 'types', 'elements', 'positions', 'scell')[source]
                                                                      -to_file(filename: str = 'CONTROL') None[source]
                                                                      +to_file(filename: str = 'CONTROL') None[source]

                                                                      Write ShengBTE CONTROL file from ‘Control’ object.

                                                                      Parameters:
                                                                      @@ -8500,7 +8522,7 @@

                                                                      Submodules
                                                                      -class TemplateInputGen[source]
                                                                      +class TemplateInputGen[source]

                                                                      Bases: InputGenerator

                                                                      Concrete implementation of InputGenerator that is based on a single template input file with variables.

                                                                      @@ -8509,7 +8531,7 @@

                                                                      Submodules
                                                                      -get_input_set(template: PathLike, variables: dict | None = None, filename: PathLike = 'input.txt') InputSet[source]
                                                                      +get_input_set(template: PathLike, variables: dict | None = None, filename: PathLike = 'input.txt') InputSet[source]
                                                                      Parameters:
                                                                        @@ -8533,12 +8555,12 @@

                                                                        Submodules
                                                                        -class Unk(ik: int, data: ndarray)[source]
                                                                        +class Unk(ik: int, data: ndarray)[source]

                                                                        Bases: object

                                                                        Object representing the data in a UNK file.

                                                                        -ik[source]
                                                                        +ik[source]

                                                                        Index of kpoint for this file.

                                                                        Type:
                                                                        @@ -8549,7 +8571,7 @@

                                                                        Submodules
                                                                        -data[source]
                                                                        +data[source]

                                                                        Numpy array that contains the wavefunction data in the UNK file. The shape should be (nbnd, ngx, ngy, ngz) for regular calculations and (nbnd, 2, ngx, ngy, ngz) for noncollinear calculations.

                                                                        @@ -8562,7 +8584,7 @@

                                                                        Submodules
                                                                        -is_noncollinear[source]
                                                                        +is_noncollinear[source]

                                                                        True if data is from a noncollinear calculation.

                                                                        Type:
                                                                        @@ -8573,7 +8595,7 @@

                                                                        Submodules
                                                                        -nbnd[source]
                                                                        +nbnd[source]

                                                                        Number of bands in data.

                                                                        Type:
                                                                        @@ -8584,7 +8606,7 @@

                                                                        Submodules
                                                                        -ng[source]
                                                                        +ng[source]

                                                                        Sequence of three integers that correspond to the grid size of the given data. The definition is ng = (ngx, ngy, ngz).

                                                                        @@ -8606,7 +8628,7 @@

                                                                        Submodules
                                                                        -property data: ndarray[source]
                                                                        +property data: ndarray[source]

                                                                        contains the wavefunction data in the UNK file. The shape should be (nbnd, ngx, ngy, ngz) for regular calculations and (nbnd, 2, ngx, ngy, ngz) for noncollinear calculations.

                                                                        @@ -8619,7 +8641,7 @@

                                                                        Submodules
                                                                        -classmethod from_file(filename: str) Self[source]
                                                                        +classmethod from_file(filename: str) Self[source]

                                                                        Reads the UNK data from file.

                                                                        Parameters:
                                                                        @@ -8633,27 +8655,27 @@

                                                                        Submodules
                                                                        -ik: int[source]
                                                                        +ik: int[source]

                                                                        -is_noncollinear: bool[source]
                                                                        +is_noncollinear: bool[source]
                                                                        -nbnd: int[source]
                                                                        +nbnd: int[source]
                                                                        -ng: Sequence[int][source]
                                                                        +ng: Sequence[int][source]
                                                                        -write_file(filename: str) None[source]
                                                                        +write_file(filename: str) None[source]

                                                                        Write the UNK file.

                                                                        Parameters:
                                                                        @@ -8672,7 +8694,7 @@

                                                                        Submodules
                                                                        -class XSF(structure: Structure)[source]
                                                                        +class XSF(structure: Structure)[source]

                                                                        Bases: object

                                                                        Parse XCrysden files.

                                                                        @@ -8682,7 +8704,7 @@

                                                                        Submodules
                                                                        -classmethod from_str(input_string: str, cls_=None) Self[source]
                                                                        +classmethod from_str(input_string: str, cls_=None) Self[source]

                                                                        Initialize a Structure object from a string with data in XSF format.

                                                                        Parameters:
                                                                        @@ -8716,7 +8738,7 @@

                                                                        Submodules
                                                                        -to_str(atom_symbol: bool = True) str[source]
                                                                        +to_str(atom_symbol: bool = True) str[source]

                                                                        Get a string with the structure in XSF format See http://www.xcrysden.org/doc/XSF.html.

                                                                        @@ -8739,7 +8761,7 @@

                                                                        Submodules
                                                                        -class Xr(structure: Structure)[source]
                                                                        +class Xr(structure: Structure)[source]

                                                                        Bases: object

                                                                        For working with XR files.

                                                                        @@ -8749,7 +8771,7 @@

                                                                        Submodules
                                                                        -classmethod from_file(filename: str | Path, use_cores: bool = True, thresh: float = 0.0001) Self[source]
                                                                        +classmethod from_file(filename: str | Path, use_cores: bool = True, thresh: float = 0.0001) Self[source]

                                                                        Reads an xr-formatted file to create an Xr object.

                                                                        Parameters:
                                                                        @@ -8778,7 +8800,7 @@

                                                                        Submodules
                                                                        -classmethod from_str(string: str, use_cores: bool = True, thresh: float = 0.0001) Self[source]
                                                                        +classmethod from_str(string: str, use_cores: bool = True, thresh: float = 0.0001) Self[source]

                                                                        Creates an Xr object from a string representation.

                                                                        Parameters:
                                                                        @@ -8807,7 +8829,7 @@

                                                                        Submodules
                                                                        -write_file(filename: str | Path) None[source]
                                                                        +write_file(filename: str | Path) None[source]

                                                                        Write out an xr file.

                                                                        Parameters:
                                                                        @@ -8824,7 +8846,7 @@

                                                                        Submodules
                                                                        -class XYZ(mol: Molecule | Structure | Sequence[Molecule | Structure], coord_precision: int = 6)[source]
                                                                        +class XYZ(mol: Molecule | Structure | Sequence[Molecule | Structure], coord_precision: int = 6)[source]

                                                                        Bases: object

                                                                        Basic class for importing and exporting Molecules or Structures in XYZ format.

                                                                        @@ -8845,13 +8867,13 @@

                                                                        Submodules
                                                                        -property all_molecules: list[Molecule][source]
                                                                        +property all_molecules: list[Molecule][source]

                                                                        All the frames of molecule associated with this XYZ.

                                                                        -as_dataframe()[source]
                                                                        +as_dataframe()[source]

                                                                        Generate a coordinates data frame with columns: atom, x, y, and z In case of multiple frame XYZ, returns the last frame.

                                                                        @@ -8863,7 +8885,7 @@

                                                                        Submodules
                                                                        -classmethod from_file(filename: str | Path) Self[source]
                                                                        +classmethod from_file(filename: str | Path) Self[source]

                                                                        Creates XYZ object from a file.

                                                                        Parameters:
                                                                        @@ -8877,7 +8899,7 @@

                                                                        Submodules
                                                                        -classmethod from_str(contents: str) Self[source]
                                                                        +classmethod from_str(contents: str) Self[source]

                                                                        Creates XYZ object from a string.

                                                                        Parameters:
                                                                        @@ -8891,14 +8913,14 @@

                                                                        Submodules
                                                                        -property molecule: Molecule[source]
                                                                        +property molecule: Molecule[source]

                                                                        Molecule associated with this XYZ. In case of multi-frame XYZ, returns the last frame.

                                                                        -write_file(filename: str) None[source]
                                                                        +write_file(filename: str) None[source]

                                                                        Write XYZ file.

                                                                        Parameters:
                                                                        @@ -8938,7 +8960,7 @@

                                                                        Zeo++ Post-Installation Checking:
                                                                        -class ZeoCssr(structure: Structure)[source]
                                                                        +class ZeoCssr(structure: Structure)[source]

                                                                        Bases: Cssr

                                                                        ZeoCssr adds extra fields to CSSR sites to conform with Zeo++ input CSSR format. The coordinate system is rotated from xyz to zyx. @@ -8951,7 +8973,7 @@

                                                                        Zeo++ Post-Installation Checking:
                                                                        -classmethod from_file(filename: str | Path) Self[source]
                                                                        +classmethod from_file(filename: str | Path) Self[source]

                                                                        Reads a CSSR file to a ZeoCssr object.

                                                                        Parameters:
                                                                        @@ -8965,7 +8987,7 @@

                                                                        Zeo++ Post-Installation Checking:
                                                                        -classmethod from_str(string: str) Self[source]
                                                                        +classmethod from_str(string: str) Self[source]

                                                                        Reads a string representation to a ZeoCssr object.

                                                                        Parameters:
                                                                        @@ -8981,7 +9003,7 @@

                                                                        Zeo++ Post-Installation Checking:
                                                                        -class ZeoVoronoiXYZ(mol)[source]
                                                                        +class ZeoVoronoiXYZ(mol)[source]

                                                                        Bases: XYZ

                                                                        Read Voronoi Nodes from XYZ file written by Zeo++. The sites have an additional column representing the voronoi node radius. @@ -8993,7 +9015,7 @@

                                                                        Zeo++ Post-Installation Checking:
                                                                        -classmethod from_file(filename: str | Path) Self[source]
                                                                        +classmethod from_file(filename: str | Path) Self[source]

                                                                        Creates XYZ object from a file.

                                                                        Parameters:
                                                                        @@ -9007,7 +9029,7 @@

                                                                        Zeo++ Post-Installation Checking:
                                                                        -classmethod from_str(contents: str) Self[source]
                                                                        +classmethod from_str(contents: str) Self[source]

                                                                        Creates Zeo++ Voronoi XYZ object from a string. from_string method of XYZ class is being redefined.

                                                                        @@ -9024,7 +9046,7 @@

                                                                        Zeo++ Post-Installation Checking:
                                                                        -get_free_sphere_params(structure, rad_dict=None, probe_rad=0.1)[source]
                                                                        +get_free_sphere_params(structure, rad_dict=None, probe_rad=0.1)[source]

                                                                        Analyze the void space in the input structure using voronoi decomposition Calls Zeo++ for Voronoi decomposition.

                                                                        @@ -9050,7 +9072,7 @@

                                                                        Zeo++ Post-Installation Checking:
                                                                        -get_high_accuracy_voronoi_nodes(structure, rad_dict, probe_rad=0.1)[source]
                                                                        +get_high_accuracy_voronoi_nodes(structure, rad_dict, probe_rad=0.1)[source]

                                                                        Analyze the void space in the input structure using high accuracy voronoi decomposition. Calls Zeo++ for Voronoi decomposition.

                                                                        @@ -9077,7 +9099,7 @@

                                                                        Zeo++ Post-Installation Checking:
                                                                        -get_voronoi_nodes(structure, rad_dict=None, probe_rad=0.1)[source]
                                                                        +get_voronoi_nodes(structure, rad_dict=None, probe_rad=0.1)[source]

                                                                        Analyze the void space in the input structure using voronoi decomposition Calls Zeo++ for Voronoi decomposition.

                                                                        diff --git a/docs/pymatgen.io.lammps.html b/docs/pymatgen.io.lammps.html index 3b1c9f64da9..45df906f921 100644 --- a/docs/pymatgen.io.lammps.html +++ b/docs/pymatgen.io.lammps.html @@ -1,23 +1,23 @@ + + - + - pymatgen.io.lammps package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.io.lammps package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                        - 2024.10.27 -
                                                                        @@ -239,7 +236,7 @@

                                                                        Submodules
                                                                        -class CombinedData(list_of_molecules: list, list_of_names: list[str], list_of_numbers: list[int], coordinates: DataFrame, atom_style: str = 'full')[source]
                                                                        +class CombinedData(list_of_molecules: list, list_of_names: list[str], list_of_numbers: list[int], coordinates: DataFrame, atom_style: str = 'full')[source]

                                                                        Bases: LammpsData

                                                                        Object for a collective set of data for a series of LAMMPS data file. velocities not yet implemented.

                                                                        @@ -260,7 +257,7 @@

                                                                        Submodules
                                                                        -as_lammpsdata()[source]
                                                                        +as_lammpsdata()[source]

                                                                        Convert a CombinedData object to a LammpsData object. attributes are deep-copied.

                                                                        box (LammpsBox): Simulation box. force_fieldct (dict): Data for force field sections. Optional

                                                                        @@ -278,7 +275,7 @@

                                                                        Submodules
                                                                        -disassemble(atom_labels: Sequence[str] | None = None, guess_element: bool = True, ff_label: str = 'ff_map')[source]
                                                                        +disassemble(atom_labels: Sequence[str] | None = None, guess_element: bool = True, ff_label: str = 'ff_map')[source]

                                                                        Breaks down each LammpsData in CombinedData to building blocks (LammpsBox, ForceField and a series of Topology). RESTRICTIONS APPLIED: @@ -321,13 +318,13 @@

                                                                        Submodules
                                                                        -classmethod from_ff_and_topologies() None[source]
                                                                        +classmethod from_ff_and_topologies() None[source]

                                                                        Unsupported constructor for CombinedData objects.

                                                                        -classmethod from_files(coordinate_file: str, list_of_numbers: list[int], *filenames: str) Self[source]
                                                                        +classmethod from_files(coordinate_file: str, list_of_numbers: list[int], *filenames: str) Self[source]

                                                                        Constructor that parse a series of data file.

                                                                        Parameters:
                                                                        @@ -343,7 +340,7 @@

                                                                        Submodules
                                                                        -classmethod from_lammpsdata(mols: list, names: list, list_of_numbers: list, coordinates: pd.DataFrame, atom_style: str | None = None) Self[source]
                                                                        +classmethod from_lammpsdata(mols: list, names: list, list_of_numbers: list, coordinates: pd.DataFrame, atom_style: str | None = None) Self[source]

                                                                        Constructor that can infer atom_style. The input LammpsData objects are used non-destructively.

                                                                        @@ -363,13 +360,13 @@

                                                                        Submodules
                                                                        -classmethod from_structure() None[source]
                                                                        +classmethod from_structure() None[source]

                                                                        Unsupported constructor for CombinedData objects.

                                                                        -get_str(distance: int = 6, velocity: int = 8, charge: int = 4, hybrid: bool = True) str[source]
                                                                        +get_str(distance: int = 6, velocity: int = 8, charge: int = 4, hybrid: bool = True) str[source]

                                                                        Get the string representation of CombinedData, essentially the string to be written to a file. Combination info is included as a comment. For single molecule ID data, the info format is:

                                                                        @@ -408,7 +405,7 @@

                                                                        Submodules
                                                                        -classmethod parse_xyz(filename: str | Path) DataFrame[source]
                                                                        +classmethod parse_xyz(filename: str | Path) DataFrame[source]

                                                                        Load xyz file generated from packmol (for those who find it hard to install openbabel).

                                                                        Returns:
                                                                        @@ -419,7 +416,7 @@

                                                                        Submodules
                                                                        -property structure: Structure[source]
                                                                        +property structure: Structure[source]

                                                                        Exports a periodic structure object representing the simulation box.

                                                                        @@ -433,12 +430,12 @@

                                                                        Submodules
                                                                        -class ForceField(mass_info: list, nonbond_coeffs: list | None = None, topo_coeffs: dict | None = None)[source]
                                                                        +class ForceField(mass_info: list, nonbond_coeffs: list | None = None, topo_coeffs: dict | None = None)[source]

                                                                        Bases: MSONable

                                                                        Class carrying most data in masses and force field sections.

                                                                        -masses[source]
                                                                        +masses[source]

                                                                        DataFrame for masses section.

                                                                        Type:
                                                                        @@ -449,7 +446,7 @@

                                                                        Submodules
                                                                        -force_fieldct[source]
                                                                        +force_fieldct[source]

                                                                        Force field section keywords (keys) and data (values) as DataFrames.

                                                                        @@ -461,7 +458,7 @@

                                                                        Submodules
                                                                        -maps[source]
                                                                        +maps[source]

                                                                        Dict for labeling atoms and topologies.

                                                                        Type:
                                                                        @@ -528,7 +525,7 @@

                                                                        Submodules
                                                                        -classmethod from_dict(dct: dict) Self[source]
                                                                        +classmethod from_dict(dct: dict) Self[source]

                                                                        Constructor that reads in a dictionary.

                                                                        Parameters:
                                                                        @@ -539,7 +536,7 @@

                                                                        Submodules
                                                                        -classmethod from_file(filename: str) Self[source]
                                                                        +classmethod from_file(filename: str) Self[source]

                                                                        Constructor that reads in a file in YAML format.

                                                                        Parameters:
                                                                        @@ -550,7 +547,7 @@

                                                                        Submodules
                                                                        -to_file(filename: str) None[source]
                                                                        +to_file(filename: str) None[source]

                                                                        Save force field to a file in YAML format.

                                                                        Parameters:
                                                                        @@ -563,7 +560,7 @@

                                                                        Submodules
                                                                        -class LammpsBox(bounds: Sequence, tilt: Sequence | None = None)[source]
                                                                        +class LammpsBox(bounds: Sequence, tilt: Sequence | None = None)[source]

                                                                        Bases: MSONable

                                                                        Object for representing a simulation box in LAMMPS settings.

                                                                        @@ -579,7 +576,7 @@

                                                                        Submodules
                                                                        -get_box_shift(i: Sequence[int]) np.ndarray[source]
                                                                        +get_box_shift(i: Sequence[int]) np.ndarray[source]

                                                                        Calculates the coordinate shift due to PBC.

                                                                        Parameters:
                                                                        @@ -596,7 +593,7 @@

                                                                        Submodules
                                                                        -get_str(significant_figures: int = 6) str[source]
                                                                        +get_str(significant_figures: int = 6) str[source]

                                                                        Get the string representation of simulation box in LAMMPS data file format.

                                                                        Parameters:
                                                                        @@ -608,7 +605,7 @@

                                                                        Submodules
                                                                        -to_lattice() Lattice[source]
                                                                        +to_lattice() Lattice[source]

                                                                        Convert the simulation box to a more powerful Lattice backend. Note that Lattice is always periodic in 3D space while a simulation box is not necessarily periodic in all dimensions.

                                                                        @@ -621,7 +618,7 @@

                                                                        Submodules
                                                                        -property volume: float[source]
                                                                        +property volume: float[source]

                                                                        Volume of simulation box.

                                                                        @@ -629,7 +626,7 @@

                                                                        Submodules
                                                                        -class LammpsData(box: LammpsBox, masses: DataFrame, atoms: DataFrame, velocities: DataFrame = None, force_field: dict | None = None, topology: dict[str, DataFrame] | None = None, atom_style: str = 'full')[source]
                                                                        +class LammpsData(box: LammpsBox, masses: DataFrame, atoms: DataFrame, velocities: DataFrame = None, force_field: dict | None = None, topology: dict[str, DataFrame] | None = None, atom_style: str = 'full')[source]

                                                                        Bases: MSONable

                                                                        Object for representing the data in a LAMMPS data file.

                                                                        Low level constructor designed to work with parsed data or other bridging @@ -659,7 +656,7 @@

                                                                        Submodules
                                                                        -disassemble(atom_labels: Sequence[str] | None = None, guess_element: bool = True, ff_label: str = 'ff_map') tuple[LammpsBox, ForceField, list[Topology]][source]
                                                                        +disassemble(atom_labels: Sequence[str] | None = None, guess_element: bool = True, ff_label: str = 'ff_map') tuple[LammpsBox, ForceField, list[Topology]][source]

                                                                        Breaks down LammpsData to building blocks (LammpsBox, ForceField and a series of Topology). RESTRICTIONS APPLIED:

                                                                        @@ -703,7 +700,7 @@

                                                                        Submodules
                                                                        -classmethod from_ff_and_topologies(box: LammpsBox, ff: ForceField, topologies: Sequence[Topology], atom_style: str = 'full') Self[source]
                                                                        +classmethod from_ff_and_topologies(box: LammpsBox, ff: ForceField, topologies: Sequence[Topology], atom_style: str = 'full') Self[source]

                                                                        Constructor building LammpsData from a ForceField object and a list of Topology objects. Do not support intermolecular topologies since a Topology object includes data for ONE @@ -724,7 +721,7 @@

                                                                        Submodules
                                                                        -classmethod from_file(filename: str, atom_style: str = 'full', sort_id: bool = False) Self[source]
                                                                        +classmethod from_file(filename: str, atom_style: str = 'full', sort_id: bool = False) Self[source]

                                                                        Constructor that parses a file.

                                                                        Parameters:
                                                                        @@ -740,7 +737,7 @@

                                                                        Submodules
                                                                        -classmethod from_structure(structure: Structure, ff_elements: Sequence[str] | None = None, atom_style: Literal['atomic', 'charge'] = 'charge', is_sort: bool = False) Self[source]
                                                                        +classmethod from_structure(structure: Structure, ff_elements: Sequence[str] | None = None, atom_style: Literal['atomic', 'charge'] = 'charge', is_sort: bool = False) Self[source]

                                                                        Simple constructor building LammpsData from a structure without force field parameters and topologies.

                                                                        @@ -760,7 +757,7 @@

                                                                        Submodules
                                                                        -get_str(distance: int = 6, velocity: int = 8, charge: int = 4, hybrid: bool = True) str[source]
                                                                        +get_str(distance: int = 6, velocity: int = 8, charge: int = 4, hybrid: bool = True) str[source]

                                                                        Get the string representation of LammpsData, essentially the string to be written to a file. Supports hybrid style coeffs read and write.

                                                                        @@ -791,7 +788,7 @@

                                                                        Submodules
                                                                        -set_charge_atom(charges: dict[int, float]) None[source]
                                                                        +set_charge_atom(charges: dict[int, float]) None[source]

                                                                        Set the charges of specific atoms of the data.

                                                                        Parameters:
                                                                        @@ -804,7 +801,7 @@

                                                                        Submodules
                                                                        -set_charge_atom_type(charges: dict[str | int, float]) None[source]
                                                                        +set_charge_atom_type(charges: dict[str | int, float]) None[source]

                                                                        Add or modify charges of all atoms of a given type in the data.

                                                                        Parameters:
                                                                        @@ -822,7 +819,7 @@

                                                                        Submodules
                                                                        -property structure: Structure[source]
                                                                        +property structure: Structure[source]

                                                                        Exports a periodic structure object representing the simulation box.

                                                                        @@ -834,7 +831,7 @@

                                                                        Submodules
                                                                        -write_file(filename: str, distance: int = 6, velocity: int = 8, charge: int = 4) None[source]
                                                                        +write_file(filename: str, distance: int = 6, velocity: int = 8, charge: int = 4) None[source]

                                                                        Write LammpsData to file.

                                                                        Parameters:
                                                                        @@ -856,7 +853,7 @@

                                                                        Submodules
                                                                        -class Topology(sites: Sequence[Site] | SiteCollection, ff_label: str | None = None, charges: Sequence | None = None, velocities: Sequence[Sequence] | None = None, topologies: dict | None = None)[source]
                                                                        +class Topology(sites: Sequence[Site] | SiteCollection, ff_label: str | None = None, charges: Sequence | None = None, velocities: Sequence[Sequence] | None = None, topologies: dict | None = None)[source]

                                                                        Bases: MSONable

                                                                        Carry most data in Atoms, Velocities and Molecular Topology sections for ONE SINGLE Molecule or Structure object, or a plain list of Sites.

                                                                        @@ -893,7 +890,7 @@

                                                                        Submodules
                                                                        -classmethod from_bonding(molecule: Molecule, bond: bool = True, angle: bool = True, dihedral: bool = True, tol: float = 0.1, **kwargs) Self[source]
                                                                        +classmethod from_bonding(molecule: Molecule, bond: bool = True, angle: bool = True, dihedral: bool = True, tol: float = 0.1, **kwargs) Self[source]

                                                                        Another constructor that creates an instance from a molecule. Covalent bonds and other bond-based topologies (angles and dihedrals) can be automatically determined. Cannot be used for @@ -918,7 +915,7 @@

                                                                        Submodules
                                                                        -lattice_2_lmpbox(lattice: Lattice, origin: Sequence = (0, 0, 0)) tuple[LammpsBox, SymmOp][source]
                                                                        +lattice_2_lmpbox(lattice: Lattice, origin: Sequence = (0, 0, 0)) tuple[LammpsBox, SymmOp][source]

                                                                        Converts a lattice object to LammpsBox, and calculates the symmetry operation used.

                                                                        @@ -946,7 +943,7 @@

                                                                        Submoduleshttps://github.com/Matgenix/atomate2-lammps).

                                                                        -class BaseLammpsGenerator(inputfile: ~pymatgen.io.lammps.inputs.LammpsInputFile | None = None, template: str = <factory>, data: ~pymatgen.io.lammps.data.LammpsData | ~pymatgen.io.lammps.data.CombinedData | None = None, settings: dict = <factory>, calc_type: str = 'lammps', keep_stages: bool = True)[source]
                                                                        +class BaseLammpsGenerator(inputfile: ~pymatgen.io.lammps.inputs.LammpsInputFile | None = None, template: str = <factory>, data: ~pymatgen.io.lammps.data.LammpsData | ~pymatgen.io.lammps.data.CombinedData | None = None, settings: dict = <factory>, calc_type: str = 'lammps', keep_stages: bool = True)[source]

                                                                        Bases: InputGenerator

                                                                        Base class to generate LAMMPS input sets. Uses template files for the input. The variables that can be changed @@ -957,7 +954,7 @@

                                                                        Submodules
                                                                        -template[source]
                                                                        +template[source]

                                                                        Path (string) to the template file used to create the InputFile for LAMMPS.

                                                                        Type:
                                                                        @@ -968,7 +965,7 @@

                                                                        Submodules
                                                                        -calc_type[source]
                                                                        +calc_type[source]

                                                                        Human-readable string used to briefly describe the type of computations performed by LAMMPS.

                                                                        Type:
                                                                        @@ -979,7 +976,7 @@

                                                                        Submodules
                                                                        -settings[source]
                                                                        +settings[source]

                                                                        Dictionary containing the values of the parameters to replace in the template.

                                                                        Type:
                                                                        @@ -990,7 +987,7 @@

                                                                        Submodules
                                                                        -keep_stages[source]
                                                                        +keep_stages[source]

                                                                        If True, the string is formatted in a block structure with stage names

                                                                        Type:
                                                                        @@ -1016,45 +1013,45 @@

                                                                        Submoduleshttps://github.com/Matgenix/atomate2-lammps).

                                                                        -calc_type: str = 'lammps'[source]
                                                                        +calc_type: str = 'lammps'[source]
                                                                        -data: LammpsData | CombinedData | None = None[source]
                                                                        +data: LammpsData | CombinedData | None = None[source]
                                                                        -get_input_set(structure: Structure | LammpsData | CombinedData) LammpsInputSet[source]
                                                                        +get_input_set(structure: Structure | LammpsData | CombinedData) LammpsInputSet[source]

                                                                        Generate a LammpsInputSet from the structure/data, tailored to the template file.

                                                                        -inputfile: LammpsInputFile | None = None[source]
                                                                        +inputfile: LammpsInputFile | None = None[source]
                                                                        -keep_stages: bool = True[source]
                                                                        +keep_stages: bool = True[source]
                                                                        -settings: dict[source]
                                                                        +settings: dict[source]
                                                                        -template: str[source]
                                                                        +template: str[source]

                                                                        -class LammpsMinimization(template: str | None = None, units: str = 'metal', atom_style: str = 'full', dimension: int = 3, boundary: str = 'p p p', read_data: str = 'system.data', force_field: str = 'Unspecified force field!', keep_stages: bool = False)[source]
                                                                        +class LammpsMinimization(template: str | None = None, units: str = 'metal', atom_style: str = 'full', dimension: int = 3, boundary: str = 'p p p', read_data: str = 'system.data', force_field: str = 'Unspecified force field!', keep_stages: bool = False)[source]

                                                                        Bases: BaseLammpsGenerator

                                                                        Generator that yields a LammpsInputSet tailored for minimizing the energy of a system by iteratively adjusting atom coordinates. @@ -1090,37 +1087,37 @@

                                                                        Submodules
                                                                        -property atom_style: str[source]
                                                                        +property atom_style: str[source]

                                                                        The argument of the command ‘atom_style’ passed to the generator.

                                                                        -property boundary: str[source]
                                                                        +property boundary: str[source]

                                                                        The argument of the command ‘boundary’ passed to the generator.

                                                                        -property dimension: int[source]
                                                                        +property dimension: int[source]

                                                                        The argument of the command ‘dimension’ passed to the generator.

                                                                        -property force_field: str[source]
                                                                        +property force_field: str[source]

                                                                        The details of the force field commands passed to the generator.

                                                                        -property read_data: str[source]
                                                                        +property read_data: str[source]

                                                                        The argument of the command ‘read_data’ passed to the generator.

                                                                        -property units: str[source]
                                                                        +property units: str[source]

                                                                        The argument of the command ‘units’ passed to the generator.

                                                                        @@ -1135,7 +1132,7 @@

                                                                        Submoduleshttps://github.com/Matgenix/atomate2-lammps.

                                                                        -class LammpsInputFile(stages: list | None = None)[source]
                                                                        +class LammpsInputFile(stages: list | None = None)[source]

                                                                        Bases: InputFile

                                                                        LAMMPS input settings file such as in.lammps. Allows for LAMMPS input generation in line/stage wise manner. A stage @@ -1166,7 +1163,7 @@

                                                                        ]

                                                                        -add_commands(stage_name: str, commands: str | list[str] | dict) None[source]
                                                                        +add_commands(stage_name: str, commands: str | list[str] | dict) None[source]

                                                                        Method to add a LAMMPS commands and their arguments to a stage of the LammpsInputFile. The stage name should be provided: a default behavior is avoided here to avoid mistakes (e.g., the commands are added to the wrong stage).

                                                                        @@ -1215,7 +1212,7 @@

                                                                        )

                                                                        -add_stage(stage: dict | None = None, commands: str | list[str] | dict[str, str | float] | None = None, stage_name: str | None = None, after_stage: str | int | None = None) None[source]
                                                                        +add_stage(stage: dict | None = None, commands: str | list[str] | dict[str, str | float] | None = None, stage_name: str | None = None, after_stage: str | int | None = None) None[source]

                                                                        Adds a new stage to the LammpsInputFile, either from a whole stage (dict) or from a stage_name and commands. Both ways are mutually exclusive.

                                                                        Examples

                                                                        @@ -1305,7 +1302,7 @@

                                                                        ]

                                                                        -append(lmp_input_file: LammpsInputFile) None[source]
                                                                        +append(lmp_input_file: LammpsInputFile) None[source]

                                                                        Appends a LammpsInputFile to another. The stages are merged, and the numbering of stages/comments is either kept the same or updated.

                                                                        @@ -1317,7 +1314,7 @@

                                                                        ]

                                                                        -contains_command(command: str, stage_name: str | None = None) bool[source]
                                                                        +contains_command(command: str, stage_name: str | None = None) bool[source]

                                                                        Get whether a given command is present in the LammpsInputFile. A stage name can be given; in this case the search will happen only for this stage.

                                                                        @@ -1338,7 +1335,7 @@

                                                                        ]

                                                                        -classmethod from_file(path: str | Path, ignore_comments: bool = False, keep_stages: bool = False) Self[source]
                                                                        +classmethod from_file(path: str | Path, ignore_comments: bool = False, keep_stages: bool = False) Self[source]

                                                                        Creates an InputFile object from a file.

                                                                        Parameters:
                                                                        @@ -1357,7 +1354,7 @@

                                                                        ]

                                                                        -classmethod from_str(contents: str, ignore_comments: bool = False, keep_stages: bool = False) Self[source]
                                                                        +classmethod from_str(contents: str, ignore_comments: bool = False, keep_stages: bool = False) Self[source]

                                                                        Helper method to parse string representation of LammpsInputFile. If you created the input file by hand, there is no guarantee that the representation will be perfect as it is difficult to account for all the cosmetic changes you @@ -1382,7 +1379,7 @@

                                                                        ]

                                                                        -get_args(command: str, stage_name: str | None = None) list | str[source]
                                                                        +get_args(command: str, stage_name: str | None = None) list | str[source]

                                                                        Given a command, returns the corresponding arguments (or list of arguments) in the LammpsInputFile. A stage name can be given; in this case the search will happen only for this stage. If a stage name is not given, the command will be searched for through all of them. @@ -1403,7 +1400,7 @@

                                                                        ]

                                                                        -get_str(ignore_comments: bool = False, keep_stages: bool = True) str[source]
                                                                        +get_str(ignore_comments: bool = False, keep_stages: bool = True) str[source]

                                                                        Generate and ² the string representation of the LammpsInputFile. Stages are separated by empty lines. The headers of the stages will be put in comments preceding each stage. @@ -1428,7 +1425,7 @@

                                                                        ]

                                                                        -merge_stages(stage_names: list[str]) None[source]
                                                                        +merge_stages(stage_names: list[str]) None[source]

                                                                        Merges multiple stages of a LammpsInputFile together. The merged stage will be at the same index as the first of the stages to be merged. The others will appear in the same order as provided in the list. Other non-merged stages will follow.

                                                                        @@ -1441,20 +1438,20 @@

                                                                        ]

                                                                        -property ncomments: int[source]
                                                                        +property ncomments: int[source]

                                                                        The number of comments in the current LammpsInputFile. Includes the blocks of comments as well as inline comments (comment lines within blocks of LAMMPS commands).

                                                                        -property nstages: int[source]
                                                                        +property nstages: int[source]

                                                                        The number of stages in the current LammpsInputFile.

                                                                        -remove_command(command: str, stage_name: str | list[str] | None = None, remove_empty_stages: bool = True) None[source]
                                                                        +remove_command(command: str, stage_name: str | list[str] | None = None, remove_empty_stages: bool = True) None[source]

                                                                        Removes a given command from a given stage. If no stage is given, removes all occurrences of the command. In case removing a command completely empties a stage, the choice whether to keep this stage in the LammpsInputFile is given by remove_empty_stages.

                                                                        @@ -1471,7 +1468,7 @@

                                                                        ]

                                                                        -remove_stage(stage_name: str) None[source]
                                                                        +remove_stage(stage_name: str) None[source]

                                                                        Removes a whole stage from the LammpsInputFile.

                                                                        Parameters:
                                                                        @@ -1482,7 +1479,7 @@

                                                                        ]

                                                                        -rename_stage(stage_name: str, new_name: str) None[source]
                                                                        +rename_stage(stage_name: str, new_name: str) None[source]

                                                                        Renames a stage stage_name from LammpsInputFile into new_name. First checks that the stage to rename is present, and that the new name is not already a stage name.

                                                                        @@ -1498,7 +1495,7 @@

                                                                        ]

                                                                        -set_args(command: str, argument: str, stage_name: str | None = None, how: str | int | list[int] = 'all') None[source]
                                                                        +set_args(command: str, argument: str, stage_name: str | None = None, how: str | int | list[int] = 'all') None[source]

                                                                        Set the arguments for the given command to the given string. If the command is not found, nothing is done. Use LammpsInputFile.add_commands instead. If a stage name is specified, it will be replaced or set only for this stage. @@ -1521,13 +1518,13 @@

                                                                        ]

                                                                        -property stages_names: list[source]
                                                                        +property stages_names: list[source]

                                                                        List of names for all the stages present in stages.

                                                                        -write_file(filename: str | PathLike, ignore_comments: bool = False, keep_stages: bool = True) None[source]
                                                                        +write_file(filename: str | PathLike, ignore_comments: bool = False, keep_stages: bool = True) None[source]

                                                                        Write LAMMPS input file.

                                                                        Parameters:
                                                                        @@ -1546,7 +1543,7 @@

                                                                        ]

                                                                        -class LammpsRun(script_template: str, settings: dict, data: LammpsData | str, script_filename: str)[source]
                                                                        +class LammpsRun(script_template: str, settings: dict, data: LammpsData | str, script_filename: str)[source]

                                                                        Bases: MSONable

                                                                        Examples for various simple LAMMPS runs with given simulation box, force field and a few more settings. Experienced LAMMPS users should @@ -1571,7 +1568,7 @@

                                                                        ]

                                                                        -classmethod md(data: LammpsData | str, force_field: str, temperature: float, nsteps: int, other_settings: dict | None = None) LammpsRun[source]
                                                                        +classmethod md(data: LammpsData | str, force_field: str, temperature: float, nsteps: int, other_settings: dict | None = None) LammpsRun[source]

                                                                        Example for a simple MD run based on template md.template.

                                                                        Parameters:
                                                                        @@ -1591,7 +1588,7 @@

                                                                        ]

                                                                        -write_inputs(output_dir: str, **kwargs) None[source]
                                                                        +write_inputs(output_dir: str, **kwargs) None[source]

                                                                        Write all input files (input script, and data if needed). Other supporting files are not handled at this moment.

                                                                        @@ -1608,7 +1605,7 @@

                                                                        ]

                                                                        -class LammpsTemplateGen[source]
                                                                        +class LammpsTemplateGen[source]

                                                                        Bases: TemplateInputGen

                                                                        Create an InputSet object for a LAMMPS run based on a template file. The input script is constructed by substituting variables into placeholders @@ -1621,7 +1618,7 @@

                                                                        ]

                                                                        -get_input_set(script_template: PathLike, settings: dict | None = None, script_filename: str = 'in.lammps', data: LammpsData | CombinedData | None = None, data_filename: str = 'system.data') InputSet[source]
                                                                        +get_input_set(script_template: PathLike, settings: dict | None = None, script_filename: str = 'in.lammps', data: LammpsData | CombinedData | None = None, data_filename: str = 'system.data') InputSet[source]
                                                                        Parameters:
                                                                          @@ -1645,7 +1642,7 @@

                                                                          ]

                                                                          -write_lammps_inputs(output_dir: str, script_template: str, settings: dict | None = None, data: LammpsData | str | None = None, script_filename: str = 'in.lammps', make_dir_if_not_present: bool = True, **kwargs) None[source]
                                                                          +write_lammps_inputs(output_dir: str, script_template: str, settings: dict | None = None, data: LammpsData | str | None = None, script_filename: str = 'in.lammps', make_dir_if_not_present: bool = True, **kwargs) None[source]

                                                                          Write input files for a LAMMPS run. Input script is constructed from a str template with placeholders to be filled by custom settings. Data file is either written from a LammpsData @@ -1696,7 +1693,7 @@

                                                                          ]

                                                                          ... ... run $nsteps''' >>> write_lammps_inputs(".", eam_template, settings={"temperature": 1600.0, "nsteps": 100}) ->>> with open("in.lammps") as file: +>>> with open("in.lammps", encoding="utf-8") as file: ... script = file.read() >>> print(script) units metal @@ -1724,7 +1721,7 @@

                                                                          ]

                                                                          -class LammpsDump(timestep: int, natoms: int, box: LammpsBox, data: DataFrame)[source]
                                                                          +class LammpsDump(timestep: int, natoms: int, box: LammpsBox, data: DataFrame)[source]

                                                                          Bases: MSONable

                                                                          Object for representing dump data for a single snapshot.

                                                                          Base constructor.

                                                                          @@ -1740,13 +1737,13 @@

                                                                          ]

                                                                          -as_dict() dict[str, Any][source]
                                                                          +as_dict() dict[str, Any][source]

                                                                          Get MSONable dict.

                                                                          -classmethod from_dict(dct: dict) Self[source]
                                                                          +classmethod from_dict(dct: dict) Self[source]
                                                                          Parameters:

                                                                          dct (dict) – Dict representation.

                                                                          @@ -1759,7 +1756,7 @@

                                                                          ]

                                                                          -classmethod from_str(string: str) Self[source]
                                                                          +classmethod from_str(string: str) Self[source]

                                                                          Constructor from string parsing.

                                                                          Parameters:
                                                                          @@ -1772,7 +1769,7 @@

                                                                          ]

                                                                          -parse_lammps_dumps(file_pattern)[source]
                                                                          +parse_lammps_dumps(file_pattern)[source]

                                                                          Generator that parses dump file(s).

                                                                          Parameters:
                                                                          @@ -1788,7 +1785,7 @@

                                                                          ]

                                                                          -parse_lammps_log(filename: str = 'log.lammps') list[DataFrame][source]
                                                                          +parse_lammps_log(filename: str = 'log.lammps') list[DataFrame][source]

                                                                          Parses log file with focus on thermo data. Both one and multi line formats are supported. Any incomplete runs (no “Loop time” marker) will not be parsed.

                                                                          @@ -1817,7 +1814,7 @@

                                                                          ]

                                                                          https://github.com/Matgenix/atomate2-lammps).

                                                                          -class LammpsInputSet(inputfile: LammpsInputFile | str, data: LammpsData | CombinedData, calc_type: str = '', template_file: PathLike = '', keep_stages: bool = False)[source]
                                                                          +class LammpsInputSet(inputfile: LammpsInputFile | str, data: LammpsData | CombinedData, calc_type: str = '', template_file: PathLike = '', keep_stages: bool = False)[source]

                                                                          Bases: InputSet

                                                                          Container class for all LAMMPS inputs. This class is intended to provide general functionality that can be customized to many purposes. @@ -1843,7 +1840,7 @@

                                                                          ]

                                                                          -classmethod from_directory(directory: PathLike, keep_stages: bool = False) Self[source]
                                                                          +classmethod from_directory(directory: PathLike, keep_stages: bool = False) Self[source]

                                                                          Construct a LammpsInputSet from a directory of two or more files.

                                                                          TODO: accept directories with only the input file, that should include the structure as well.

                                                                          @@ -1859,7 +1856,7 @@

                                                                          ]

                                                                          -validate() bool[source]
                                                                          +validate() bool[source]

                                                                          A place to implement basic checks to verify the validity of an input set. Can be as simple or as complex as desired. Will raise a NotImplementedError unless overloaded by the inheriting class.

                                                                          @@ -1873,7 +1870,7 @@

                                                                          ]

                                                                          This module defines utility classes and functions.

                                                                          -class LammpsRunner(input_filename: str = 'lammps.in', bin: str = 'lammps')[source]
                                                                          +class LammpsRunner(input_filename: str = 'lammps.in', bin: str = 'lammps')[source]

                                                                          Bases: object

                                                                          LAMMPS wrapper.

                                                                          @@ -1886,7 +1883,7 @@

                                                                          ]

                                                                          -run() tuple[bytes, bytes][source]
                                                                          +run() tuple[bytes, bytes][source]

                                                                          Write the input/data files and run LAMMPS.

                                                                          @@ -1894,7 +1891,7 @@

                                                                          ]

                                                                          -class PackmolRunner(mols: list, param_list: list, input_file: str = 'pack.inp', tolerance: float = 2.0, filetype: str = 'xyz', control_params: dict | None = None, auto_box: bool = True, output_file: str = 'packed.xyz', bin: str = 'packmol')[source]
                                                                          +class PackmolRunner(mols: list, param_list: list, input_file: str = 'pack.inp', tolerance: float = 2.0, filetype: str = 'xyz', control_params: dict | None = None, auto_box: bool = True, output_file: str = 'packed.xyz', bin: str = 'packmol')[source]

                                                                          Bases: object

                                                                          Wrapper for the Packmol software that can be used to pack various types of molecules into a one single unit.

                                                                          @@ -1916,7 +1913,7 @@

                                                                          ]

                                                                          -convert_obatoms_to_molecule(atoms: Sequence, residue_name: str | None = None, site_property: str = 'ff_map') Molecule[source]
                                                                          +convert_obatoms_to_molecule(atoms: Sequence, residue_name: str | None = None, site_property: str = 'ff_map') Molecule[source]

                                                                          Convert list of openbabel atoms to Molecule.

                                                                          Parameters:
                                                                          @@ -1935,7 +1932,7 @@

                                                                          ]

                                                                          -restore_site_properties(site_property: str = 'ff_map', filename: str | None = None) Molecule[source]
                                                                          +restore_site_properties(site_property: str = 'ff_map', filename: str | None = None) Molecule[source]

                                                                          Restore the site properties for the final packed molecule.

                                                                          Parameters:
                                                                          @@ -1952,7 +1949,7 @@

                                                                          ]

                                                                          -run(site_property: str | None = None) Molecule[source]
                                                                          +run(site_property: str | None = None) Molecule[source]

                                                                          Write the input file to the scratch directory, run packmol and return the packed molecule to the current working directory.

                                                                          @@ -1968,7 +1965,7 @@

                                                                          ]

                                                                          -static write_pdb(mol: Molecule, filename: str, name: str | None = None, num=None) None[source]
                                                                          +static write_pdb(mol: Molecule, filename: str, name: str | None = None, num=None) None[source]

                                                                          Dump the molecule into pdb file with custom residue name and number.

                                                                          @@ -1976,7 +1973,7 @@

                                                                          ]

                                                                          -class Polymer(start_monomer: Molecule, s_head: int, s_tail: int, monomer: Molecule, head: int, tail: int, end_monomer: Molecule, e_head: int, e_tail: int, n_units: int, link_distance: float = 1.0, linear_chain: bool = False)[source]
                                                                          +class Polymer(start_monomer: Molecule, s_head: int, s_tail: int, monomer: Molecule, head: int, tail: int, end_monomer: Molecule, e_head: int, e_tail: int, n_units: int, link_distance: float = 1.0, linear_chain: bool = False)[source]

                                                                          Bases: object

                                                                          Generate polymer chain via Random walk. At each position there are a total of 5 possible moves(excluding the previous direction).

                                                                          diff --git a/docs/pymatgen.io.lobster.html b/docs/pymatgen.io.lobster.html index 6b93cfdc8fb..2662f5226fc 100644 --- a/docs/pymatgen.io.lobster.html +++ b/docs/pymatgen.io.lobster.html @@ -1,23 +1,23 @@ + + - + - pymatgen.io.lobster package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.io.lobster package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                          - 2024.10.27 -
                                                                          @@ -315,7 +312,7 @@

                                                                          Submodules
                                                                          -class Lobsterin(settingsdict: dict)[source]
                                                                          +class Lobsterin(settingsdict: dict)[source]

                                                                          Bases: UserDict, MSONable

                                                                          Handle and generate lobsterin files. Furthermore, it can also modify INCAR files for LOBSTER, generate KPOINTS files for fatband calculations in LOBSTER, @@ -329,38 +326,38 @@

                                                                          Submodules
                                                                          -AVAILABLE_KEYWORDS: ClassVar[dict[str, str]] = {'autorotate': 'autoRotate', 'bandwisespilling': 'bandwiseSpilling', 'basisfunctions': 'basisfunctions', 'basisrotation': 'basisRotation', 'basisset': 'basisSet', 'bwdf': 'BWDF', 'bwdfcohp': 'BWDFCOHP', 'cobibetween': 'cobiBetween', 'cohpbetween': 'cohpbetween', 'cohpendenergy': 'COHPendEnergy', 'cohpgenerator': 'cohpGenerator', 'cohpstartenergy': 'COHPstartEnergy', 'cohpsteps': 'COHPSteps', 'createfatband': 'createFatband', 'customstoforatom': 'customSTOforAtom', 'densityofenergy': 'DensityOfEnergy', 'donotignoreexcessivebands': 'doNotIgnoreExcessiveBands', 'donotorthogonalizebasis': 'doNotOrthogonalizeBasis', 'donotuseabsolutespilling': 'doNotUseAbsoluteSpilling', 'ewaldsum': 'EwaldSum', 'forceenergyrange': 'forceEnergyRange', 'forcev1hmatrix': 'forceV1HMatrix', 'gaussiansmearingwidth': 'gaussianSmearingWidth', 'gridbufferforprinting': 'gridBufferForPrinting', 'griddensityforprinting': 'gridDensityForPrinting', 'kpointwisespilling': 'kpointwiseSpilling', 'kspacecohp': 'kSpaceCOHP', 'loadprojectionfromfile': 'loadProjectionFromFile', 'lsodos': 'LSODOS', 'nofftforvisualization': 'noFFTforVisualization', 'nomemorymappedfiles': 'noMemoryMappedFiles', 'onlyreadvasprun.xml': 'onlyReadVasprun.xml', 'printlcaorealspacewavefunction': 'printLCAORealSpaceWavefunction', 'printlmosonatoms': 'printLmosOnAtoms', 'printlmosonatomswriteatomicdensities': 'printLmosOnAtomswriteAtomicDensities', 'printmofeatomwise': 'printMofeAtomWise', 'printmofemoleculewise': 'printMofeMoleculeWise', 'printpawrealspacewavefunction': 'printPAWRealSpaceWavefunction', 'printtotalspilling': 'printTotalSpilling', 'realspacehamiltonian': 'realspaceHamiltonian', 'realspaceoverlap': 'realspaceOverlap', 'rmsp': 'RMSp', 'saveprojectiontofile': 'saveProjectionToFile', 'skipcar': 'skipCar', 'skipcobi': 'skipcobi', 'skipcohp': 'skipcohp', 'skipcoop': 'skipcoop', 'skipdos': 'skipdos', 'skipgrosspopulation': 'skipGrossPopulation', 'skipmadelungenergy': 'skipMadelungEnergy', 'skipmofe': 'skipMOFE', 'skipmolecularorbitals': 'skipMolecularOrbitals', 'skippaworthonormalitytest': 'skipPAWOrthonormalityTest', 'skippopulationanalysis': 'skipPopulationAnalysis', 'skipprojection': 'skipProjection', 'skipreorthonormalization': 'skipReOrthonormalization', 'usedecimalplaces': 'useDecimalPlaces', 'useoriginaltetrahedronmethod': 'useOriginalTetrahedronMethod', 'userecommendedbasisfunctions': 'userecommendedbasisfunctions', 'writeatomicorbitals': 'writeAtomicOrbitals', 'writebasisfunctions': 'writeBasisFunctions', 'writematricestofile': 'writeMatricesToFile'}[source]
                                                                          +AVAILABLE_KEYWORDS: ClassVar[dict[str, str]] = {'autorotate': 'autoRotate', 'bandwisespilling': 'bandwiseSpilling', 'basisfunctions': 'basisfunctions', 'basisrotation': 'basisRotation', 'basisset': 'basisSet', 'bwdf': 'BWDF', 'bwdfcohp': 'BWDFCOHP', 'cobibetween': 'cobiBetween', 'cohpbetween': 'cohpbetween', 'cohpendenergy': 'COHPendEnergy', 'cohpgenerator': 'cohpGenerator', 'cohpstartenergy': 'COHPstartEnergy', 'cohpsteps': 'COHPSteps', 'createfatband': 'createFatband', 'customstoforatom': 'customSTOforAtom', 'densityofenergy': 'DensityOfEnergy', 'donotignoreexcessivebands': 'doNotIgnoreExcessiveBands', 'donotorthogonalizebasis': 'doNotOrthogonalizeBasis', 'donotuseabsolutespilling': 'doNotUseAbsoluteSpilling', 'ewaldsum': 'EwaldSum', 'forceenergyrange': 'forceEnergyRange', 'forcev1hmatrix': 'forceV1HMatrix', 'gaussiansmearingwidth': 'gaussianSmearingWidth', 'gridbufferforprinting': 'gridBufferForPrinting', 'griddensityforprinting': 'gridDensityForPrinting', 'kpointwisespilling': 'kpointwiseSpilling', 'kspacecohp': 'kSpaceCOHP', 'loadprojectionfromfile': 'loadProjectionFromFile', 'lsodos': 'LSODOS', 'nofftforvisualization': 'noFFTforVisualization', 'nomemorymappedfiles': 'noMemoryMappedFiles', 'onlyreadvasprun.xml': 'onlyReadVasprun.xml', 'printlcaorealspacewavefunction': 'printLCAORealSpaceWavefunction', 'printlmosonatoms': 'printLmosOnAtoms', 'printlmosonatomswriteatomicdensities': 'printLmosOnAtomswriteAtomicDensities', 'printmofeatomwise': 'printMofeAtomWise', 'printmofemoleculewise': 'printMofeMoleculeWise', 'printpawrealspacewavefunction': 'printPAWRealSpaceWavefunction', 'printtotalspilling': 'printTotalSpilling', 'realspacehamiltonian': 'realspaceHamiltonian', 'realspaceoverlap': 'realspaceOverlap', 'rmsp': 'RMSp', 'saveprojectiontofile': 'saveProjectionToFile', 'skipcar': 'skipCar', 'skipcobi': 'skipcobi', 'skipcohp': 'skipcohp', 'skipcoop': 'skipcoop', 'skipdos': 'skipdos', 'skipgrosspopulation': 'skipGrossPopulation', 'skipmadelungenergy': 'skipMadelungEnergy', 'skipmofe': 'skipMOFE', 'skipmolecularorbitals': 'skipMolecularOrbitals', 'skippaworthonormalitytest': 'skipPAWOrthonormalityTest', 'skippopulationanalysis': 'skipPopulationAnalysis', 'skipprojection': 'skipProjection', 'skipreorthonormalization': 'skipReOrthonormalization', 'usedecimalplaces': 'useDecimalPlaces', 'useoriginaltetrahedronmethod': 'useOriginalTetrahedronMethod', 'userecommendedbasisfunctions': 'userecommendedbasisfunctions', 'writeatomicorbitals': 'writeAtomicOrbitals', 'writebasisfunctions': 'writeBasisFunctions', 'writematricestofile': 'writeMatricesToFile'}[source]

                                                                          -BOOLEAN_KEYWORDS: ClassVar[dict[str, str]] = {'autorotate': 'autoRotate', 'bandwisespilling': 'bandwiseSpilling', 'bwdf': 'BWDF', 'bwdfcohp': 'BWDFCOHP', 'densityofenergy': 'DensityOfEnergy', 'donotignoreexcessivebands': 'doNotIgnoreExcessiveBands', 'donotorthogonalizebasis': 'doNotOrthogonalizeBasis', 'donotuseabsolutespilling': 'doNotUseAbsoluteSpilling', 'forceenergyrange': 'forceEnergyRange', 'forcev1hmatrix': 'forceV1HMatrix', 'kpointwisespilling': 'kpointwiseSpilling', 'loadprojectionfromfile': 'loadProjectionFromFile', 'lsodos': 'LSODOS', 'nofftforvisualization': 'noFFTforVisualization', 'nomemorymappedfiles': 'noMemoryMappedFiles', 'onlyreadvasprun.xml': 'onlyReadVasprun.xml', 'printlmosonatoms': 'printLmosOnAtoms', 'printmofeatomwise': 'printMofeAtomWise', 'printmofemoleculewise': 'printMofeMoleculeWise', 'printtotalspilling': 'printTotalSpilling', 'rmsp': 'RMSp', 'saveprojectiontofile': 'saveProjectionToFile', 'skipcar': 'skipCar', 'skipcobi': 'skipcobi', 'skipcohp': 'skipcohp', 'skipcoop': 'skipcoop', 'skipdos': 'skipdos', 'skipgrosspopulation': 'skipGrossPopulation', 'skipmadelungenergy': 'skipMadelungEnergy', 'skipmofe': 'skipMOFE', 'skipmolecularorbitals': 'skipMolecularOrbitals', 'skippaworthonormalitytest': 'skipPAWOrthonormalityTest', 'skippopulationanalysis': 'skipPopulationAnalysis', 'skipprojection': 'skipProjection', 'skipreorthonormalization': 'skipReOrthonormalization', 'useoriginaltetrahedronmethod': 'useOriginalTetrahedronMethod', 'userecommendedbasisfunctions': 'userecommendedbasisfunctions', 'writeatomicorbitals': 'writeAtomicOrbitals', 'writebasisfunctions': 'writeBasisFunctions', 'writematricestofile': 'writeMatricesToFile'}[source]
                                                                          +BOOLEAN_KEYWORDS: ClassVar[dict[str, str]] = {'autorotate': 'autoRotate', 'bandwisespilling': 'bandwiseSpilling', 'bwdf': 'BWDF', 'bwdfcohp': 'BWDFCOHP', 'densityofenergy': 'DensityOfEnergy', 'donotignoreexcessivebands': 'doNotIgnoreExcessiveBands', 'donotorthogonalizebasis': 'doNotOrthogonalizeBasis', 'donotuseabsolutespilling': 'doNotUseAbsoluteSpilling', 'forceenergyrange': 'forceEnergyRange', 'forcev1hmatrix': 'forceV1HMatrix', 'kpointwisespilling': 'kpointwiseSpilling', 'loadprojectionfromfile': 'loadProjectionFromFile', 'lsodos': 'LSODOS', 'nofftforvisualization': 'noFFTforVisualization', 'nomemorymappedfiles': 'noMemoryMappedFiles', 'onlyreadvasprun.xml': 'onlyReadVasprun.xml', 'printlmosonatoms': 'printLmosOnAtoms', 'printmofeatomwise': 'printMofeAtomWise', 'printmofemoleculewise': 'printMofeMoleculeWise', 'printtotalspilling': 'printTotalSpilling', 'rmsp': 'RMSp', 'saveprojectiontofile': 'saveProjectionToFile', 'skipcar': 'skipCar', 'skipcobi': 'skipcobi', 'skipcohp': 'skipcohp', 'skipcoop': 'skipcoop', 'skipdos': 'skipdos', 'skipgrosspopulation': 'skipGrossPopulation', 'skipmadelungenergy': 'skipMadelungEnergy', 'skipmofe': 'skipMOFE', 'skipmolecularorbitals': 'skipMolecularOrbitals', 'skippaworthonormalitytest': 'skipPAWOrthonormalityTest', 'skippopulationanalysis': 'skipPopulationAnalysis', 'skipprojection': 'skipProjection', 'skipreorthonormalization': 'skipReOrthonormalization', 'useoriginaltetrahedronmethod': 'useOriginalTetrahedronMethod', 'userecommendedbasisfunctions': 'userecommendedbasisfunctions', 'writeatomicorbitals': 'writeAtomicOrbitals', 'writebasisfunctions': 'writeBasisFunctions', 'writematricestofile': 'writeMatricesToFile'}[source]
                                                                          -FLOAT_KEYWORDS: ClassVar[dict[str, str]] = {'basisrotation': 'basisRotation', 'cohpendenergy': 'COHPendEnergy', 'cohpstartenergy': 'COHPstartEnergy', 'cohpsteps': 'COHPSteps', 'gaussiansmearingwidth': 'gaussianSmearingWidth', 'gridbufferforprinting': 'gridBufferForPrinting', 'griddensityforprinting': 'gridDensityForPrinting', 'usedecimalplaces': 'useDecimalPlaces'}[source]
                                                                          +FLOAT_KEYWORDS: ClassVar[dict[str, str]] = {'basisrotation': 'basisRotation', 'cohpendenergy': 'COHPendEnergy', 'cohpstartenergy': 'COHPstartEnergy', 'cohpsteps': 'COHPSteps', 'gaussiansmearingwidth': 'gaussianSmearingWidth', 'gridbufferforprinting': 'gridBufferForPrinting', 'griddensityforprinting': 'gridDensityForPrinting', 'usedecimalplaces': 'useDecimalPlaces'}[source]
                                                                          -LIST_KEYWORDS: ClassVar[dict[str, str]] = {'basisfunctions': 'basisfunctions', 'cobibetween': 'cobiBetween', 'cohpbetween': 'cohpbetween', 'createfatband': 'createFatband', 'customstoforatom': 'customSTOforAtom', 'printlmosonatomswriteatomicdensities': 'printLmosOnAtomswriteAtomicDensities'}[source]
                                                                          +LIST_KEYWORDS: ClassVar[dict[str, str]] = {'basisfunctions': 'basisfunctions', 'cobibetween': 'cobiBetween', 'cohpbetween': 'cohpbetween', 'createfatband': 'createFatband', 'customstoforatom': 'customSTOforAtom', 'printlmosonatomswriteatomicdensities': 'printLmosOnAtomswriteAtomicDensities'}[source]
                                                                          -STRING_KEYWORDS: ClassVar[dict[str, str]] = {'basisset': 'basisSet', 'cohpgenerator': 'cohpGenerator', 'ewaldsum': 'EwaldSum', 'kspacecohp': 'kSpaceCOHP', 'printlcaorealspacewavefunction': 'printLCAORealSpaceWavefunction', 'printpawrealspacewavefunction': 'printPAWRealSpaceWavefunction', 'realspacehamiltonian': 'realspaceHamiltonian', 'realspaceoverlap': 'realspaceOverlap'}[source]
                                                                          +STRING_KEYWORDS: ClassVar[dict[str, str]] = {'basisset': 'basisSet', 'cohpgenerator': 'cohpGenerator', 'ewaldsum': 'EwaldSum', 'kspacecohp': 'kSpaceCOHP', 'printlcaorealspacewavefunction': 'printLCAORealSpaceWavefunction', 'printpawrealspacewavefunction': 'printPAWRealSpaceWavefunction', 'realspacehamiltonian': 'realspaceHamiltonian', 'realspaceoverlap': 'realspaceOverlap'}[source]
                                                                          -as_dict() dict[source]
                                                                          +as_dict() dict[source]

                                                                          MSONable dict.

                                                                          -diff(other: Self) dict[str, dict[str, Any]][source]
                                                                          +diff(other: Self) dict[str, dict[str, Any]][source]

                                                                          Compare two Lobsterin and find which parameters are the same. Similar to the diff method of Incar.

                                                                          @@ -378,7 +375,7 @@

                                                                          Submodules
                                                                          -classmethod from_dict(dct: dict) Self[source]
                                                                          +classmethod from_dict(dct: dict) Self[source]
                                                                          Parameters:

                                                                          dct (dict) – Dict representation.

                                                                          @@ -391,7 +388,7 @@

                                                                          Submodules
                                                                          -classmethod from_file(lobsterin: PathLike) Self[source]
                                                                          +classmethod from_file(lobsterin: PathLike) Self[source]

                                                                          Create Lobsterin from lobsterin file.

                                                                          Parameters:
                                                                          @@ -405,7 +402,7 @@

                                                                          Submodules
                                                                          -static get_all_possible_basis_functions(structure: Structure, potcar_symbols: list[str], address_basis_file_min: PathLike | None = None, address_basis_file_max: PathLike | None = None) list[dict][source]
                                                                          +static get_all_possible_basis_functions(structure: Structure, potcar_symbols: list[str], address_basis_file_min: PathLike | None = None, address_basis_file_max: PathLike | None = None) list[dict][source]
                                                                          Parameters:
                                                                            @@ -430,7 +427,7 @@

                                                                            Submodules
                                                                            -static get_basis(structure: Structure, potcar_symbols: list[str], address_basis_file: PathLike | None = None) list[str][source]
                                                                            +static get_basis(structure: Structure, potcar_symbols: list[str], address_basis_file: PathLike | None = None) list[str][source]

                                                                            Get the basis functions from given potcar_symbols, e.g., [“Fe_pv”, “Si”].

                                                                            Parameters:
                                                                            @@ -448,7 +445,7 @@

                                                                            Submodules
                                                                            -classmethod standard_calculations_from_vasp_files(POSCAR_input: PathLike = 'POSCAR', INCAR_input: PathLike = 'INCAR', POTCAR_input: PathLike | None = None, Vasprun_output: PathLike = 'vasprun.xml', dict_for_basis: dict | None = None, option: str = 'standard') Self[source]
                                                                            +classmethod standard_calculations_from_vasp_files(POSCAR_input: PathLike = 'POSCAR', INCAR_input: PathLike = 'INCAR', POTCAR_input: PathLike | None = None, Vasprun_output: PathLike = 'vasprun.xml', dict_for_basis: dict | None = None, option: str = 'standard') Self[source]

                                                                            Generate lobsterin with standard settings.

                                                                            Parameters:
                                                                            @@ -480,7 +477,7 @@

                                                                            Submodules
                                                                            -write_INCAR(incar_input: PathLike = 'INCAR', incar_output: PathLike = 'INCAR.lobster', poscar_input: PathLike = 'POSCAR', isym: Literal[-1, 0] = 0, further_settings: dict | None = None) None[source]
                                                                            +write_INCAR(incar_input: PathLike = 'INCAR', incar_output: PathLike = 'INCAR.lobster', poscar_input: PathLike = 'POSCAR', isym: Literal[-1, 0] = 0, further_settings: dict | None = None) None[source]

                                                                            Write INCAR file. Will only make the run static, insert NBANDS, set ISYM=0, LWAVE=True and you have to check for the rest.

                                                                            @@ -498,7 +495,7 @@

                                                                            Submodules
                                                                            -static write_KPOINTS(POSCAR_input: PathLike = 'POSCAR', KPOINTS_output: PathLike = 'KPOINTS.lobster', reciprocal_density: int = 100, isym: Literal[-1, 0] = 0, from_grid: bool = False, input_grid: Tuple3Ints = (5, 5, 5), line_mode: bool = True, kpoints_line_density: int = 20, symprec: float = 0.01) None[source]
                                                                            +static write_KPOINTS(POSCAR_input: PathLike = 'POSCAR', KPOINTS_output: PathLike = 'KPOINTS.lobster', reciprocal_density: int = 100, isym: Literal[-1, 0] = 0, from_grid: bool = False, input_grid: Tuple3Ints = (5, 5, 5), line_mode: bool = True, kpoints_line_density: int = 20, symprec: float = 0.01) None[source]

                                                                            Write a gamma-centered KPOINTS file for LOBSTER.

                                                                            Parameters:
                                                                            @@ -520,7 +517,7 @@

                                                                            Submodules
                                                                            -static write_POSCAR_with_standard_primitive(POSCAR_input: PathLike = 'POSCAR', POSCAR_output: PathLike = 'POSCAR.lobster', symprec: float = 0.01) None[source]
                                                                            +static write_POSCAR_with_standard_primitive(POSCAR_input: PathLike = 'POSCAR', POSCAR_output: PathLike = 'POSCAR.lobster', symprec: float = 0.01) None[source]

                                                                            Write a POSCAR with the standard primitive cell. This is needed to arrive at the correct kpath.

                                                                            @@ -536,7 +533,7 @@

                                                                            Submodules
                                                                            -write_lobsterin(path: PathLike = 'lobsterin', overwritedict: dict | None = None) None[source]
                                                                            +write_lobsterin(path: PathLike = 'lobsterin', overwritedict: dict | None = None) None[source]

                                                                            Write a lobsterin file, and recover keys to Camel case.

                                                                            Parameters:
                                                                            @@ -552,7 +549,7 @@

                                                                            Submodules
                                                                            -get_all_possible_basis_combinations(min_basis: list, max_basis: list) list[list[str]][source]
                                                                            +get_all_possible_basis_combinations(min_basis: list, max_basis: list) list[list[str]][source]

                                                                            Get all possible basis combinations.

                                                                            Parameters:
                                                                            @@ -583,7 +580,7 @@

                                                                            Submodules
                                                                            -class ICOHPNeighborsInfo(total_icohp: float, list_icohps: list[float], n_bonds: int, labels: list[str], atoms: list[list[str]], central_isites: list[int] | None)[source]
                                                                            +class ICOHPNeighborsInfo(total_icohp: float, list_icohps: list[float], n_bonds: int, labels: list[str], atoms: list[list[str]], central_isites: list[int] | None)[source]

                                                                            Bases: NamedTuple

                                                                            Tuple to record information on relevant bonds.

                                                                            @@ -603,37 +600,37 @@

                                                                            Submodules
                                                                            -atoms: list[list[str]][source]
                                                                            +atoms: list[list[str]][source]

                                                                            Alias for field number 4

                                                                            -central_isites: list[int] | None[source]
                                                                            +central_isites: list[int] | None[source]

                                                                            Alias for field number 5

                                                                            -labels: list[str][source]
                                                                            +labels: list[str][source]

                                                                            Alias for field number 3

                                                                            -list_icohps: list[float][source]
                                                                            +list_icohps: list[float][source]

                                                                            Alias for field number 1

                                                                            -n_bonds: int[source]
                                                                            +n_bonds: int[source]

                                                                            Alias for field number 2

                                                                            -total_icohp: float[source]
                                                                            +total_icohp: float[source]

                                                                            Alias for field number 0

                                                                            @@ -641,7 +638,7 @@

                                                                            Submodules
                                                                            -class LobsterLightStructureEnvironments(strategy, coordination_environments=None, all_nbs_sites=None, neighbors_sets=None, structure=None, valences=None, valences_origin=None)[source]
                                                                            +class LobsterLightStructureEnvironments(strategy, coordination_environments=None, all_nbs_sites=None, neighbors_sets=None, structure=None, valences=None, valences_origin=None)[source]

                                                                            Bases: LightStructureEnvironments

                                                                            Store LightStructureEnvironments based on LOBSTER outputs.

                                                                            Constructor for the LightStructureEnvironments object.

                                                                            @@ -661,7 +658,7 @@

                                                                            Submodules
                                                                            -as_dict() dict[str, Any][source]
                                                                            +as_dict() dict[str, Any][source]

                                                                            Bson-serializable dict representation of the object.

                                                                            Returns:
                                                                            @@ -672,7 +669,7 @@

                                                                            Submodules
                                                                            -classmethod from_Lobster(list_ce_symbol: list[str], list_csm: list[float], list_permutation: list, list_neighsite: list[PeriodicSite], list_neighisite: list[list[int]], structure: Structure, valences: list[float] | None = None) Self[source]
                                                                            +classmethod from_Lobster(list_ce_symbol: list[str], list_csm: list[float], list_permutation: list, list_neighsite: list[PeriodicSite], list_neighisite: list[list[int]], structure: Structure, valences: list[float] | None = None) Self[source]

                                                                            Set up a LightStructureEnvironments from LOBSTER.

                                                                            Parameters:
                                                                            @@ -694,7 +691,7 @@

                                                                            Submodules
                                                                            -property uniquely_determines_coordination_environments: Literal[True][source]
                                                                            +property uniquely_determines_coordination_environments: Literal[True][source]

                                                                            Whether the coordination environments are uniquely determined.

                                                                            @@ -702,7 +699,7 @@

                                                                            Submodules
                                                                            -class LobsterNeighbors(structure: Structure, filename_icohp: PathLike | None = 'ICOHPLIST.lobster', obj_icohp: Icohplist | None = None, are_coops: bool = False, are_cobis: bool = False, valences: list[float] | None = None, limits: tuple[float, float] | None = None, additional_condition: Literal[0, 1, 2, 3, 4, 5, 6] = 0, only_bonds_to: list[str] | None = None, perc_strength_icohp: float = 0.15, noise_cutoff: float = 0.1, valences_from_charges: bool = False, filename_charge: PathLike | None = None, obj_charge: Charge | None = None, which_charge: Literal['Mulliken', 'Loewdin'] = 'Mulliken', adapt_extremum_to_add_cond: bool = False, add_additional_data_sg: bool = False, filename_blist_sg1: PathLike | None = None, filename_blist_sg2: PathLike | None = None, id_blist_sg1: Literal['icoop', 'icobi'] = 'icoop', id_blist_sg2: Literal['icoop', 'icobi'] = 'icobi')[source]
                                                                            +class LobsterNeighbors(structure: Structure, filename_icohp: PathLike | None = 'ICOHPLIST.lobster', obj_icohp: Icohplist | None = None, are_coops: bool = False, are_cobis: bool = False, valences: list[float] | None = None, limits: tuple[float, float] | None = None, additional_condition: Literal[0, 1, 2, 3, 4, 5, 6] = 0, only_bonds_to: list[str] | None = None, perc_strength_icohp: float = 0.15, noise_cutoff: float = 0.1, valences_from_charges: bool = False, filename_charge: PathLike | None = None, obj_charge: Charge | None = None, which_charge: Literal['Mulliken', 'Loewdin'] = 'Mulliken', adapt_extremum_to_add_cond: bool = False, add_additional_data_sg: bool = False, filename_blist_sg1: PathLike | None = None, filename_blist_sg2: PathLike | None = None, id_blist_sg1: Literal['icoop', 'icobi'] = 'icoop', id_blist_sg2: Literal['icoop', 'icobi'] = 'icobi')[source]

                                                                            Bases: NearNeighbors

                                                                            This class combines capabilities from LocalEnv and ChemEnv to determine coordination environments based on bonding analysis.

                                                                            @@ -753,7 +750,7 @@

                                                                            Submodules
                                                                            -property anion_types: set[Element][source]
                                                                            +property anion_types: set[Element][source]

                                                                            The set of anion types in crystal structure.

                                                                            Returns:
                                                                            @@ -767,12 +764,12 @@

                                                                            Submodules
                                                                            -get_anion_types() set[Element][source]
                                                                            +get_anion_types() set[Element][source]

                                                                            -get_info_cohps_to_neighbors(path_to_cohpcar: PathLike | None = 'COHPCAR.lobster', obj_cohpcar: CompleteCohp | None = None, isites: list[int] | None = None, only_bonds_to: list[str] | None = None, onlycation_isites: bool = True, per_bond: bool = True, summed_spin_channels: bool = False) tuple[str | None, CompleteCohp | None][source]
                                                                            +get_info_cohps_to_neighbors(path_to_cohpcar: PathLike | None = 'COHPCAR.lobster', obj_cohpcar: CompleteCohp | None = None, isites: list[int] | None = None, only_bonds_to: list[str] | None = None, onlycation_isites: bool = True, per_bond: bool = True, summed_spin_channels: bool = False) tuple[str | None, CompleteCohp | None][source]

                                                                            Get the COHPs (COOPs or COBIs) as a summed Cohp object and a label from all sites mentioned in isites with neighbors.

                                                                            @@ -803,7 +800,7 @@

                                                                            Submodules
                                                                            -get_info_icohps_between_neighbors(isites: list[int] | None = None, onlycation_isites: bool = True) ICOHPNeighborsInfo[source]
                                                                            +get_info_icohps_between_neighbors(isites: list[int] | None = None, onlycation_isites: bool = True) ICOHPNeighborsInfo[source]

                                                                            Get interactions between neighbors of certain sites.

                                                                            Parameters:
                                                                            @@ -820,7 +817,7 @@

                                                                            Submodules
                                                                            -get_info_icohps_to_neighbors(isites: list[int] | None = None, onlycation_isites: bool = True) ICOHPNeighborsInfo[source]
                                                                            +get_info_icohps_to_neighbors(isites: list[int] | None = None, onlycation_isites: bool = True) ICOHPNeighborsInfo[source]

                                                                            Get information on the ICOHPs of neighbors for certain sites as identified by their site id.

                                                                            This is useful for plotting the COHPs (ICOOPLIST.lobster/ @@ -842,7 +839,7 @@

                                                                            Submodules
                                                                            -get_light_structure_environment(only_cation_environments: bool = False, only_indices: list[int] | None = None) LobsterLightStructureEnvironments[source]
                                                                            +get_light_structure_environment(only_cation_environments: bool = False, only_indices: list[int] | None = None) LobsterLightStructureEnvironments[source]

                                                                            Get a LobsterLightStructureEnvironments object if the structure only contains coordination environments smaller 13.

                                                                            @@ -860,7 +857,7 @@

                                                                            Submodules
                                                                            -get_nn_info(structure: Structure, n: int, use_weights: bool = False) dict[str, Any][source]
                                                                            +get_nn_info(structure: Structure, n: int, use_weights: bool = False) dict[str, Any][source]

                                                                            Get coordination number (CN) of site by index.

                                                                            Parameters:
                                                                            @@ -887,13 +884,13 @@

                                                                            Submodules
                                                                            -property molecules_allowed: Literal[False][source]
                                                                            +property molecules_allowed: Literal[False][source]

                                                                            Whether this LobsterNeighbors class can be used with Molecule objects.

                                                                            -plot_cohps_of_neighbors(path_to_cohpcar: PathLike | None = 'COHPCAR.lobster', obj_cohpcar: CompleteCohp | None = None, isites: list[int] | None = None, onlycation_isites: bool = True, only_bonds_to: list[str] | None = None, per_bond: bool = False, summed_spin_channels: bool = False, xlim: tuple[float, float] | None = None, ylim: tuple[float, float] = (-10, 6), integrated: bool = False) mpl.axes.Axes[source]
                                                                            +plot_cohps_of_neighbors(path_to_cohpcar: PathLike | None = 'COHPCAR.lobster', obj_cohpcar: CompleteCohp | None = None, isites: list[int] | None = None, onlycation_isites: bool = True, only_bonds_to: list[str] | None = None, per_bond: bool = False, summed_spin_channels: bool = False, xlim: tuple[float, float] | None = None, ylim: tuple[float, float] = (-10, 6), integrated: bool = False) mpl.axes.Axes[source]

                                                                            Plot summed COHPs or COBIs or COOPs.

                                                                            Please be careful in the spin polarized case (plots might overlap).

                                                                            @@ -919,7 +916,7 @@

                                                                            Submodules
                                                                            -property structures_allowed: Literal[True][source]
                                                                            +property structures_allowed: Literal[True][source]

                                                                            Whether this LobsterNeighbors class can be used with Structure objects.

                                                                            @@ -937,12 +934,12 @@

                                                                            Submodules
                                                                            -class Bandoverlaps(filename: str | PathLike = 'bandOverlaps.lobster', band_overlaps_dict: dict[Spin, dict] | None = None, max_deviation: list[float] | None = None)[source]
                                                                            +class Bandoverlaps(filename: str | PathLike = 'bandOverlaps.lobster', band_overlaps_dict: dict[Spin, dict] | None = None, max_deviation: list[float] | None = None)[source]

                                                                            Bases: MSONable

                                                                            Read bandOverlaps.lobster files, which are not created during every LOBSTER run.

                                                                            -band_overlaps_dict[source]
                                                                            +band_overlaps_dict[source]

                                                                            A dictionary containing the band overlap data of the form: {spin: {“kpoint as string”: {“maxDeviation”: float that describes the max deviation, “matrix”: 2D array of the size number of bands @@ -956,7 +953,7 @@

                                                                            Submodules
                                                                            -max_deviation[source]
                                                                            +max_deviation[source]

                                                                            The maximal deviation for each problematic kpoint.

                                                                            Type:
                                                                            @@ -988,12 +985,12 @@

                                                                            Submodules
                                                                            -property bandoverlapsdict: dict[source]
                                                                            +property bandoverlapsdict: dict[source]

                                                                            -has_good_quality_check_occupied_bands(number_occ_bands_spin_up: int, number_occ_bands_spin_down: int | None = None, spin_polarized: bool = False, limit_deviation: float = 0.1) bool[source]
                                                                            +has_good_quality_check_occupied_bands(number_occ_bands_spin_up: int, number_occ_bands_spin_down: int | None = None, spin_polarized: bool = False, limit_deviation: float = 0.1) bool[source]

                                                                            Check if the deviation from the ideal bandoverlap of all occupied bands is smaller or equal to limit_deviation.

                                                                            @@ -1016,7 +1013,7 @@

                                                                            Submodules
                                                                            -has_good_quality_maxDeviation(limit_maxDeviation: float = 0.1) bool[source]
                                                                            +has_good_quality_maxDeviation(limit_maxDeviation: float = 0.1) bool[source]

                                                                            Check if the maxDeviation from the ideal bandoverlap is smaller or equal to a limit.

                                                                            @@ -1036,12 +1033,12 @@

                                                                            Submodules
                                                                            -class Bwdf(filename: PathLike = 'BWDF.lobster', centers: NDArray | None = None, bwdf: dict[Spin, NDArray] | None = None, bin_width: float | None = None)[source]
                                                                            +class Bwdf(filename: PathLike = 'BWDF.lobster', centers: NDArray | None = None, bwdf: dict[Spin, NDArray] | None = None, bin_width: float | None = None)[source]

                                                                            Bases: MSONable

                                                                            Read BWDF.lobster/BWDFCOHP.lobster file generated by LOBSTER.

                                                                            -centers[source]
                                                                            +centers[source]

                                                                            Bond length centers for the distribution.

                                                                            Type:
                                                                            @@ -1052,7 +1049,7 @@

                                                                            Submodules
                                                                            -bwdf[source]
                                                                            +bwdf[source]

                                                                            Bond weighted distribution function.

                                                                            Type:
                                                                            @@ -1063,7 +1060,7 @@

                                                                            Submodules
                                                                            -bin_width[source]
                                                                            +bin_width[source]

                                                                            Bin width used for computing the distribution by LOBSTER.

                                                                            Type:
                                                                            @@ -1086,12 +1083,12 @@

                                                                            Submodules
                                                                            -class Charge(filename: str | PathLike = 'CHARGE.lobster', is_lcfo: bool = False, num_atoms: int | None = None, atomlist: list[str] | None = None, types: list[str] | None = None, mulliken: list[float] | None = None, loewdin: list[float] | None = None)[source]
                                                                            +class Charge(filename: str | PathLike = 'CHARGE.lobster', is_lcfo: bool = False, num_atoms: int | None = None, atomlist: list[str] | None = None, types: list[str] | None = None, mulliken: list[float] | None = None, loewdin: list[float] | None = None)[source]

                                                                            Bases: MSONable

                                                                            Read CHARGE.lobster/ CHARGE.LCFO.lobster files generated by LOBSTER.

                                                                            -atomlist[source]
                                                                            +atomlist[source]

                                                                            List of atoms in CHARGE.lobster.

                                                                            Type:
                                                                            @@ -1102,7 +1099,7 @@

                                                                            Submodules
                                                                            -is_lcfo[source]
                                                                            +is_lcfo[source]

                                                                            Whether the CHARGE file is from LCFO analysis. Default is False.

                                                                            Type:
                                                                            @@ -1113,7 +1110,7 @@

                                                                            Submodules
                                                                            -types[source]
                                                                            +types[source]

                                                                            List of types of atoms in CHARGE.lobster.

                                                                            Type:
                                                                            @@ -1124,7 +1121,7 @@

                                                                            Submodules
                                                                            -mulliken[source]
                                                                            +mulliken[source]

                                                                            List of Mulliken charges of atoms in CHARGE.lobster.

                                                                            Type:
                                                                            @@ -1135,7 +1132,7 @@

                                                                            Submodules
                                                                            -loewdin[source]
                                                                            +loewdin[source]

                                                                            List of Loewdin charges of atoms in CHARGE.Loewdin.

                                                                            Type:
                                                                            @@ -1146,7 +1143,7 @@

                                                                            Submodules
                                                                            -num_atoms[source]
                                                                            +num_atoms[source]

                                                                            Number of atoms in CHARGE.lobster.

                                                                            Type:
                                                                            @@ -1170,17 +1167,17 @@

                                                                            Submodules
                                                                            -property Loewdin: list[float][source]
                                                                            +property Loewdin: list[float][source]

                                                                            -property Mulliken: list[float][source]
                                                                            +property Mulliken: list[float][source]
                                                                            -get_structure_with_charges(structure_filename: str | PathLike) Structure[source]
                                                                            +get_structure_with_charges(structure_filename: str | PathLike) Structure[source]

                                                                            Get a Structure with Mulliken and Loewdin charges as site properties

                                                                            Parameters:
                                                                            @@ -1196,12 +1193,12 @@

                                                                            Submodules
                                                                            -class Cohpcar(are_coops: bool = False, are_cobis: bool = False, are_multi_center_cobis: bool = False, is_lcfo: bool = False, filename: str | PathLike | None = None)[source]
                                                                            +class Cohpcar(are_coops: bool = False, are_cobis: bool = False, are_multi_center_cobis: bool = False, is_lcfo: bool = False, filename: str | PathLike | None = None)[source]

                                                                            Bases: object

                                                                            Read COXXCAR.lobster/COXXCAR.LCFO.lobster files generated by LOBSTER.

                                                                            -cohp_data[source]
                                                                            +cohp_data[source]

                                                                            The COHP data of the form: {bond: {“COHP”: {Spin.up: cohps, Spin.down:cohps},

                                                                            @@ -1219,7 +1216,7 @@

                                                                            Submodules
                                                                            -efermi[source]
                                                                            +efermi[source]

                                                                            The Fermi level in eV.

                                                                            Type:
                                                                            @@ -1230,7 +1227,7 @@

                                                                            Submodules
                                                                            -energies[source]
                                                                            +energies[source]

                                                                            Sequence of energies in eV. Note that LOBSTER shifts the energies so that the Fermi level is at zero.

                                                                            @@ -1242,7 +1239,7 @@

                                                                            Submodules
                                                                            -is_spin_polarized[source]
                                                                            +is_spin_polarized[source]

                                                                            True if the calculation is spin polarized.

                                                                            Type:
                                                                            @@ -1253,7 +1250,7 @@

                                                                            Submodules
                                                                            -orb_res_cohp[source]
                                                                            +orb_res_cohp[source]

                                                                            The orbital-resolved COHPs of the form: orb_res_cohp[label] = {bond_data[“orb_label”]: {

                                                                            @@ -1290,13 +1287,13 @@

                                                                            Submodules
                                                                            -class Doscar(doscar: PathLike = 'DOSCAR.lobster', is_lcfo: bool = False, structure_file: PathLike | None = 'POSCAR', structure: IStructure | Structure | None = None)[source]
                                                                            +class Doscar(doscar: PathLike = 'DOSCAR.lobster', is_lcfo: bool = False, structure_file: PathLike | None = 'POSCAR', structure: IStructure | Structure | None = None)[source]

                                                                            Bases: object

                                                                            Store LOBSTER’s projected DOS and local projected DOS. The beforehand quantum-chemical calculation was performed with VASP.

                                                                            -completedos[source]
                                                                            +completedos[source]

                                                                            LobsterCompleteDos Object.

                                                                            Type:
                                                                            @@ -1307,7 +1304,7 @@

                                                                            Submodules
                                                                            -pdos[source]
                                                                            +pdos[source]

                                                                            List of Dict including NumPy arrays with pdos. Access as pdos[atomindex][‘orbitalstring’][‘Spin.up/Spin.down’].

                                                                            @@ -1319,7 +1316,7 @@

                                                                            Submodules
                                                                            -tdos[source]
                                                                            +tdos[source]

                                                                            Dos Object of the total density of states.

                                                                            Type:
                                                                            @@ -1330,7 +1327,7 @@

                                                                            Submodules
                                                                            -energies[source]
                                                                            +energies[source]

                                                                            Numpy array of the energies at which the DOS was calculated (in eV, relative to Efermi).

                                                                            @@ -1342,7 +1339,7 @@

                                                                            Submodules
                                                                            -tdensities[source]
                                                                            +tdensities[source]

                                                                            tdensities[Spin.up]: NumPy array of the total density of states for the Spin.up contribution at each of the energies. tdensities[Spin.down]: NumPy array of the total density of states for the Spin.down contribution at each of the energies. @@ -1356,7 +1353,7 @@

                                                                            Submodules
                                                                            -itdensities[source]
                                                                            +itdensities[source]

                                                                            itdensities[Spin.up]: NumPy array of the total density of states for the Spin.up contribution at each of the energies. itdensities[Spin.down]: NumPy array of the total density of states for the Spin.down contribution at each of the energies. @@ -1370,7 +1367,7 @@

                                                                            Submodules
                                                                            -is_spin_polarized[source]
                                                                            +is_spin_polarized[source]

                                                                            Whether the system is spin polarized.

                                                                            Type:
                                                                            @@ -1392,43 +1389,43 @@

                                                                            Submodules
                                                                            -property completedos: LobsterCompleteDos[source]
                                                                            +property completedos: LobsterCompleteDos[source]

                                                                            LobsterCompleteDos.

                                                                            -property energies: NDArray[source]
                                                                            +property energies: NDArray[source]

                                                                            Energies.

                                                                            -property is_spin_polarized: bool[source]
                                                                            +property is_spin_polarized: bool[source]

                                                                            Whether run is spin polarized.

                                                                            -property itdensities: dict[Spin, NDArray][source]
                                                                            +property itdensities: dict[Spin, NDArray][source]

                                                                            Integrated total DOS as a np.array.

                                                                            -property pdos: list[dict][source]
                                                                            +property pdos: list[dict][source]

                                                                            Projected DOS (PDOS).

                                                                            -property tdensities: dict[Spin, NDArray][source]
                                                                            +property tdensities: dict[Spin, NDArray][source]

                                                                            Total DOS as a np.array.

                                                                            -property tdos: Dos[source]
                                                                            +property tdos: Dos[source]

                                                                            Total DOS (TDOS).

                                                                            @@ -1436,12 +1433,12 @@

                                                                            Submodules
                                                                            -class Fatband(filenames: PathLike | list[PathLike] = '.', kpoints_file: PathLike = 'KPOINTS', vasprun_file: PathLike | None = 'vasprun.xml', structure: Structure | IStructure | None = None, efermi: float | None = None)[source]
                                                                            +class Fatband(filenames: PathLike | list[PathLike] = '.', kpoints_file: PathLike = 'KPOINTS', vasprun_file: PathLike | None = 'vasprun.xml', structure: Structure | IStructure | None = None, efermi: float | None = None)[source]

                                                                            Bases: object

                                                                            Read FATBAND_x_y.lobster files.

                                                                            -efermi[source]
                                                                            +efermi[source]

                                                                            Fermi level read from vasprun.xml.

                                                                            Type:
                                                                            @@ -1452,7 +1449,7 @@

                                                                            Submodules
                                                                            -eigenvals[source]
                                                                            +eigenvals[source]

                                                                            Eigenvalues as a dictionary of NumPy arrays of shape (nbands, nkpoints). The first index of the array refers to the band and the second to the index of the kpoint. The kpoints are ordered according to the order of the kpoints_array attribute. @@ -1466,7 +1463,7 @@

                                                                            Submodules
                                                                            -is_spin_polarized[source]
                                                                            +is_spin_polarized[source]

                                                                            Whether this was a spin-polarized calculation.

                                                                            Type:
                                                                            @@ -1477,7 +1474,7 @@

                                                                            Submodules
                                                                            -kpoints_array[source]
                                                                            +kpoints_array[source]

                                                                            List of kpoints as NumPy arrays, in frac_coords of the given lattice by default.

                                                                            @@ -1489,7 +1486,7 @@

                                                                            Submodules
                                                                            -label_dict[source]
                                                                            +label_dict[source]

                                                                            Dictionary that links a kpoint (in frac coords or Cartesian coordinates depending on the coords attribute) to a label.

                                                                            @@ -1501,7 +1498,7 @@

                                                                            Submodules
                                                                            -lattice[source]
                                                                            +lattice[source]

                                                                            Lattice object of reciprocal lattice as read from vasprun.xml.

                                                                            Type:
                                                                            @@ -1512,7 +1509,7 @@

                                                                            Submodules
                                                                            -nbands[source]
                                                                            +nbands[source]

                                                                            Number of bands used in the calculation.

                                                                            Type:
                                                                            @@ -1523,7 +1520,7 @@

                                                                            Submodules
                                                                            -p_eigenvals[source]
                                                                            +p_eigenvals[source]

                                                                            Dictionary of orbital projections as {spin: array of dict}. The indices of the array are [band_index, kpoint_index]. The dict is then built the following way: {“string of element”: “string of orbital as read in @@ -1537,7 +1534,7 @@

                                                                            Submodules
                                                                            -structure[source]
                                                                            +structure[source]

                                                                            Structure object.

                                                                            Type:
                                                                            @@ -1561,7 +1558,7 @@

                                                                            Submodules
                                                                            -get_bandstructure() LobsterBandStructureSymmLine[source]
                                                                            +get_bandstructure() LobsterBandStructureSymmLine[source]

                                                                            Get a LobsterBandStructureSymmLine object which can be plotted with a normal BSPlotter.

                                                                            @@ -1569,12 +1566,12 @@

                                                                            Submodules
                                                                            -class Grosspop(filename: str | PathLike = 'GROSSPOP.lobster', is_lcfo: bool = False, list_dict_grosspop: list[dict] | None = None)[source]
                                                                            +class Grosspop(filename: str | PathLike = 'GROSSPOP.lobster', is_lcfo: bool = False, list_dict_grosspop: list[dict] | None = None)[source]

                                                                            Bases: MSONable

                                                                            Read GROSSPOP.lobster/ GROSSPOP.LCFO.lobster files.

                                                                            -list_dict_grosspop[source]
                                                                            +list_dict_grosspop[source]

                                                                            List of dictionaries including all information about the grosspopulations. Each dictionary contains the following keys: - ‘element’: The element symbol of the atom. @@ -1608,7 +1605,7 @@

                                                                            Submodules
                                                                            -get_structure_with_total_grosspop(structure_filename: str | PathLike) Structure[source]
                                                                            +get_structure_with_total_grosspop(structure_filename: str | PathLike) Structure[source]

                                                                            Get a Structure with Mulliken and Loewdin total grosspopulations as site properties.

                                                                            Parameters:
                                                                            @@ -1624,12 +1621,12 @@

                                                                            Submodules
                                                                            -class Icohplist(is_lcfo: bool = False, are_coops: bool = False, are_cobis: bool = False, filename: PathLike | None = None, is_spin_polarized: bool = False, orbitalwise: bool = False, icohpcollection: IcohpCollection | None = None)[source]
                                                                            +class Icohplist(is_lcfo: bool = False, are_coops: bool = False, are_cobis: bool = False, filename: PathLike | None = None, is_spin_polarized: bool = False, orbitalwise: bool = False, icohpcollection: IcohpCollection | None = None)[source]

                                                                            Bases: MSONable

                                                                            Read ICOXXLIST/ICOXXLIST.LCFO.lobster files generated by LOBSTER.

                                                                            -are_coops[source]
                                                                            +are_coops[source]

                                                                            Whether the file includes COOPs (True) or COHPs (False).

                                                                            Type:
                                                                            @@ -1640,7 +1637,7 @@

                                                                            Submodules
                                                                            -is_lcfo[source]
                                                                            +is_lcfo[source]

                                                                            Whether the ICOXXLIST file is from LCFO analysis.

                                                                            Type:
                                                                            @@ -1651,7 +1648,7 @@

                                                                            Submodules
                                                                            -is_spin_polarized[source]
                                                                            +is_spin_polarized[source]

                                                                            Whether the calculation is spin polarized.

                                                                            Type:
                                                                            @@ -1662,7 +1659,7 @@

                                                                            Submodules
                                                                            -Icohplist[source]
                                                                            +Icohplist[source]
                                                                            The listfile data of the form: {
                                                                            bond: {

                                                                            “length”: Bond length, @@ -1683,7 +1680,7 @@

                                                                            Submodules
                                                                            -IcohpCollection[source]
                                                                            +IcohpCollection[source]

                                                                            IcohpCollection Object.

                                                                            Type:
                                                                            @@ -1710,13 +1707,13 @@

                                                                            Submodules
                                                                            -property icohpcollection: IcohpCollection | None[source]
                                                                            +property icohpcollection: IcohpCollection | None[source]

                                                                            The IcohpCollection object.

                                                                            -property icohplist: dict[Any, dict[str, Any]][source]
                                                                            +property icohplist: dict[Any, dict[str, Any]][source]

                                                                            The ICOHP list compatible with older version of this class.

                                                                            @@ -1724,7 +1721,7 @@

                                                                            Submodules
                                                                            -class LobsterMatrices(e_fermi: float | None = None, filename: str | PathLike = 'hamiltonMatrices.lobster')[source]
                                                                            +class LobsterMatrices(e_fermi: float | None = None, filename: str | PathLike = 'hamiltonMatrices.lobster')[source]

                                                                            Bases: object

                                                                            Read Matrices file generated by LOBSTER (e.g. hamiltonMatrices.lobster).

                                                                            @@ -1796,12 +1793,12 @@

                                                                            Submodules
                                                                            -class Lobsterout(filename: str | PathLike | None, **kwargs)[source]
                                                                            +class Lobsterout(filename: str | PathLike | None, **kwargs)[source]

                                                                            Bases: MSONable

                                                                            Read the lobsterout and evaluate the spilling, save the basis, save warnings, save info.

                                                                            -basis_functions[source]
                                                                            +basis_functions[source]

                                                                            Basis functions that were used in lobster run as strings.

                                                                            Type:
                                                                            @@ -1812,7 +1809,7 @@

                                                                            Submodules
                                                                            -basis_type[source]
                                                                            +basis_type[source]

                                                                            Basis types that were used in lobster run as strings.

                                                                            Type:
                                                                            @@ -1823,7 +1820,7 @@

                                                                            Submodules
                                                                            -charge_spilling[source]
                                                                            +charge_spilling[source]

                                                                            Charge spilling (first entry: result for spin 1, second entry: result for spin 2 or not present).

                                                                            @@ -1835,7 +1832,7 @@

                                                                            Submodules
                                                                            -dft_program[source]
                                                                            +dft_program[source]

                                                                            The DFT program used for the calculation of the wave function.

                                                                            Type:
                                                                            @@ -1846,7 +1843,7 @@

                                                                            Submodules
                                                                            -elements[source]
                                                                            +elements[source]

                                                                            Elements that were present in LOBSTER calculation.

                                                                            Type:
                                                                            @@ -1857,7 +1854,7 @@

                                                                            Submodules
                                                                            -has_charge[source]
                                                                            +has_charge[source]

                                                                            Whether CHARGE.lobster is present.

                                                                            Type:
                                                                            @@ -1868,7 +1865,7 @@

                                                                            Submodules
                                                                            -has_cohpcar[source]
                                                                            +has_cohpcar[source]

                                                                            Whether COHPCAR.lobster and ICOHPLIST.lobster are present.

                                                                            Type:
                                                                            @@ -1879,7 +1876,7 @@

                                                                            Submodules
                                                                            -has_madelung[source]
                                                                            +has_madelung[source]

                                                                            Whether SitePotentials.lobster and MadelungEnergies.lobster are present.

                                                                            Type:
                                                                            @@ -1890,7 +1887,7 @@

                                                                            Submodules
                                                                            -has_coopcar[source]
                                                                            +has_coopcar[source]

                                                                            Whether COOPCAR.lobster and ICOOPLIST.lobster are present.

                                                                            Type:
                                                                            @@ -1901,7 +1898,7 @@

                                                                            Submodules
                                                                            -has_cobicar[source]
                                                                            +has_cobicar[source]

                                                                            Whether COBICAR.lobster and ICOBILIST.lobster are present.

                                                                            Type:
                                                                            @@ -1912,7 +1909,7 @@

                                                                            Submodules
                                                                            -has_doscar[source]
                                                                            +has_doscar[source]

                                                                            Whether DOSCAR.lobster is present.

                                                                            Type:
                                                                            @@ -1923,7 +1920,7 @@

                                                                            Submodules
                                                                            -has_doscar_lso[source]
                                                                            +has_doscar_lso[source]

                                                                            Whether DOSCAR.LSO.lobster is present.

                                                                            Type:
                                                                            @@ -1934,7 +1931,7 @@

                                                                            Submodules
                                                                            -has_projection[source]
                                                                            +has_projection[source]

                                                                            Whether projectionData.lobster is present.

                                                                            Type:
                                                                            @@ -1945,7 +1942,7 @@

                                                                            Submodules
                                                                            -has_bandoverlaps[source]
                                                                            +has_bandoverlaps[source]

                                                                            Whether bandOverlaps.lobster is present.

                                                                            Type:
                                                                            @@ -1956,7 +1953,7 @@

                                                                            Submodules
                                                                            -has_density_of_energies[source]
                                                                            +has_density_of_energies[source]

                                                                            Whether DensityOfEnergy.lobster is present.

                                                                            Type:
                                                                            @@ -1967,7 +1964,7 @@

                                                                            Submodules
                                                                            -has_fatbands[source]
                                                                            +has_fatbands[source]

                                                                            Whether fatband calculation was performed.

                                                                            Type:
                                                                            @@ -1978,7 +1975,7 @@

                                                                            Submodules
                                                                            -has_grosspopulation[source]
                                                                            +has_grosspopulation[source]

                                                                            Whether GROSSPOP.lobster is present.

                                                                            Type:
                                                                            @@ -1989,7 +1986,7 @@

                                                                            Submodules
                                                                            -has_polarization[source]
                                                                            +has_polarization[source]

                                                                            Whether POLARIZATION.lobster is present.

                                                                            Type:
                                                                            @@ -2000,7 +1997,7 @@

                                                                            Submodules
                                                                            -info_lines[source]
                                                                            +info_lines[source]

                                                                            Additional information on the run.

                                                                            Type:
                                                                            @@ -2011,7 +2008,7 @@

                                                                            Submodules
                                                                            -info_orthonormalization[source]
                                                                            +info_orthonormalization[source]

                                                                            Information on orthonormalization.

                                                                            Type:
                                                                            @@ -2022,7 +2019,7 @@

                                                                            Submodules
                                                                            -is_restart_from_projection[source]
                                                                            +is_restart_from_projection[source]

                                                                            Whether that calculation was restarted from an existing projection file.

                                                                            @@ -2034,7 +2031,7 @@

                                                                            Submodules
                                                                            -lobster_version[source]
                                                                            +lobster_version[source]

                                                                            The LOBSTER version.

                                                                            Type:
                                                                            @@ -2045,7 +2042,7 @@

                                                                            Submodules
                                                                            -number_of_spins[source]
                                                                            +number_of_spins[source]

                                                                            The number of spins.

                                                                            Type:
                                                                            @@ -2056,7 +2053,7 @@

                                                                            Submodules
                                                                            -number_of_threads[source]
                                                                            +number_of_threads[source]

                                                                            How many threads were used.

                                                                            Type:
                                                                            @@ -2067,7 +2064,7 @@

                                                                            Submodules
                                                                            -timing[source]
                                                                            +timing[source]

                                                                            Dict with infos on timing.

                                                                            Type:
                                                                            @@ -2078,7 +2075,7 @@

                                                                            Submodules
                                                                            -total_spilling[source]
                                                                            +total_spilling[source]

                                                                            The total spilling for spin channel 1 (and spin channel 2).

                                                                            Type:
                                                                            @@ -2089,7 +2086,7 @@

                                                                            Submodules
                                                                            -warning_lines[source]
                                                                            +warning_lines[source]

                                                                            String with all warnings.

                                                                            Type:
                                                                            @@ -2108,13 +2105,13 @@

                                                                            Submodules
                                                                            -as_dict() dict[str, Any][source]
                                                                            +as_dict() dict[str, Any][source]

                                                                            MSONable dict.

                                                                            -get_doc() dict[str, Any][source]
                                                                            +get_doc() dict[str, Any][source]

                                                                            Get a dict with all information stored in lobsterout.

                                                                            @@ -2122,12 +2119,12 @@

                                                                            Submodules
                                                                            -class MadelungEnergies(filename: str | PathLike = 'MadelungEnergies.lobster', ewald_splitting: float | None = None, madelungenergies_mulliken: float | None = None, madelungenergies_loewdin: float | None = None)[source]
                                                                            +class MadelungEnergies(filename: str | PathLike = 'MadelungEnergies.lobster', ewald_splitting: float | None = None, madelungenergies_mulliken: float | None = None, madelungenergies_loewdin: float | None = None)[source]

                                                                            Bases: MSONable

                                                                            Read MadelungEnergies.lobster files generated by LOBSTER.

                                                                            -madelungenergies_mulliken[source]
                                                                            +madelungenergies_mulliken[source]

                                                                            The Madelung energy based on the Mulliken approach.

                                                                            Type:
                                                                            @@ -2138,7 +2135,7 @@

                                                                            Submodules
                                                                            -madelungenergies_loewdin[source]
                                                                            +madelungenergies_loewdin[source]

                                                                            The Madelung energy based on the Loewdin approach.

                                                                            Type:
                                                                            @@ -2149,7 +2146,7 @@

                                                                            Submodules
                                                                            -ewald_splitting[source]
                                                                            +ewald_splitting[source]

                                                                            The Ewald splitting parameter to compute SitePotentials.

                                                                            Type:
                                                                            @@ -2170,24 +2167,24 @@

                                                                            Submodules
                                                                            -property madelungenergies_Loewdin: float | None[source]
                                                                            +property madelungenergies_Loewdin: float | None[source]

                                                                            -property madelungenergies_Mulliken: float | None[source]
                                                                            +property madelungenergies_Mulliken: float | None[source]

                                                                            -class NciCobiList(filename: str | PathLike | None = 'NcICOBILIST.lobster')[source]
                                                                            +class NciCobiList(filename: str | PathLike | None = 'NcICOBILIST.lobster')[source]

                                                                            Bases: object

                                                                            Read NcICOBILIST (multi-center ICOBI) files generated by LOBSTER.

                                                                            -is_spin_polarized[source]
                                                                            +is_spin_polarized[source]

                                                                            Whether the calculation is spin polarized.

                                                                            Type:
                                                                            @@ -2198,7 +2195,7 @@

                                                                            Submodules
                                                                            -NciCobiList[source]
                                                                            +NciCobiList[source]

                                                                            The listfile data of the form: {

                                                                            @@ -2226,7 +2223,7 @@

                                                                            Submodules
                                                                            -property ncicobi_list: dict[Any, dict[str, Any]][source]
                                                                            +property ncicobi_list: dict[Any, dict[str, Any]][source]

                                                                            Returns: dict: ncicobilist.

                                                                            @@ -2235,12 +2232,12 @@

                                                                            Submodules
                                                                            -class Polarization(filename: str | PathLike = 'POLARIZATION.lobster', rel_mulliken_pol_vector: dict[str, float | str] | None = None, rel_loewdin_pol_vector: dict[str, float | str] | None = None)[source]
                                                                            +class Polarization(filename: str | PathLike = 'POLARIZATION.lobster', rel_mulliken_pol_vector: dict[str, float | str] | None = None, rel_loewdin_pol_vector: dict[str, float | str] | None = None)[source]

                                                                            Bases: MSONable

                                                                            Read POLARIZATION.lobster file generated by LOBSTER.

                                                                            -rel_mulliken_pol_vector[source]
                                                                            +rel_mulliken_pol_vector[source]

                                                                            Relative Mulliken polarization vector.

                                                                            Type:
                                                                            @@ -2251,7 +2248,7 @@

                                                                            Submodules
                                                                            -rel_loewdin_pol_vector[source]
                                                                            +rel_loewdin_pol_vector[source]

                                                                            Relative Mulliken polarization vector.

                                                                            Type:
                                                                            @@ -2273,12 +2270,12 @@

                                                                            Submodules
                                                                            -class SitePotential(filename: str | PathLike = 'SitePotentials.lobster', ewald_splitting: float | None = None, num_atoms: int | None = None, atomlist: list[str] | None = None, types: list[str] | None = None, sitepotentials_loewdin: list[float] | None = None, sitepotentials_mulliken: list[float] | None = None, madelungenergies_mulliken: float | None = None, madelungenergies_loewdin: float | None = None)[source]
                                                                            +class SitePotential(filename: str | PathLike = 'SitePotentials.lobster', ewald_splitting: float | None = None, num_atoms: int | None = None, atomlist: list[str] | None = None, types: list[str] | None = None, sitepotentials_loewdin: list[float] | None = None, sitepotentials_mulliken: list[float] | None = None, madelungenergies_mulliken: float | None = None, madelungenergies_loewdin: float | None = None)[source]

                                                                            Bases: MSONable

                                                                            Read SitePotentials.lobster files generated by LOBSTER.

                                                                            -atomlist[source]
                                                                            +atomlist[source]

                                                                            Atoms in SitePotentials.lobster.

                                                                            Type:
                                                                            @@ -2289,7 +2286,7 @@

                                                                            Submodules
                                                                            -types[source]
                                                                            +types[source]

                                                                            Types of atoms in SitePotentials.lobster.

                                                                            Type:
                                                                            @@ -2300,7 +2297,7 @@

                                                                            Submodules
                                                                            -num_atoms[source]
                                                                            +num_atoms[source]

                                                                            Number of atoms in SitePotentials.lobster.

                                                                            Type:
                                                                            @@ -2311,7 +2308,7 @@

                                                                            Submodules
                                                                            -sitepotentials_mulliken[source]
                                                                            +sitepotentials_mulliken[source]

                                                                            Mulliken potentials of sites in SitePotentials.lobster.

                                                                            Type:
                                                                            @@ -2322,7 +2319,7 @@

                                                                            Submodules
                                                                            -sitepotentials_loewdin[source]
                                                                            +sitepotentials_loewdin[source]

                                                                            Loewdin potentials of sites in SitePotentials.lobster.

                                                                            Type:
                                                                            @@ -2333,7 +2330,7 @@

                                                                            Submodules
                                                                            -madelungenergies_mulliken[source]
                                                                            +madelungenergies_mulliken[source]

                                                                            The Madelung energy based on the Mulliken approach.

                                                                            Type:
                                                                            @@ -2344,7 +2341,7 @@

                                                                            Submodules
                                                                            -madelungenergies_loewdin[source]
                                                                            +madelungenergies_loewdin[source]

                                                                            The Madelung energy based on the Loewdin approach.

                                                                            Type:
                                                                            @@ -2355,7 +2352,7 @@

                                                                            Submodules
                                                                            -ewald_splitting[source]
                                                                            +ewald_splitting[source]

                                                                            The Ewald Splitting parameter to compute SitePotentials.

                                                                            Type:
                                                                            @@ -2381,7 +2378,7 @@

                                                                            Submodules
                                                                            -get_structure_with_site_potentials(structure_filename: str | PathLike) Structure[source]
                                                                            +get_structure_with_site_potentials(structure_filename: str | PathLike) Structure[source]

                                                                            Get a Structure with Mulliken and Loewdin charges as site properties.

                                                                            Parameters:
                                                                            @@ -2395,34 +2392,34 @@

                                                                            Submodules
                                                                            -property madelungenergies_Loewdin[source]
                                                                            +property madelungenergies_Loewdin[source]

                                                                            -property madelungenergies_Mulliken[source]
                                                                            +property madelungenergies_Mulliken[source]
                                                                            -property sitepotentials_Loewdin: list[float][source]
                                                                            +property sitepotentials_Loewdin: list[float][source]
                                                                            -property sitepotentials_Mulliken: list[float][source]
                                                                            +property sitepotentials_Mulliken: list[float][source]

                                                                            -class Wavefunction(filename: str | PathLike, structure: Structure)[source]
                                                                            +class Wavefunction(filename: str | PathLike, structure: Structure)[source]

                                                                            Bases: object

                                                                            Read wave function files from LOBSTER and create an VolumetricData object.

                                                                            -grid[source]
                                                                            +grid[source]

                                                                            Grid for the wave function [Nx+1, Ny+1, Nz+1].

                                                                            Type:
                                                                            @@ -2433,7 +2430,7 @@

                                                                            Submodules
                                                                            -points[source]
                                                                            +points[source]

                                                                            Points.

                                                                            Type:
                                                                            @@ -2444,7 +2441,7 @@

                                                                            Submodules
                                                                            -real[source]
                                                                            +real[source]

                                                                            Real parts of wave function.

                                                                            Type:
                                                                            @@ -2455,7 +2452,7 @@

                                                                            Submodules
                                                                            -imaginary[source]
                                                                            +imaginary[source]

                                                                            Imaginary parts of wave function.

                                                                            Type:
                                                                            @@ -2466,7 +2463,7 @@

                                                                            Submodules
                                                                            -distance[source]
                                                                            +distance[source]

                                                                            Distances to the first point in wave function file.

                                                                            Type:
                                                                            @@ -2485,7 +2482,7 @@

                                                                            Submodules
                                                                            -get_volumetricdata_density() VolumetricData[source]
                                                                            +get_volumetricdata_density() VolumetricData[source]

                                                                            Get a VolumetricData object including the density part of the wave function.

                                                                            Returns:
                                                                            @@ -2496,7 +2493,7 @@

                                                                            Submodules
                                                                            -get_volumetricdata_imaginary() VolumetricData[source]
                                                                            +get_volumetricdata_imaginary() VolumetricData[source]

                                                                            Get a VolumetricData object including the imaginary part of the wave function.

                                                                            Returns:
                                                                            @@ -2507,7 +2504,7 @@

                                                                            Submodules
                                                                            -get_volumetricdata_real() VolumetricData[source]
                                                                            +get_volumetricdata_real() VolumetricData[source]

                                                                            Get a VolumetricData object including the real part of the wave function.

                                                                            Returns:
                                                                            @@ -2518,7 +2515,7 @@

                                                                            Submodules
                                                                            -set_volumetric_data(grid: Tuple3Ints, structure: Structure) None[source]
                                                                            +set_volumetric_data(grid: Tuple3Ints, structure: Structure) None[source]

                                                                            Create the VolumetricData instances.

                                                                            Parameters:
                                                                            @@ -2532,7 +2529,7 @@

                                                                            Submodules
                                                                            -write_file(filename: PathLike = 'WAVECAR.vasp', part: Literal['real', 'imaginary', 'density'] = 'real') None[source]
                                                                            +write_file(filename: PathLike = 'WAVECAR.vasp', part: Literal['real', 'imaginary', 'density'] = 'real') None[source]

                                                                            Save the wave function in a file that can be read by VESTA.

                                                                            This will only work if the wavefunction from lobster is constructed with:

                                                                            “printLCAORealSpaceWavefunction kpoint 1 coordinates 0.0 0.0 0.0 @@ -2554,7 +2551,7 @@

                                                                            Submodules
                                                                            -get_orb_from_str(orbs: list[str]) tuple[str, list[tuple[int, Orbital]]][source]
                                                                            +get_orb_from_str(orbs: list[str]) tuple[str, list[tuple[int, Orbital]]][source]

                                                                            Get Orbitals from string representations.

                                                                            Parameters:
                                                                            diff --git a/docs/pymatgen.io.pwmat.html b/docs/pymatgen.io.pwmat.html index 15b5fac3ced..b083578a508 100644 --- a/docs/pymatgen.io.pwmat.html +++ b/docs/pymatgen.io.pwmat.html @@ -1,23 +1,23 @@ + + - + - pymatgen.io.pwmat package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.io.pwmat package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                            - 2024.10.27 -
                                                                            @@ -178,7 +175,7 @@

                                                                            Submodules

                                                                            pymatgen.io.pwmat.inputs module

                                                                            -class ACExtractor(file_path: PathLike)[source]
                                                                            +class ACExtractor(file_path: PathLike)[source]

                                                                            Bases: ACExtractorBase

                                                                            Extract information contained in atom.config : number of atoms, lattice, types, frac_coords, magmoms.

                                                                            Initialization function.

                                                                            @@ -189,7 +186,7 @@

                                                                            Submodules
                                                                            -get_coords() ndarray[source]
                                                                            +get_coords() ndarray[source]

                                                                            Return the fractional coordinates in structure.

                                                                            Returns:
                                                                            @@ -203,7 +200,7 @@

                                                                            Submodules
                                                                            -get_lattice() ndarray[source]
                                                                            +get_lattice() ndarray[source]

                                                                            Return the lattice of structure.

                                                                            Returns:
                                                                            @@ -217,7 +214,7 @@

                                                                            Submodules
                                                                            -get_magmoms() ndarray[source]
                                                                            +get_magmoms() ndarray[source]

                                                                            Return the magenetic moments of atoms in structure.

                                                                            Returns:
                                                                            @@ -231,13 +228,13 @@

                                                                            Submodules
                                                                            -get_n_atoms() int[source]
                                                                            +get_n_atoms() int[source]

                                                                            Return the number of atoms in the structure.

                                                                            -get_types() ndarray[source]
                                                                            +get_types() ndarray[source]

                                                                            Return the atomic number of atoms in structure.

                                                                            Returns:
                                                                            @@ -253,36 +250,36 @@

                                                                            Submodules
                                                                            -class ACExtractorBase[source]
                                                                            +class ACExtractorBase[source]

                                                                            Bases: ABC

                                                                            A parent class of ACExtractor and ACstrExtractor, ensuring that they are as consistent as possible.

                                                                            -abstract get_coords() ndarray[source]
                                                                            +abstract get_coords() ndarray[source]

                                                                            Get fractional coordinates of atoms in structure defined by atom.config file.

                                                                            -abstract get_lattice() ndarray[source]
                                                                            +abstract get_lattice() ndarray[source]

                                                                            Get the lattice of structure defined by atom.config file.

                                                                            -abstract get_magmoms() ndarray[source]
                                                                            +abstract get_magmoms() ndarray[source]

                                                                            Get atomic magmoms of atoms in structure defined by atom.config file.

                                                                            -abstract get_n_atoms() int[source]
                                                                            +abstract get_n_atoms() int[source]

                                                                            Get the number of atoms in structure defined by atom.config file.

                                                                            -abstract get_types() ndarray[source]
                                                                            +abstract get_types() ndarray[source]

                                                                            Get atomic number of atoms in structure defined by atom.config file.

                                                                            @@ -290,7 +287,7 @@

                                                                            Submodules
                                                                            -class ACstrExtractor(atom_config_str: str)[source]
                                                                            +class ACstrExtractor(atom_config_str: str)[source]

                                                                            Bases: ACExtractorBase

                                                                            Extract information from atom.config file. You can get str by slicing the MOVEMENT.

                                                                            Initialization function.

                                                                            @@ -301,7 +298,7 @@

                                                                            Submodules
                                                                            -get_atom_energies() ndarray | None[source]
                                                                            +get_atom_energies() ndarray | None[source]

                                                                            Return the energies of individual atoms in material system.

                                                                            When turning on ENERGY DEPOSITION, PWmat will output energy per atom.

                                                                            @@ -316,7 +313,7 @@

                                                                            Submodules
                                                                            -get_atom_forces() ndarray[source]
                                                                            +get_atom_forces() ndarray[source]

                                                                            Return the force on atoms in material system.

                                                                            Returns:
                                                                            @@ -330,7 +327,7 @@

                                                                            Submodules
                                                                            -get_coords() ndarray[source]
                                                                            +get_coords() ndarray[source]

                                                                            Return the fractional coordinate of atoms in structure.

                                                                            Returns:
                                                                            @@ -344,7 +341,7 @@

                                                                            Submodules
                                                                            -get_e_tot() ndarray[source]
                                                                            +get_e_tot() ndarray[source]

                                                                            Return the total energy of structure.

                                                                            Returns:
                                                                            @@ -358,7 +355,7 @@

                                                                            Submodules
                                                                            -get_lattice() ndarray[source]
                                                                            +get_lattice() ndarray[source]

                                                                            Return the lattice of structure.

                                                                            Returns:
                                                                            @@ -372,7 +369,7 @@

                                                                            Submodules
                                                                            -get_magmoms() ndarray[source]
                                                                            +get_magmoms() ndarray[source]

                                                                            Return the magnetic moments of atoms in structure.

                                                                            Returns:
                                                                            @@ -386,7 +383,7 @@

                                                                            Submodules
                                                                            -get_n_atoms() int[source]
                                                                            +get_n_atoms() int[source]

                                                                            Return the number of atoms in structure.

                                                                            Returns:
                                                                            @@ -400,7 +397,7 @@

                                                                            Submodules
                                                                            -get_types() ndarray[source]
                                                                            +get_types() ndarray[source]

                                                                            Return the atomic number of atoms in structure.

                                                                            Returns:
                                                                            @@ -414,7 +411,7 @@

                                                                            Submodules
                                                                            -get_virial() ndarray | None[source]
                                                                            +get_virial() ndarray | None[source]

                                                                            Return the virial tensor of material system.

                                                                            Returns:
                                                                            @@ -430,7 +427,7 @@

                                                                            Submodules
                                                                            -class AtomConfig(structure: Structure, sort_structure: bool = False)[source]
                                                                            +class AtomConfig(structure: Structure, sort_structure: bool = False)[source]

                                                                            Bases: MSONable

                                                                            Object for representing the data in a atom.config or final.config file.

                                                                            Initialization function.

                                                                            @@ -445,7 +442,7 @@

                                                                            Submodules
                                                                            -as_dict()[source]
                                                                            +as_dict()[source]
                                                                            Returns:

                                                                            dict.

                                                                            @@ -455,7 +452,7 @@

                                                                            Submodules
                                                                            -classmethod from_dict(dct: dict) Self[source]
                                                                            +classmethod from_dict(dct: dict) Self[source]

                                                                            Get a AtomConfig object from a dictionary.

                                                                            Parameters:
                                                                            @@ -469,7 +466,7 @@

                                                                            Submodules
                                                                            -classmethod from_file(filename: PathLike, mag: bool = False) Self[source]
                                                                            +classmethod from_file(filename: PathLike, mag: bool = False) Self[source]

                                                                            Get a AtomConfig from a file.

                                                                            Parameters:
                                                                            @@ -486,7 +483,7 @@

                                                                            Submodules
                                                                            -classmethod from_str(data: str, mag: bool = False) Self[source]
                                                                            +classmethod from_str(data: str, mag: bool = False) Self[source]

                                                                            Reads a atom.config from a string.

                                                                            Parameters:
                                                                            @@ -503,7 +500,7 @@

                                                                            Submodules
                                                                            -get_str() str[source]
                                                                            +get_str() str[source]

                                                                            Return a string describing the structure in atom.config format.

                                                                            Returns:
                                                                            @@ -517,7 +514,7 @@

                                                                            Submodules
                                                                            -write_file(filename: PathLike, **kwargs)[source]
                                                                            +write_file(filename: PathLike, **kwargs)[source]

                                                                            Write AtomConfig to a file.

                                                                            @@ -525,7 +522,7 @@

                                                                            Submodules
                                                                            -class GenKpt(reciprocal_lattice: ndarray, kpoints: dict[str, ndarray], path: list[list[str]], density: float = 0.01)[source]
                                                                            +class GenKpt(reciprocal_lattice: ndarray, kpoints: dict[str, ndarray], path: list[list[str]], density: float = 0.01)[source]

                                                                            Bases: MSONable

                                                                            Read and write gen.kpt. This file just generates line-mode kpoints.

                                                                            Initialization function.

                                                                            @@ -541,7 +538,7 @@

                                                                            Submodules
                                                                            -classmethod from_structure(structure: Structure, dim: int, density: float = 0.01) Self[source]
                                                                            +classmethod from_structure(structure: Structure, dim: int, density: float = 0.01) Self[source]

                                                                            Obtain a AtomConfig object from Structure object.

                                                                            Parameters:
                                                                            @@ -557,13 +554,13 @@

                                                                            Submodules
                                                                            -get_str()[source]
                                                                            +get_str()[source]

                                                                            Get a string to be written as a gen.kpt file.

                                                                            -write_file(filename: PathLike)[source]
                                                                            +write_file(filename: PathLike)[source]

                                                                            Write gen.kpt to a file.

                                                                            Parameters:
                                                                            @@ -576,7 +573,7 @@

                                                                            Submodules
                                                                            -class HighSymmetryPoint(reciprocal_lattice: ndarray, kpts: dict[str, list], path: list[list[str]], density: float)[source]
                                                                            +class HighSymmetryPoint(reciprocal_lattice: ndarray, kpts: dict[str, list], path: list[list[str]], density: float)[source]

                                                                            Bases: MSONable

                                                                            Read and write HIGH_SYMMETRY_POINTS file which generate line-mode kpoints.

                                                                            Initialization function.

                                                                            @@ -592,7 +589,7 @@

                                                                            Submodules
                                                                            -classmethod from_structure(structure: Structure, dim: int, density: float = 0.01) Self[source]
                                                                            +classmethod from_structure(structure: Structure, dim: int, density: float = 0.01) Self[source]

                                                                            Obtain HighSymmetry object from Structure object.

                                                                            Parameters:
                                                                            @@ -608,13 +605,13 @@

                                                                            Submodules
                                                                            -get_str() str[source]
                                                                            +get_str() str[source]

                                                                            Get a string describing high symmetry points in HIGH_SYMMETRY_POINTS format.

                                                                            -write_file(filename: PathLike)[source]
                                                                            +write_file(filename: PathLike)[source]

                                                                            Write HighSymmetryPoint to a file.

                                                                            @@ -622,12 +619,12 @@

                                                                            Submodules
                                                                            -class LineLocator[source]
                                                                            +class LineLocator[source]

                                                                            Bases: MSONable

                                                                            Find the line indices (starts from 1) of a certain paragraph of text from the file.

                                                                            -static locate_all_lines(file_path: PathLike, content: str, exclusion: str = '') list[int][source]
                                                                            +static locate_all_lines(file_path: PathLike, content: str, exclusion: str = '') list[int][source]

                                                                            Locate the line in file where a certain paragraph of text is located (return all indices).

                                                                            Parameters:
                                                                            @@ -644,12 +641,12 @@

                                                                            Submodules
                                                                            -class ListLocator[source]
                                                                            +class ListLocator[source]

                                                                            Bases: MSONable

                                                                            Find the element indices (starts from 0) of a certain paragraph of text from the list.

                                                                            -static locate_all_lines(strs_lst: list[str], content: str, exclusion: str = '') list[int][source]
                                                                            +static locate_all_lines(strs_lst: list[str], content: str, exclusion: str = '') list[int][source]

                                                                            Locate the elements in list where a certain paragraph of text is located (return all indices).

                                                                            Parameters:
                                                                            @@ -669,7 +666,7 @@

                                                                            Submodules

                                                                            pymatgen.io.pwmat.outputs module

                                                                            -class DosSpin(filename: PathLike)[source]
                                                                            +class DosSpin(filename: PathLike)[source]

                                                                            Bases: MSONable

                                                                            Extract information of DOS from DOS_SPIN file: - DOS.totalspin, DOS.totalspin_projected @@ -677,13 +674,13 @@

                                                                            Submodules
                                                                            -property dos: ndarray[source]
                                                                            +property dos: ndarray[source]

                                                                            Value of density of state.

                                                                            -get_partial_dos(part: str) ndarray[source]
                                                                            +get_partial_dos(part: str) ndarray[source]

                                                                            Get partial dos for give element or orbital.

                                                                            Parameters:
                                                                            @@ -708,7 +705,7 @@

                                                                            Submodules
                                                                            -property labels: list[str][source]
                                                                            +property labels: list[str][source]

                                                                            The name of the partial density of states.

                                                                            @@ -716,7 +713,7 @@

                                                                            Submodules
                                                                            -class Movement(filename: PathLike, ionic_step_skip: int | None = None, ionic_step_offset: int | None = None)[source]
                                                                            +class Movement(filename: PathLike, ionic_step_skip: int | None = None, ionic_step_offset: int | None = None)[source]

                                                                            Bases: MSONable

                                                                            Parser for data in MOVEMENT which records trajectory during MD.

                                                                            Initialization function.

                                                                            @@ -736,7 +733,7 @@

                                                                            Submodules
                                                                            -property atom_configs: list[Structure][source]
                                                                            +property atom_configs: list[Structure][source]

                                                                            AtomConfig for structures contained in MOVEMENT file.

                                                                            Returns:
                                                                            @@ -750,7 +747,7 @@

                                                                            Submodules
                                                                            -property atom_forces: ndarray[source]
                                                                            +property atom_forces: ndarray[source]

                                                                            Forces on atoms in each structures contained in MOVEMENT.

                                                                            Returns:
                                                                            @@ -768,7 +765,7 @@

                                                                            Submodules
                                                                            -property e_atoms: ndarray[source]
                                                                            +property e_atoms: ndarray[source]

                                                                            Individual energies of atoms in each ionic step structures contained in MOVEMENT.

                                                                            @@ -787,7 +784,7 @@

                                                                            Submodules
                                                                            -property e_tots: ndarray[source]
                                                                            +property e_tots: ndarray[source]

                                                                            Total energies of each ionic step structures contained in MOVEMENT.

                                                                            Returns:
                                                                            @@ -805,7 +802,7 @@

                                                                            Submodules
                                                                            -property virials: ndarray[source]
                                                                            +property virials: ndarray[source]

                                                                            Virial tensor of each ionic step structure contained in MOVEMENT.

                                                                            Returns:
                                                                            @@ -825,7 +822,7 @@

                                                                            Submodules
                                                                            -class OutFermi(filename: PathLike)[source]
                                                                            +class OutFermi(filename: PathLike)[source]

                                                                            Bases: MSONable

                                                                            Extract fermi energy (eV) from OUT.FERMI.

                                                                            Initialization function.

                                                                            @@ -836,7 +833,7 @@

                                                                            Submodules
                                                                            -property e_fermi: float[source]
                                                                            +property e_fermi: float[source]

                                                                            The fermi energy level.

                                                                            Returns:
                                                                            @@ -852,7 +849,7 @@

                                                                            Submodules
                                                                            -class Report(filename: PathLike)[source]
                                                                            +class Report(filename: PathLike)[source]

                                                                            Bases: MSONable

                                                                            Extract information of spin, kpoints, bands, eigenvalues from REPORT file.

                                                                            Initialization function.

                                                                            @@ -863,7 +860,7 @@

                                                                            Submodules
                                                                            -property eigenvalues: ndarray[source]
                                                                            +property eigenvalues: ndarray[source]

                                                                            The eigenvalues.

                                                                            Returns:
                                                                            @@ -881,38 +878,38 @@

                                                                            Submodules
                                                                            -property hsps: dict[str, ndarray][source]
                                                                            +property hsps: dict[str, ndarray][source]

                                                                            The labels and fractional coordinates of high symmetry points as dict[str, np.ndarray]. Empty dict when task is not line-mode kpath.

                                                                            -property kpoints: ndarray[source]
                                                                            +property kpoints: ndarray[source]

                                                                            The fractional coordinates of kpoints.

                                                                            -property kpoints_weight: ndarray[source]
                                                                            +property kpoints_weight: ndarray[source]

                                                                            The weight of kpoints.

                                                                            -property n_bands: int[source]
                                                                            +property n_bands: int[source]

                                                                            The number of bands.

                                                                            -property n_kpoints: int[source]
                                                                            +property n_kpoints: int[source]

                                                                            The number of k-points.

                                                                            -property spin: int[source]
                                                                            +property spin: int[source]

                                                                            The spin switches.

                                                                            Returns:
                                                                            diff --git a/docs/pymatgen.io.qchem.html b/docs/pymatgen.io.qchem.html index a436c4914ae..f5d9f9fd3ce 100644 --- a/docs/pymatgen.io.qchem.html +++ b/docs/pymatgen.io.qchem.html @@ -1,23 +1,23 @@ + + - + - pymatgen.io.qchem package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.io.qchem package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                            - 2024.10.27 -
                                                                            @@ -174,7 +171,7 @@

                                                                            Submodules
                                                                            -class QCInput(molecule: Molecule | list[Molecule] | Literal['read'], rem: dict, opt: dict[str, list] | None = None, pcm: dict | None = None, solvent: dict | None = None, smx: dict | None = None, scan: dict[str, list] | None = None, van_der_waals: dict[str, float] | None = None, vdw_mode: str = 'atomic', plots: dict | None = None, nbo: dict | None = None, geom_opt: dict | None = None, cdft: list[list[dict]] | None = None, almo_coupling: list[list[tuple[int, int]]] | None = None, svp: dict | None = None, pcm_nonels: dict | None = None)[source]
                                                                            +class QCInput(molecule: Molecule | list[Molecule] | Literal['read'], rem: dict, opt: dict[str, list] | None = None, pcm: dict | None = None, solvent: dict | None = None, smx: dict | None = None, scan: dict[str, list] | None = None, van_der_waals: dict[str, float] | None = None, vdw_mode: str = 'atomic', plots: dict | None = None, nbo: dict | None = None, geom_opt: dict | None = None, cdft: list[list[dict]] | None = None, almo_coupling: list[list[tuple[int, int]]] | None = None, svp: dict | None = None, pcm_nonels: dict | None = None)[source]

                                                                            Bases: InputFile

                                                                            An object representing a QChem input file. QCInput attributes represent different sections of a QChem input file. To add a new section one needs to modify __init__, __str__, from_sting and add static methods @@ -331,7 +328,7 @@

                                                                            Submodules
                                                                            -static almo_template(almo_coupling: list[list[tuple[int, int]]]) str[source]
                                                                            +static almo_template(almo_coupling: list[list[tuple[int, int]]]) str[source]
                                                                            Parameters:

                                                                            almo – list of lists of int 2-tuples.

                                                                            @@ -347,7 +344,7 @@

                                                                            Submodules
                                                                            -static cdft_template(cdft: list[list[dict]]) str[source]
                                                                            +static cdft_template(cdft: list[list[dict]]) str[source]
                                                                            Parameters:

                                                                            cdft – list of lists of dicts.

                                                                            @@ -363,7 +360,7 @@

                                                                            Submodules
                                                                            -static find_sections(string: str) list[source]
                                                                            +static find_sections(string: str) list[source]

                                                                            Find sections in the string.

                                                                            Parameters:
                                                                            @@ -377,7 +374,7 @@

                                                                            Submodules
                                                                            -classmethod from_file(filename: str | Path) Self[source]
                                                                            +classmethod from_file(filename: str | Path) Self[source]

                                                                            Create QcInput from file.

                                                                            Parameters:
                                                                            @@ -391,7 +388,7 @@

                                                                            Submodules
                                                                            -classmethod from_multi_jobs_file(filename: str) list[Self][source]
                                                                            +classmethod from_multi_jobs_file(filename: str) list[Self][source]

                                                                            Create list of QcInput from a file.

                                                                            Parameters:
                                                                            @@ -405,7 +402,7 @@

                                                                            Submodules
                                                                            -classmethod from_str(string: str) Self[source]
                                                                            +classmethod from_str(string: str) Self[source]

                                                                            Read QcInput from string.

                                                                            Parameters:
                                                                            @@ -419,7 +416,7 @@

                                                                            Submodules
                                                                            -static geom_opt_template(geom_opt: dict) str[source]
                                                                            +static geom_opt_template(geom_opt: dict) str[source]
                                                                            Parameters:

                                                                            geom_opt (dict) – Geometry optimization section.

                                                                            @@ -435,13 +432,13 @@

                                                                            Submodules
                                                                            -get_str() str[source]
                                                                            +get_str() str[source]

                                                                            Return a string representation of an entire input file.

                                                                            -static molecule_template(molecule: Molecule | list[Molecule] | Literal['read']) str[source]
                                                                            +static molecule_template(molecule: Molecule | list[Molecule] | Literal['read']) str[source]
                                                                            Parameters:

                                                                            molecule (Molecule, list of Molecules, or "read")

                                                                            @@ -457,7 +454,7 @@

                                                                            Submodules
                                                                            -static multi_job_string(job_list: list[QCInput]) str[source]
                                                                            +static multi_job_string(job_list: list[QCInput]) str[source]
                                                                            Parameters:

                                                                            job_list (list[QCInput]) – List of QChem jobs.

                                                                            @@ -473,7 +470,7 @@

                                                                            Submodules
                                                                            -static nbo_template(nbo: dict) str[source]
                                                                            +static nbo_template(nbo: dict) str[source]
                                                                            Parameters:

                                                                            nbo (dict) – NBO section.

                                                                            @@ -489,7 +486,7 @@

                                                                            Submodules
                                                                            -static opt_template(opt: dict[str, list]) str[source]
                                                                            +static opt_template(opt: dict[str, list]) str[source]

                                                                            Optimization template.

                                                                            Parameters:
                                                                            @@ -506,7 +503,7 @@

                                                                            Submodules
                                                                            -static pcm_nonels_template(pcm_nonels: dict) str[source]
                                                                            +static pcm_nonels_template(pcm_nonels: dict) str[source]

                                                                            Template for the $pcm_nonels section.

                                                                            Arg

                                                                            pcm_nonels: dict of CMIRS parameters, e.g. @@ -542,7 +539,7 @@

                                                                            Submodules
                                                                            -static pcm_template(pcm: dict) str[source]
                                                                            +static pcm_template(pcm: dict) str[source]

                                                                            PCM run template.

                                                                            Parameters:
                                                                            @@ -559,7 +556,7 @@

                                                                            Submodules
                                                                            -static plots_template(plots: dict) str[source]
                                                                            +static plots_template(plots: dict) str[source]
                                                                            Parameters:

                                                                            plots (dict) – Plots section.

                                                                            @@ -575,7 +572,7 @@

                                                                            Submodules
                                                                            -static read_almo(string: str) list[list[tuple[int, int]]][source]
                                                                            +static read_almo(string: str) list[list[tuple[int, int]]][source]

                                                                            Read ALMO coupling parameters from string.

                                                                            Parameters:
                                                                            @@ -592,7 +589,7 @@

                                                                            Submodules
                                                                            -static read_cdft(string: str) list[list[dict]][source]
                                                                            +static read_cdft(string: str) list[list[dict]][source]

                                                                            Read cdft parameters from string.

                                                                            Parameters:
                                                                            @@ -609,7 +606,7 @@

                                                                            Submodules
                                                                            -static read_geom_opt(string: str) dict[source]
                                                                            +static read_geom_opt(string: str) dict[source]

                                                                            Read geom_opt parameters from string.

                                                                            Parameters:
                                                                            @@ -626,7 +623,7 @@

                                                                            Submodules
                                                                            -static read_molecule(string: str) Molecule | list[Molecule] | Literal['read'][source]
                                                                            +static read_molecule(string: str) Molecule | list[Molecule] | Literal['read'][source]

                                                                            Read molecule from string.

                                                                            Parameters:
                                                                            @@ -640,7 +637,7 @@

                                                                            Submodules
                                                                            -static read_nbo(string: str) dict[source]
                                                                            +static read_nbo(string: str) dict[source]

                                                                            Read nbo parameters from string.

                                                                            Parameters:
                                                                            @@ -657,7 +654,7 @@

                                                                            Submodules
                                                                            -static read_opt(string: str) dict[str, list][source]
                                                                            +static read_opt(string: str) dict[str, list][source]

                                                                            Read opt section from string.

                                                                            Parameters:
                                                                            @@ -674,7 +671,7 @@

                                                                            Submodules
                                                                            -static read_pcm(string: str) dict[source]
                                                                            +static read_pcm(string: str) dict[source]

                                                                            Read pcm parameters from string.

                                                                            Parameters:
                                                                            @@ -691,7 +688,7 @@

                                                                            Submodules
                                                                            -static read_pcm_nonels(string: str) dict[source]
                                                                            +static read_pcm_nonels(string: str) dict[source]

                                                                            Read pcm_nonels parameters from string.

                                                                            Parameters:
                                                                            @@ -708,7 +705,7 @@

                                                                            Submodules
                                                                            -static read_plots(string: str) dict[source]
                                                                            +static read_plots(string: str) dict[source]

                                                                            Read plots parameters from string.

                                                                            Parameters:
                                                                            @@ -725,7 +722,7 @@

                                                                            Submodules
                                                                            -static read_rem(string: str) dict[source]
                                                                            +static read_rem(string: str) dict[source]

                                                                            Parse rem from string.

                                                                            Parameters:
                                                                            @@ -742,7 +739,7 @@

                                                                            Submodules
                                                                            -static read_scan(string: str) dict[str, list][source]
                                                                            +static read_scan(string: str) dict[str, list][source]

                                                                            Read scan section from a string.

                                                                            Parameters:
                                                                            @@ -756,7 +753,7 @@

                                                                            Submodules
                                                                            -static read_smx(string: str) dict[source]
                                                                            +static read_smx(string: str) dict[source]

                                                                            Read smx parameters from string.

                                                                            Parameters:
                                                                            @@ -770,7 +767,7 @@

                                                                            Submodules
                                                                            -static read_solvent(string: str) dict[source]
                                                                            +static read_solvent(string: str) dict[source]

                                                                            Read solvent parameters from string.

                                                                            Parameters:
                                                                            @@ -787,13 +784,13 @@

                                                                            Submodules
                                                                            -static read_svp(string: str) dict[source]
                                                                            +static read_svp(string: str) dict[source]

                                                                            Read svp parameters from string.

                                                                            -static read_vdw(string: str) tuple[str, dict][source]
                                                                            +static read_vdw(string: str) tuple[str, dict][source]

                                                                            Read van der Waals parameters from string.

                                                                            Parameters:
                                                                            @@ -810,7 +807,7 @@

                                                                            Submodules
                                                                            -static rem_template(rem: dict[str, Any]) str[source]
                                                                            +static rem_template(rem: dict[str, Any]) str[source]
                                                                            Parameters:

                                                                            rem (dict[str, Any]) – REM section.

                                                                            @@ -826,7 +823,7 @@

                                                                            Submodules
                                                                            -static scan_template(scan: dict[str, list]) str[source]
                                                                            +static scan_template(scan: dict[str, list]) str[source]

                                                                            Get string representing Q-Chem input format for scan section.

                                                                            Parameters:
                                                                            @@ -838,7 +835,7 @@

                                                                            Submodules
                                                                            -static smx_template(smx: dict) str[source]
                                                                            +static smx_template(smx: dict) str[source]
                                                                            Parameters:

                                                                            smx (dict) – Solvation model with short-range corrections.

                                                                            @@ -854,7 +851,7 @@

                                                                            Submodules
                                                                            -static solvent_template(solvent: dict) str[source]
                                                                            +static solvent_template(solvent: dict) str[source]

                                                                            Solvent template.

                                                                            Parameters:
                                                                            @@ -871,7 +868,7 @@

                                                                            Submodules
                                                                            -static svp_template(svp: dict) str[source]
                                                                            +static svp_template(svp: dict) str[source]

                                                                            Template for the $svp section.

                                                                            Parameters:
                                                                            @@ -896,7 +893,7 @@

                                                                            Submodules
                                                                            -static van_der_waals_template(radii: dict[str, float], mode: str = 'atomic') str[source]
                                                                            +static van_der_waals_template(radii: dict[str, float], mode: str = 'atomic') str[source]
                                                                            Parameters:
                                                                              @@ -922,7 +919,7 @@

                                                                              Submodules
                                                                              -static write_multi_job_file(job_list: list[QCInput], filename: str)[source]
                                                                              +static write_multi_job_file(job_list: list[QCInput], filename: str)[source]

                                                                              Write a multijob file.

                                                                              Parameters:
                                                                              @@ -942,7 +939,7 @@

                                                                              Submodules
                                                                              -class QCOutput(filename: str)[source]
                                                                              +class QCOutput(filename: str)[source]

                                                                              Bases: MSONable

                                                                              Parse QChem output files.

                                                                              @@ -952,13 +949,13 @@

                                                                              Submodules
                                                                              -as_dict()[source]
                                                                              +as_dict()[source]

                                                                              Get MSONable dict representation of QCOutput.

                                                                              -static multiple_outputs_from_file(filename, keep_sub_files=True)[source]
                                                                              +static multiple_outputs_from_file(filename, keep_sub_files=True)[source]

                                                                              Parses a QChem output file with multiple calculations # 1.) Separates the output into sub-files

                                                                              @@ -973,7 +970,7 @@

                                                                              Submodules
                                                                              -check_for_structure_changes(mol1: Molecule, mol2: Molecule) str[source]
                                                                              +check_for_structure_changes(mol1: Molecule, mol2: Molecule) str[source]

                                                                              Compares connectivity of two molecules (using MoleculeGraph w/ OpenBabelNN). This function will work with two molecules with different atom orderings,

                                                                              @@ -1008,7 +1005,7 @@

                                                                              Submodules
                                                                              -get_percentage(line: str, orbital: str) str[source]
                                                                              +get_percentage(line: str, orbital: str) str[source]

                                                                              Retrieve the percent character of an orbital.

                                                                              Parameters:
                                                                              @@ -1028,7 +1025,7 @@

                                                                              Submodules
                                                                              -gradient_parser(filename: str = '131.0') NDArray[source]
                                                                              +gradient_parser(filename: str = '131.0') NDArray[source]

                                                                              Parse the gradient data from a gradient scratch file.

                                                                              Parameters:
                                                                              @@ -1045,7 +1042,7 @@

                                                                              Submodules
                                                                              -hessian_parser(filename: str = '132.0', n_atoms: int | None = None) NDArray[source]
                                                                              +hessian_parser(filename: str = '132.0', n_atoms: int | None = None) NDArray[source]

                                                                              Parse the Hessian data from a Hessian scratch file.

                                                                              Parameters:
                                                                              @@ -1065,7 +1062,7 @@

                                                                              Submodules
                                                                              -jump_to_header(lines: list[str], header: str) list[str][source]
                                                                              +jump_to_header(lines: list[str], header: str) list[str][source]

                                                                              Given a list of lines, truncate the start of the list so that the first line of the new list contains the header.

                                                                              @@ -1086,7 +1083,7 @@

                                                                              Submodules
                                                                              -nbo_parser(filename: str) dict[str, list[DataFrame]][source]
                                                                              +nbo_parser(filename: str) dict[str, list[DataFrame]][source]

                                                                              Parse all the important sections of NBO output.

                                                                              Parameters:
                                                                              @@ -1103,7 +1100,7 @@

                                                                              Submodules
                                                                              -orbital_coeffs_parser(filename: str = '53.0') NDArray[source]
                                                                              +orbital_coeffs_parser(filename: str = '53.0') NDArray[source]

                                                                              Parse the orbital coefficients from a scratch file.

                                                                              Parameters:
                                                                              @@ -1120,7 +1117,7 @@

                                                                              Submodules
                                                                              -parse_hybridization_character(lines: list[str]) list[DataFrame][source]
                                                                              +parse_hybridization_character(lines: list[str]) list[DataFrame][source]

                                                                              Parse the hybridization character section of NBO output.

                                                                              Parameters:
                                                                              @@ -1137,7 +1134,7 @@

                                                                              Submodules
                                                                              -parse_hyperbonds(lines: list[str]) list[DataFrame][source]
                                                                              +parse_hyperbonds(lines: list[str]) list[DataFrame][source]

                                                                              Parse the natural populations section of NBO output.

                                                                              Parameters:
                                                                              @@ -1154,7 +1151,7 @@

                                                                              Submodules
                                                                              -parse_natural_populations(lines: list[str]) list[DataFrame][source]
                                                                              +parse_natural_populations(lines: list[str]) list[DataFrame][source]

                                                                              Parse the natural populations section of NBO output.

                                                                              Parameters:
                                                                              @@ -1171,7 +1168,7 @@

                                                                              Submodules
                                                                              -parse_perturbation_energy(lines: list[str]) list[DataFrame][source]
                                                                              +parse_perturbation_energy(lines: list[str]) list[DataFrame][source]

                                                                              Parse the perturbation energy section of NBO output.

                                                                              Parameters:
                                                                              @@ -1188,7 +1185,7 @@

                                                                              Submodules
                                                                              -z_int(string: str) int[source]
                                                                              +z_int(string: str) int[source]

                                                                              Convert string to integer. If string empty, return -1.

                                                                              @@ -1210,7 +1207,7 @@

                                                                              Submodules
                                                                              -class ForceSet(molecule: Molecule, basis_set: str = 'def2-tzvpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, vdw_mode: Literal['atomic', 'sequential'] = 'atomic', cdft_constraints: list[list[dict]] | None = None, overwrite_inputs: dict | None = None)[source]
                                                                              +class ForceSet(molecule: Molecule, basis_set: str = 'def2-tzvpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, vdw_mode: Literal['atomic', 'sequential'] = 'atomic', cdft_constraints: list[list[dict]] | None = None, overwrite_inputs: dict | None = None)[source]

                                                                              Bases: QChemDictSet

                                                                              QChemDictSet for a force (gradient) calculation.

                                                                              @@ -1380,7 +1377,7 @@

                                                                              Submodules
                                                                              -class FreqSet(molecule: Molecule, basis_set: str = 'def2-svpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, vdw_mode: Literal['atomic', 'sequential'] = 'atomic', cdft_constraints: list[list[dict]] | None = None, overwrite_inputs: dict | None = None)[source]
                                                                              +class FreqSet(molecule: Molecule, basis_set: str = 'def2-svpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, vdw_mode: Literal['atomic', 'sequential'] = 'atomic', cdft_constraints: list[list[dict]] | None = None, overwrite_inputs: dict | None = None)[source]

                                                                              Bases: QChemDictSet

                                                                              QChemDictSet for a frequency calculation.

                                                                              @@ -1550,7 +1547,7 @@

                                                                              Submodules
                                                                              -class OptSet(molecule: Molecule, basis_set: str = 'def2-svpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, opt_variables: dict[str, list] | None = None, geom_opt_max_cycles: int = 200, geom_opt: dict | None = None, cdft_constraints: list[list[dict]] | None = None, overwrite_inputs: dict | None = None)[source]
                                                                              +class OptSet(molecule: Molecule, basis_set: str = 'def2-svpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, opt_variables: dict[str, list] | None = None, geom_opt_max_cycles: int = 200, geom_opt: dict | None = None, cdft_constraints: list[list[dict]] | None = None, overwrite_inputs: dict | None = None)[source]

                                                                              Bases: QChemDictSet

                                                                              QChemDictSet for a geometry optimization.

                                                                              @@ -1735,7 +1732,7 @@

                                                                              Submodules
                                                                              -class PESScanSet(molecule: Molecule, basis_set: str = 'def2-svpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, opt_variables: dict[str, list] | None = None, scan_variables: dict[str, list] | None = None, overwrite_inputs: dict | None = None, vdw_mode: Literal['atomic', 'sequential'] = 'atomic')[source]
                                                                              +class PESScanSet(molecule: Molecule, basis_set: str = 'def2-svpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, opt_variables: dict[str, list] | None = None, scan_variables: dict[str, list] | None = None, overwrite_inputs: dict | None = None, vdw_mode: Literal['atomic', 'sequential'] = 'atomic')[source]

                                                                              Bases: QChemDictSet

                                                                              QChemDictSet for a potential energy surface scan (PES_SCAN) calculation, used primarily to identify possible transition states or to sample different @@ -1837,7 +1834,7 @@

                                                                              Submodules
                                                                              -class QChemDictSet(molecule: Molecule, job_type: str, basis_set: str, scf_algorithm: str, qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, opt_variables: dict[str, list] | None = None, scan_variables: dict[str, list] | None = None, max_scf_cycles: int = 100, geom_opt_max_cycles: int = 200, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, geom_opt: dict | None = None, cdft_constraints: list[list[dict]] | None = None, almo_coupling_states: list[list[tuple[int, int]]] | None = None, overwrite_inputs: dict | None = None, vdw_mode: Literal['atomic', 'sequential'] = 'atomic', extra_scf_print: bool = False)[source]
                                                                              +class QChemDictSet(molecule: Molecule, job_type: str, basis_set: str, scf_algorithm: str, qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, opt_variables: dict[str, list] | None = None, scan_variables: dict[str, list] | None = None, max_scf_cycles: int = 100, geom_opt_max_cycles: int = 200, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, geom_opt: dict | None = None, cdft_constraints: list[list[dict]] | None = None, almo_coupling_states: list[list[tuple[int, int]]] | None = None, overwrite_inputs: dict | None = None, vdw_mode: Literal['atomic', 'sequential'] = 'atomic', extra_scf_print: bool = False)[source]

                                                                              Bases: QCInput

                                                                              Build a QCInput given all the various input parameters. Can be extended by standard implementations below.

                                                                              @@ -2066,7 +2063,7 @@

                                                                              Submodules
                                                                              -write(input_file: PathLike) None[source]
                                                                              +write(input_file: PathLike) None[source]
                                                                              Parameters:

                                                                              input_file (PathLike) – Filename.

                                                                              @@ -2078,7 +2075,7 @@

                                                                              Submodules
                                                                              -class SinglePointSet(molecule: Molecule, basis_set: str = 'def2-tzvpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, vdw_mode: Literal['atomic', 'sequential'] = 'atomic', cdft_constraints: list[list[dict]] | None = None, almo_coupling_states: list[list[tuple[int, int]]] | None = None, extra_scf_print: bool = False, overwrite_inputs: dict | None = None)[source]
                                                                              +class SinglePointSet(molecule: Molecule, basis_set: str = 'def2-tzvpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, vdw_mode: Literal['atomic', 'sequential'] = 'atomic', cdft_constraints: list[list[dict]] | None = None, almo_coupling_states: list[list[tuple[int, int]]] | None = None, extra_scf_print: bool = False, overwrite_inputs: dict | None = None)[source]

                                                                              Bases: QChemDictSet

                                                                              QChemDictSet for a single point calculation.

                                                                              @@ -2287,7 +2284,7 @@

                                                                              Submodules
                                                                              -class TransitionStateSet(molecule: Molecule, basis_set: str = 'def2-svpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, opt_variables: dict[str, list] | None = None, geom_opt_max_cycles: int = 200, geom_opt: dict | None = None, overwrite_inputs: dict | None = None, vdw_mode='atomic')[source]
                                                                              +class TransitionStateSet(molecule: Molecule, basis_set: str = 'def2-svpd', scf_algorithm: str = 'diis', qchem_version: int = 5, dft_rung: int = 4, pcm_dielectric: float | None = None, isosvp_dielectric: float | None = None, smd_solvent: str | None = None, cmirs_solvent: Literal['water', 'acetonitrile', 'dimethyl sulfoxide', 'cyclohexane', 'benzene'] | None = None, custom_smd: str | None = None, max_scf_cycles: int = 100, plot_cubes: bool = False, output_wavefunction: bool = False, nbo_params: dict | None = None, opt_variables: dict[str, list] | None = None, geom_opt_max_cycles: int = 200, geom_opt: dict | None = None, overwrite_inputs: dict | None = None, vdw_mode='atomic')[source]

                                                                              Bases: QChemDictSet

                                                                              QChemDictSet for a transition-state search.

                                                                              @@ -2382,7 +2379,7 @@

                                                                              Submodules
                                                                              -lower_and_check_unique(dict_to_check)[source]
                                                                              +lower_and_check_unique(dict_to_check)[source]

                                                                              Takes a dictionary and makes all the keys lower case. Also converts all numeric values (floats, ints) to str and replaces “jobtype” with “job_type” just so that key specifically can be called elsewhere without ambiguity. Finally, ensures that @@ -2407,14 +2404,14 @@

                                                                              Submodules
                                                                              -process_parsed_coords(coords)[source]
                                                                              +process_parsed_coords(coords)[source]

                                                                              Takes a set of parsed coordinates, which come as an array of strings, and returns a numpy array of floats.

                                                                              -process_parsed_fock_matrix(fock_matrix)[source]
                                                                              +process_parsed_fock_matrix(fock_matrix)[source]

                                                                              The Fock matrix is parsed as a list, while it should actually be a square matrix, this function takes the list of finds the right dimensions in order to reshape the matrix.

                                                                              @@ -2422,7 +2419,7 @@

                                                                              Submodules
                                                                              -process_parsed_hess(hess_data)[source]
                                                                              +process_parsed_hess(hess_data)[source]

                                                                              Takes the information contained in a HESS file and converts it into the format of the machine-readable 132.0 file which can be printed out to be read into subsequent optimizations.

                                                                              @@ -2430,13 +2427,13 @@

                                                                              Submodules
                                                                              -read_matrix_pattern(header_pattern, footer_pattern, elements_pattern, text, postprocess=<class 'str'>)[source]
                                                                              +read_matrix_pattern(header_pattern, footer_pattern, elements_pattern, text, postprocess=<class 'str'>)[source]

                                                                              Parse a matrix to get the quantities in a numpy array.

                                                                              -read_pattern(text_str, patterns, terminate_on_match=False, postprocess=<class 'str'>)[source]
                                                                              +read_pattern(text_str, patterns, terminate_on_match=False, postprocess=<class 'str'>)[source]

                                                                              General pattern reading on an input string.

                                                                              Parameters:
                                                                              @@ -2463,7 +2460,7 @@

                                                                              Submodules
                                                                              -read_table_pattern(text_str, header_pattern, row_pattern, footer_pattern, postprocess=<class 'str'>, attribute_name=None, last_one_only=False)[source]
                                                                              +read_table_pattern(text_str, header_pattern, row_pattern, footer_pattern, postprocess=<class 'str'>, attribute_name=None, last_one_only=False)[source]

                                                                              Parse table-like data. A table composes of three parts: header, main body, footer. All the data matches “row pattern” in the main body will be returned.

                                                                              diff --git a/docs/pymatgen.io.vasp.html b/docs/pymatgen.io.vasp.html index e75b659c11b..b60db0e1fd3 100644 --- a/docs/pymatgen.io.vasp.html +++ b/docs/pymatgen.io.vasp.html @@ -1,23 +1,23 @@ + + - + - pymatgen.io.vasp package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.io.vasp package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                              - 2024.10.27 -
                                                                              @@ -529,6 +526,24 @@
                                                                            • MITRelaxSet.CONFIG
                                                                            +
                                                                          • MP24RelaxSet +
                                                                          • +
                                                                          • MP24StaticSet +
                                                                          • MPAbsorptionSet
                                                                            • MPAbsorptionSet.CONFIG
                                                                            • MPAbsorptionSet.SUPPORTED_MODES
                                                                            • @@ -829,13 +844,13 @@

                                                                              Submodules
                                                                              -class VaspDoc[source]
                                                                              +class VaspDoc[source]

                                                                              Bases: object

                                                                              A VASP documentation helper.

                                                                              Init for VaspDoc.

                                                                              -classmethod get_help(tag: str, fmt: str = 'text') str[source]
                                                                              +classmethod get_help(tag: str, fmt: str = 'text') str[source]

                                                                              Get help on a VASP tag.

                                                                              Parameters:
                                                                              @@ -849,13 +864,13 @@

                                                                              Submodules
                                                                              -classmethod get_incar_tags() list[str][source]
                                                                              +classmethod get_incar_tags() list[str][source]

                                                                              Get a list of all INCAR tags from the VASP wiki.

                                                                              -print_help(tag: str) None[source]
                                                                              +print_help(tag: str) None[source]

                                                                              Print the help for a TAG.

                                                                              Parameters:
                                                                              @@ -866,7 +881,7 @@

                                                                              Submodules
                                                                              -print_jupyter_help(tag: str) None[source]
                                                                              +print_jupyter_help(tag: str) None[source]

                                                                              Display HTML help in ipython notebook.

                                                                              Parameters:
                                                                              @@ -884,21 +899,21 @@

                                                                              Submodules
                                                                              -exception BadIncarWarning[source]
                                                                              +exception BadIncarWarning[source]

                                                                              Bases: UserWarning

                                                                              Warning class for bad INCAR parameters.

                                                                              -exception BadPoscarWarning[source]
                                                                              +exception BadPoscarWarning[source]

                                                                              Bases: UserWarning

                                                                              Warning class for bad POSCAR entries.

                                                                              -class Incar(params: dict[str, Any] | None = None)[source]
                                                                              +class Incar(params: dict[str, Any] | None = None)[source]

                                                                              Bases: UserDict, MSONable

                                                                              A case-insensitive dictionary to read/write INCAR files with additional helper functions.

                                                                              -check_params() None[source]
                                                                              +check_params() None[source]

                                                                              Check INCAR for invalid tags or values. If a tag doesn’t exist, calculation will still run, however VASP will ignore the tag and set it as default without letting you know.

                                                                              @@ -935,12 +950,12 @@

                                                                              Submodules
                                                                              -copy() Self[source]
                                                                              +copy() Self[source]

                                                                              -diff(other: Self) dict[str, dict[str, Any]][source]
                                                                              +diff(other: Self) dict[str, dict[str, Any]][source]

                                                                              Diff function for Incar. Compare two Incars and indicate which parameters are the same and which are not. Useful for checking whether two runs were done using the same parameters.

                                                                              @@ -964,7 +979,7 @@

                                                                              Submodules
                                                                              -classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                              +classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                              Parameters:

                                                                              dct (dict) – Serialized Incar.

                                                                              @@ -977,7 +992,7 @@

                                                                              Submodules
                                                                              -classmethod from_file(filename: PathLike) Self[source]
                                                                              +classmethod from_file(filename: PathLike) Self[source]

                                                                              Read an Incar object from a file.

                                                                              Parameters:
                                                                              @@ -991,7 +1006,7 @@

                                                                              Submodules
                                                                              -classmethod from_str(string: str) Self[source]
                                                                              +classmethod from_str(string: str) Self[source]

                                                                              Read an Incar object from a string.

                                                                              Parameters:
                                                                              @@ -1005,13 +1020,13 @@

                                                                              Submodules
                                                                              -get(key: str, default: Any = None) Any[source]
                                                                              +get(key: str, default: Any = None) Any[source]

                                                                              Get a value for a case-insensitive key, return default if not found.

                                                                              -get_str(sort_keys: bool = False, pretty: bool = False) str[source]
                                                                              +get_str(sort_keys: bool = False, pretty: bool = False) str[source]

                                                                              Get a string representation of the INCAR. Differ from the __str__ method to provide options for pretty printing.

                                                                              @@ -1028,7 +1043,7 @@

                                                                              Submodules
                                                                              -static proc_val(key: str, val: str) list | bool | float | int | str[source]
                                                                              +static proc_val(key: str, val: str) list | bool | float | int | str[source]

                                                                              Helper method to convert INCAR parameters to proper types like ints, floats, lists, etc.

                                                                              @@ -1043,7 +1058,7 @@

                                                                              Submodules
                                                                              -write_file(filename: PathLike) None[source]
                                                                              +write_file(filename: PathLike) None[source]

                                                                              Write Incar to a file.

                                                                              Parameters:
                                                                              @@ -1056,7 +1071,7 @@

                                                                              Submodules
                                                                              -class Kpoints(comment: str = 'Default gamma', num_kpts: int = 0, style: KpointsSupportedModes = KpointsSupportedModes.Gamma, kpts: Sequence[Kpoint] = ((1, 1, 1),), kpts_shift: Vector3D = (0, 0, 0), kpts_weights: list[float] | None = None, coord_type: Literal['Reciprocal', 'Cartesian'] | None = None, labels: list[str] | None = None, tet_number: int = 0, tet_weight: float = 0, tet_connections: list[tuple] | None = None)[source]
                                                                              +class Kpoints(comment: str = 'Default gamma', num_kpts: int = 0, style: KpointsSupportedModes = KpointsSupportedModes.Gamma, kpts: Sequence[Kpoint] = ((1, 1, 1),), kpts_shift: Vector3D = (0, 0, 0), kpts_weights: list[float] | None = None, coord_type: Literal['Reciprocal', 'Cartesian'] | None = None, labels: list[str] | None = None, tet_number: int = 0, tet_weight: float = 0, tet_connections: list[tuple] | None = None)[source]

                                                                              Bases: MSONable

                                                                              KPOINTS reader/writer.

                                                                              Highly flexible constructor for Kpoints object. The flexibility comes @@ -1101,13 +1116,13 @@

                                                                              Submodules
                                                                              -as_dict() dict[str, Any][source]
                                                                              +as_dict() dict[str, Any][source]

                                                                              MSONable dict.

                                                                              -classmethod automatic(subdivisions: int, comment: str = 'Fully automatic kpoint scheme') Self[source]
                                                                              +classmethod automatic(subdivisions: int, comment: str = 'Fully automatic kpoint scheme') Self[source]

                                                                              Constructor for a fully automatic Kpoint grid, with Gamma-centered grids and the number of subdivisions along each reciprocal lattice vector determined by the scheme in the @@ -1128,7 +1143,7 @@

                                                                              Submodules
                                                                              -classmethod automatic_density(structure: Structure, kppa: float, force_gamma: bool = False, comment: str | None = None) Self[source]
                                                                              +classmethod automatic_density(structure: Structure, kppa: float, force_gamma: bool = False, comment: str | None = None) Self[source]

                                                                              Get an automatic Kpoints object based on a structure and a kpoint density. Uses Gamma centered meshes for hexagonal cells and face-centered cells, Monkhorst-Pack grids otherwise.

                                                                              @@ -1155,7 +1170,7 @@

                                                                              Submodules
                                                                              -classmethod automatic_density_by_lengths(structure: Structure, length_densities: Sequence[float], force_gamma: bool = False, comment: str | None = None) Self[source]
                                                                              +classmethod automatic_density_by_lengths(structure: Structure, length_densities: Sequence[float], force_gamma: bool = False, comment: str | None = None) Self[source]

                                                                              Get an automatic Kpoints object based on a structure and a k-point density normalized by lattice constants.

                                                                              @@ -1185,7 +1200,7 @@

                                                                              Submodules
                                                                              -classmethod automatic_density_by_vol(structure: Structure, kppvol: int, force_gamma: bool = False, comment: str | None = None) Self[source]
                                                                              +classmethod automatic_density_by_vol(structure: Structure, kppvol: int, force_gamma: bool = False, comment: str | None = None) Self[source]

                                                                              Get an automatic Kpoints object based on a structure and a kpoint density per inverse Angstrom^3 of reciprocal cell.

                                                                              @@ -1209,7 +1224,7 @@

                                                                              Submodules
                                                                              -classmethod automatic_gamma_density(structure: Structure, kppa: float, comment: str | None = None) Self[source]
                                                                              +classmethod automatic_gamma_density(structure: Structure, kppa: float, comment: str | None = None) Self[source]

                                                                              Get an automatic Kpoints object based on a structure and a kpoint density. Uses Gamma centered meshes always. For GW.

                                                                              @@ -1230,7 +1245,7 @@

                                                                              Submodules
                                                                              -classmethod automatic_linemode(divisions: int, ibz: HighSymmKpath, comment: str = 'Line_mode KPOINTS file') Self[source]
                                                                              +classmethod automatic_linemode(divisions: int, ibz: HighSymmKpath, comment: str = 'Line_mode KPOINTS file') Self[source]

                                                                              Convenient static constructor for a KPOINTS in mode line_mode. gamma centered Monkhorst-Pack grids and the number of subdivisions along each reciprocal lattice vector determined by the scheme in the @@ -1251,13 +1266,13 @@

                                                                              Submodules
                                                                              -copy() Self[source]
                                                                              +copy() Self[source]

                                                                              Make a copy of the Kpoints object.

                                                                              -classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                              +classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                              Parameters:

                                                                              dct (dict) – Dict representation.

                                                                              @@ -1270,7 +1285,7 @@

                                                                              Submodules
                                                                              -classmethod from_file(filename: PathLike) Self[source]
                                                                              +classmethod from_file(filename: PathLike) Self[source]

                                                                              Read a Kpoints object from a KPOINTS file.

                                                                              Parameters:
                                                                              @@ -1284,7 +1299,7 @@

                                                                              Submodules
                                                                              -classmethod from_str(string: str) Self[source]
                                                                              +classmethod from_str(string: str) Self[source]

                                                                              Reads a Kpoints object from a KPOINTS string.

                                                                              Parameters:
                                                                              @@ -1298,7 +1313,7 @@

                                                                              Submodules
                                                                              -classmethod gamma_automatic(kpts: Tuple3Ints = (1, 1, 1), shift: Vector3D = (0, 0, 0), comment: str = 'Automatic kpoint scheme') Self[source]
                                                                              +classmethod gamma_automatic(kpts: Tuple3Ints = (1, 1, 1), shift: Vector3D = (0, 0, 0), comment: str = 'Automatic kpoint scheme') Self[source]

                                                                              Construct an automatic Gamma-centered Kpoint grid.

                                                                              Parameters:
                                                                              @@ -1317,13 +1332,13 @@

                                                                              Submodules
                                                                              -property kpts: list[tuple[int, int, int] | tuple[int] | tuple[float, float, float]][source]
                                                                              +property kpts: list[tuple[int, int, int] | tuple[int] | tuple[float, float, float]][source]

                                                                              A sequence of Kpoints, where each Kpoint is a tuple of 3 or 1.

                                                                              -classmethod monkhorst_automatic(kpts: Tuple3Ints = (2, 2, 2), shift: Vector3D = (0, 0, 0), comment: str = 'Automatic kpoint scheme') Self[source]
                                                                              +classmethod monkhorst_automatic(kpts: Tuple3Ints = (2, 2, 2), shift: Vector3D = (0, 0, 0), comment: str = 'Automatic kpoint scheme') Self[source]

                                                                              Construct an automatic Monkhorst-Pack Kpoint grid.

                                                                              Parameters:
                                                                              @@ -1342,19 +1357,19 @@

                                                                              Submodules
                                                                              -property style: KpointsSupportedModes[source]
                                                                              +property style: KpointsSupportedModes[source]

                                                                              Style for kpoint generation. One of Kpoints_supported_modes enum.

                                                                              -supported_modes[source]
                                                                              +supported_modes[source]

                                                                              alias of KpointsSupportedModes

                                                                              -write_file(filename: PathLike) None[source]
                                                                              +write_file(filename: PathLike) None[source]

                                                                              Write Kpoints to a file.

                                                                              Parameters:
                                                                              @@ -1367,42 +1382,42 @@

                                                                              Submodules
                                                                              -class KpointsSupportedModes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]
                                                                              +class KpointsSupportedModes(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]

                                                                              Bases: Enum

                                                                              Enum type of all supported modes for Kpoint generation.

                                                                              -Automatic = 0[source]
                                                                              +Automatic = 0[source]
                                                                              -Cartesian = 4[source]
                                                                              +Cartesian = 4[source]
                                                                              -Gamma = 1[source]
                                                                              +Gamma = 1[source]
                                                                              -Line_mode = 3[source]
                                                                              +Line_mode = 3[source]
                                                                              -Monkhorst = 2[source]
                                                                              +Monkhorst = 2[source]
                                                                              -Reciprocal = 5[source]
                                                                              +Reciprocal = 5[source]
                                                                              -classmethod from_str(mode: str) Self[source]
                                                                              +classmethod from_str(mode: str) Self[source]
                                                                              Parameters:

                                                                              mode – String.

                                                                              @@ -1417,36 +1432,36 @@

                                                                              Submodules
                                                                              -class Orbital(n, l, j, E, occ)[source]
                                                                              +class Orbital(n, l, j, E, occ)[source]

                                                                              Bases: NamedTuple

                                                                              Create new instance of Orbital(n, l, j, E, occ)

                                                                              -E: float[source]
                                                                              +E: float[source]

                                                                              Alias for field number 3

                                                                              -j: float[source]
                                                                              +j: float[source]

                                                                              Alias for field number 2

                                                                              -l: int[source]
                                                                              +l: int[source]

                                                                              Alias for field number 1

                                                                              -n: int[source]
                                                                              +n: int[source]

                                                                              Alias for field number 0

                                                                              -occ: float[source]
                                                                              +occ: float[source]

                                                                              Alias for field number 4

                                                                              @@ -1454,42 +1469,42 @@

                                                                              Submodules
                                                                              -class OrbitalDescription(l, E, Type, Rcut, Type2, Rcut2)[source]
                                                                              +class OrbitalDescription(l, E, Type, Rcut, Type2, Rcut2)[source]

                                                                              Bases: NamedTuple

                                                                              Create new instance of OrbitalDescription(l, E, Type, Rcut, Type2, Rcut2)

                                                                              -E: float[source]
                                                                              +E: float[source]

                                                                              Alias for field number 1

                                                                              -Rcut: float[source]
                                                                              +Rcut: float[source]

                                                                              Alias for field number 3

                                                                              -Rcut2: float | None[source]
                                                                              +Rcut2: float | None[source]

                                                                              Alias for field number 5

                                                                              -Type: int[source]
                                                                              +Type: int[source]

                                                                              Alias for field number 2

                                                                              -Type2: int | None[source]
                                                                              +Type2: int | None[source]

                                                                              Alias for field number 4

                                                                              -l: int[source]
                                                                              +l: int[source]

                                                                              Alias for field number 0

                                                                              @@ -1497,73 +1512,73 @@

                                                                              Submodules
                                                                              -exception PmgVaspPspDirError[source]
                                                                              +exception PmgVaspPspDirError[source]

                                                                              Bases: ValueError

                                                                              Error thrown when PMG_VASP_PSP_DIR is not configured, but POTCAR is requested.

                                                                              -class Poscar(structure: Structure, comment: str | None = None, selective_dynamics: ArrayLike | None = None, true_names: bool = True, velocities: ArrayLike | None = None, predictor_corrector: ArrayLike | None = None, predictor_corrector_preamble: str | None = None, lattice_velocities: ArrayLike | None = None, sort_structure: bool = False)[source]
                                                                              +class Poscar(structure: Structure, comment: str | None = None, selective_dynamics: ArrayLike | None = None, true_names: bool = True, velocities: ArrayLike | None = None, predictor_corrector: ArrayLike | None = None, predictor_corrector_preamble: str | None = None, lattice_velocities: ArrayLike | None = None, sort_structure: bool = False)[source]

                                                                              Bases: MSONable

                                                                              Represent the data in a POSCAR or CONTCAR file.

                                                                              -structure[source]
                                                                              +structure[source]

                                                                              Associated Structure.

                                                                              -comment[source]
                                                                              +comment[source]

                                                                              Optional comment string.

                                                                              -true_names[source]
                                                                              +true_names[source]

                                                                              Boolean indication whether Poscar contains actual real names parsed from either a POTCAR or the POSCAR itself.

                                                                              -selective_dynamics[source]
                                                                              +selective_dynamics[source]

                                                                              Selective dynamics attribute for each site if available. A Nx3 array of booleans.

                                                                              -velocities[source]
                                                                              +velocities[source]

                                                                              Velocities for each site (typically read in from a CONTCAR). A Nx3 array of floats.

                                                                              -predictor_corrector[source]
                                                                              +predictor_corrector[source]

                                                                              Predictor corrector coordinates and derivatives for each site; i.e. a list of three 1x3 arrays for each site (typically read in from an MD CONTCAR).

                                                                              -predictor_corrector_preamble[source]
                                                                              +predictor_corrector_preamble[source]

                                                                              Predictor corrector preamble contains the predictor-corrector key, POTIM, and thermostat parameters that precede the site-specific predictor corrector data in MD CONTCAR.

                                                                              -lattice_velocities[source]
                                                                              +lattice_velocities[source]

                                                                              Lattice velocities and current lattice (typically read in from an MD CONTCAR). A 6x3 array of floats.

                                                                              -temperature[source]
                                                                              +temperature[source]

                                                                              Temperature of velocity Maxwell-Boltzmann initialization. Initialized to -1 (MB hasn’t been performed).

                                                                              @@ -1595,13 +1610,13 @@

                                                                              Submodules
                                                                              -as_dict() dict[source]
                                                                              +as_dict() dict[source]

                                                                              MSONable dict.

                                                                              -classmethod from_dict(dct: dict) Self[source]
                                                                              +classmethod from_dict(dct: dict) Self[source]
                                                                              Parameters:

                                                                              dct (dict) – Dict representation.

                                                                              @@ -1614,7 +1629,7 @@

                                                                              Submodules
                                                                              -classmethod from_file(filename: PathLike, check_for_potcar: bool = True, read_velocities: bool = True, **kwargs: dict[str, Any]) Self[source]
                                                                              +classmethod from_file(filename: PathLike, check_for_potcar: bool = True, read_velocities: bool = True, **kwargs: dict[str, Any]) Self[source]

                                                                              Read POSCAR from a file.

                                                                              The code will try its best to determine the elements in the POSCAR in the following order:

                                                                              @@ -1649,7 +1664,7 @@

                                                                              Submodules
                                                                              -classmethod from_str(data: str, default_names: list[str] | None = None, read_velocities: bool = True) Self[source]
                                                                              +classmethod from_str(data: str, default_names: list[str] | None = None, read_velocities: bool = True) Self[source]

                                                                              Read POSCAR from a string.

                                                                              The code will try its best to determine the elements in the POSCAR in the following order:

                                                                              @@ -1684,7 +1699,7 @@

                                                                              Submodules
                                                                              -get_str(direct: bool = True, vasp4_compatible: bool = False, significant_figures: int = 16) str[source]
                                                                              +get_str(direct: bool = True, vasp4_compatible: bool = False, significant_figures: int = 16) str[source]

                                                                              Return a string to be written as a POSCAR file. By default, site symbols are written, which is compatible for VASP >= 5.

                                                                              @@ -1712,7 +1727,7 @@

                                                                              Submodules
                                                                              -get_string(direct: bool = True, vasp4_compatible: bool = False, significant_figures: int = 16) str[source]
                                                                              +get_string(direct: bool = True, vasp4_compatible: bool = False, significant_figures: int = 16) str[source]

                                                                              Return a string to be written as a POSCAR file. By default, site symbols are written, which is compatible for VASP >= 5.

                                                                              @@ -1740,38 +1755,38 @@

                                                                              Submodules
                                                                              -property lattice_velocities: ArrayLike | None[source]
                                                                              +property lattice_velocities: ArrayLike | None[source]

                                                                              Lattice velocities in Poscar (including the current lattice vectors).

                                                                              -property natoms: list[int][source]
                                                                              +property natoms: list[int][source]

                                                                              Sequence of number of sites of each type associated with the Poscar. Similar to 7th line in VASP 5+ POSCAR or the 6th line in VASP 4 POSCAR.

                                                                              -property predictor_corrector: ArrayLike | None[source]
                                                                              +property predictor_corrector: ArrayLike | None[source]

                                                                              Predictor corrector in Poscar.

                                                                              -property predictor_corrector_preamble: str | None[source]
                                                                              +property predictor_corrector_preamble: str | None[source]

                                                                              Predictor corrector preamble in Poscar.

                                                                              -property selective_dynamics: ArrayLike | None[source]
                                                                              +property selective_dynamics: ArrayLike | None[source]

                                                                              Selective dynamics in Poscar.

                                                                              -set_temperature(temperature: float) None[source]
                                                                              +set_temperature(temperature: float) None[source]

                                                                              Initialize the velocities based on Maxwell-Boltzmann distribution. Removes linear, but not angular drift (same as VASP).

                                                                              Scale the energies to the exact temperature (microcanonical ensemble) @@ -1788,19 +1803,19 @@

                                                                              Submodules
                                                                              -property site_symbols: list[str][source]
                                                                              +property site_symbols: list[str][source]

                                                                              Sequence of symbols associated with the Poscar. Similar to 6th line in VASP 5+ POSCAR.

                                                                              -property velocities: ArrayLike | None[source]
                                                                              +property velocities: ArrayLike | None[source]

                                                                              Velocities in Poscar.

                                                                              -write_file(filename: PathLike, **kwargs) None[source]
                                                                              +write_file(filename: PathLike, **kwargs) None[source]

                                                                              Write POSCAR to a file. The supported kwargs are the same as those for the Poscar.get_str method and are passed through directly.

                                                                              @@ -1809,7 +1824,7 @@

                                                                              Submodules
                                                                              -class Potcar(symbols: Sequence[str] | None = None, functional: str | None = None, sym_potcar_map: dict[str, str] | None = None)[source]
                                                                              +class Potcar(symbols: Sequence[str] | None = None, functional: str | None = None, sym_potcar_map: dict[str, str] | None = None)[source]

                                                                              Bases: list, MSONable

                                                                              Read and write POTCAR files for calculations. Consists of a list of PotcarSingle.

                                                                              @@ -1832,18 +1847,18 @@

                                                                              Submodules
                                                                              -FUNCTIONAL_CHOICES: ClassVar[tuple] = ('PBE', 'PBE_52', 'PBE_52_W_HASH', 'PBE_54', 'PBE_54_W_HASH', 'PBE_64', 'LDA', 'LDA_52', 'LDA_52_W_HASH', 'LDA_54', 'LDA_54_W_HASH', 'LDA_64', 'PW91', 'LDA_US', 'PW91_US', 'Perdew_Zunger81')[source]
                                                                              +FUNCTIONAL_CHOICES: ClassVar[tuple] = ('PBE', 'PBE_52', 'PBE_52_W_HASH', 'PBE_54', 'PBE_54_W_HASH', 'PBE_64', 'LDA', 'LDA_52', 'LDA_52_W_HASH', 'LDA_54', 'LDA_54_W_HASH', 'LDA_64', 'PW91', 'LDA_US', 'PW91_US', 'Perdew_Zunger81')[source]

                                                                              -as_dict() dict[source]
                                                                              +as_dict() dict[source]

                                                                              MSONable dict representation.

                                                                              -classmethod from_dict(dct: dict) Self[source]
                                                                              +classmethod from_dict(dct: dict) Self[source]
                                                                              Parameters:

                                                                              dct (dict) – Dict representation.

                                                                              @@ -1856,7 +1871,7 @@

                                                                              Submodules
                                                                              -classmethod from_file(filename: PathLike) Self[source]
                                                                              +classmethod from_file(filename: PathLike) Self[source]

                                                                              Reads Potcar from file.

                                                                              Parameters:
                                                                              @@ -1870,7 +1885,7 @@

                                                                              Submodules
                                                                              -set_symbols(symbols: Sequence[str], functional: str | None = None, sym_potcar_map: dict[str, str] | None = None) None[source]
                                                                              +set_symbols(symbols: Sequence[str], functional: str | None = None, sym_potcar_map: dict[str, str] | None = None) None[source]

                                                                              Initialize the POTCAR from a set of symbols. Currently, the POTCARs can be fetched from a location specified in .pmgrc.yaml. Use pmg config to add this setting.

                                                                              @@ -1891,19 +1906,19 @@

                                                                              Submodules
                                                                              -property spec: list[dict][source]
                                                                              +property spec: list[dict][source]

                                                                              The atomic symbols and hash of all the atoms in the POTCAR file.

                                                                              -property symbols: list[str][source]
                                                                              +property symbols: list[str][source]

                                                                              The atomic symbols of all the atoms in the POTCAR file.

                                                                              -write_file(filename: PathLike) None[source]
                                                                              +write_file(filename: PathLike) None[source]

                                                                              Write Potcar to a file.

                                                                              Parameters:
                                                                              @@ -1916,13 +1931,13 @@

                                                                              Submodules
                                                                              -class PotcarSingle(data: str, symbol: str | None = None)[source]
                                                                              +class PotcarSingle(data: str, symbol: str | None = None)[source]

                                                                              Bases: object

                                                                              Object for a single POTCAR. The builder assumes the POTCAR contains the complete untouched string “data” and a dict of keywords.

                                                                              -data[source]
                                                                              +data[source]

                                                                              POTCAR data as a string.

                                                                              Type:
                                                                              @@ -1933,7 +1948,7 @@

                                                                              Submodules
                                                                              -keywords[source]
                                                                              +keywords[source]

                                                                              Keywords parsed from the POTCAR as a dict. All keywords are also accessible as attributes in themselves. e.g. potcar.enmax, potcar.encut, etc.

                                                                              @@ -1959,13 +1974,13 @@

                                                                              Submodules
                                                                              -property atomic_no: int[source]
                                                                              +property atomic_no: int[source]

                                                                              Attempt to return the atomic number based on the VRHFIN keyword.

                                                                              -copy() Self[source]
                                                                              +copy() Self[source]

                                                                              Return a copy of the PotcarSingle.

                                                                              Returns:
                                                                              @@ -1976,19 +1991,19 @@

                                                                              Submodules
                                                                              -property electron_configuration: list[tuple[int, str, int]] | None[source]
                                                                              +property electron_configuration: list[tuple[int, str, int]] | None[source]

                                                                              Electronic configuration of the PotcarSingle.

                                                                              -property element: str[source]
                                                                              +property element: str[source]

                                                                              Attempt to return the atomic symbol based on the VRHFIN keyword.

                                                                              -classmethod from_file(filename: PathLike) Self[source]
                                                                              +classmethod from_file(filename: PathLike) Self[source]

                                                                              Read PotcarSingle from file.

                                                                              Parameters:
                                                                              @@ -2002,7 +2017,7 @@

                                                                              Submodules
                                                                              -classmethod from_symbol_and_functional(symbol: str, functional: str | None = None) Self[source]
                                                                              +classmethod from_symbol_and_functional(symbol: str, functional: str | None = None) Self[source]

                                                                              Make a PotcarSingle from a symbol and functional.

                                                                              Parameters:
                                                                              @@ -2019,35 +2034,35 @@

                                                                              Submodules
                                                                              -property functional: str | None[source]
                                                                              +property functional: str | None[source]

                                                                              Functional associated with PotcarSingle.

                                                                              -property functional_class: str | None[source]
                                                                              +property functional_class: str | None[source]

                                                                              Functional class associated with PotcarSingle.

                                                                              -functional_dir: ClassVar[dict[str, str]] = {'LDA': 'POT_LDA_PAW', 'LDA_52': 'POT_LDA_PAW_52', 'LDA_52_W_HASH': 'POTPAW_LDA_52', 'LDA_54': 'POT_LDA_PAW_54', 'LDA_54_W_HASH': 'POTPAW_LDA_54', 'LDA_64': 'POT_LDA_PAW_64', 'LDA_US': 'POT_LDA_US', 'PBE': 'POT_GGA_PAW_PBE', 'PBE_52': 'POT_GGA_PAW_PBE_52', 'PBE_52_W_HASH': 'POTPAW_PBE_52', 'PBE_54': 'POT_GGA_PAW_PBE_54', 'PBE_54_W_HASH': 'POTPAW_PBE_54', 'PBE_64': 'POT_PAW_PBE_64', 'PW91': 'POT_GGA_PAW_PW91', 'PW91_US': 'POT_GGA_US_PW91', 'Perdew_Zunger81': 'POT_LDA_PAW'}[source]
                                                                              +functional_dir: ClassVar[dict[str, str]] = {'LDA': 'POT_LDA_PAW', 'LDA_52': 'POT_LDA_PAW_52', 'LDA_52_W_HASH': 'POTPAW_LDA_52', 'LDA_54': 'POT_LDA_PAW_54', 'LDA_54_W_HASH': 'POTPAW_LDA_54', 'LDA_64': 'POT_LDA_PAW_64', 'LDA_US': 'POT_LDA_US', 'PBE': 'POT_GGA_PAW_PBE', 'PBE_52': 'POT_GGA_PAW_PBE_52', 'PBE_52_W_HASH': 'POTPAW_PBE_52', 'PBE_54': 'POT_GGA_PAW_PBE_54', 'PBE_54_W_HASH': 'POTPAW_PBE_54', 'PBE_64': 'POT_PAW_PBE_64', 'PW91': 'POT_GGA_PAW_PW91', 'PW91_US': 'POT_GGA_US_PW91', 'Perdew_Zunger81': 'POT_LDA_PAW'}[source]
                                                                              -functional_tags: ClassVar[dict[str, dict[Literal['name', 'class'], str]]] = {'91': {'class': 'GGA', 'name': 'PW91'}, 'am': {'class': 'GGA', 'name': 'AM05'}, 'ca': {'class': 'LDA', 'name': 'Perdew-Zunger81'}, 'hl': {'class': 'LDA', 'name': 'Hedin-Lundquist'}, 'lm': {'class': 'GGA', 'name': 'Langreth-Mehl-Hu'}, 'pb': {'class': 'GGA', 'name': 'Perdew-Becke'}, 'pe': {'class': 'GGA', 'name': 'PBE'}, 'ps': {'class': 'GGA', 'name': 'PBEsol'}, 'pw': {'class': 'GGA', 'name': 'PW86'}, 'rp': {'class': 'GGA', 'name': 'revPBE'}, 'wi': {'class': 'LDA', 'name': 'Wigner Interpolation'}}[source]
                                                                              +functional_tags: ClassVar[dict[str, dict[Literal['name', 'class'], str]]] = {'91': {'class': 'GGA', 'name': 'PW91'}, 'am': {'class': 'GGA', 'name': 'AM05'}, 'ca': {'class': 'LDA', 'name': 'Perdew-Zunger81'}, 'hl': {'class': 'LDA', 'name': 'Hedin-Lundquist'}, 'lm': {'class': 'GGA', 'name': 'Langreth-Mehl-Hu'}, 'pb': {'class': 'GGA', 'name': 'Perdew-Becke'}, 'pe': {'class': 'GGA', 'name': 'PBE'}, 'ps': {'class': 'GGA', 'name': 'PBEsol'}, 'pw': {'class': 'GGA', 'name': 'PW86'}, 'rp': {'class': 'GGA', 'name': 'revPBE'}, 'wi': {'class': 'LDA', 'name': 'Wigner Interpolation'}}[source]
                                                                              -property hash_sha256_from_file: str | None[source]
                                                                              +property hash_sha256_from_file: str | None[source]

                                                                              SHA256 hash of the POTCAR file as read from the file. None if no SHA256 hash is found.

                                                                              -identify_potcar(mode: Literal['data', 'file'] = 'data', data_tol: float = 1e-06) tuple[list[str], list[str]][source]
                                                                              +identify_potcar(mode: Literal['data', 'file'] = 'data', data_tol: float = 1e-06) tuple[list[str], list[str]][source]

                                                                              Identify the symbol and compatible functionals associated with this PotcarSingle.

                                                                              This method checks the summary statistics of either the POTCAR metadadata (PotcarSingle._summary_stats[key][“header”] for key in (“keywords”, “stats”) ) @@ -2078,7 +2093,7 @@

                                                                              Submodules
                                                                              -identify_potcar_hash_based(mode: Literal['data', 'file'] = 'data') tuple[list[str], list[str]][source]
                                                                              +identify_potcar_hash_based(mode: Literal['data', 'file'] = 'data') tuple[list[str], list[str]][source]

                                                                              Identify the symbol and compatible functionals associated with this PotcarSingle.

                                                                              This method checks the MD5 hash of either the POTCAR metadadata (PotcarSingle.md5_header_hash) or the entire POTCAR file (PotcarSingle.md5_computed_file_hash) against a database @@ -2104,7 +2119,7 @@

                                                                              Submodules
                                                                              -property is_valid: bool[source]
                                                                              +property is_valid: bool[source]

                                                                              Check that POTCAR matches reference metadata. Parsed metadata is stored in self._summary_stats as a human-readable dict,

                                                                              @@ -2155,30 +2170,30 @@

                                                                              Submodules
                                                                              -property md5_computed_file_hash: str[source]
                                                                              +property md5_computed_file_hash: str[source]

                                                                              MD5 hash of the entire PotcarSingle.

                                                                              -property md5_header_hash: str[source]
                                                                              +property md5_header_hash: str[source]

                                                                              MD5 hash of the metadata defining the PotcarSingle.

                                                                              -property nelectrons: float[source]
                                                                              +property nelectrons: float[source]

                                                                              Number of electrons.

                                                                              -parse_functions: ClassVar[dict[str, Any]] = {'COPYR': <method 'strip' of 'str' objects>, 'DEXC': <function _parse_float>, 'EATOM': <function _parse_float>, 'EAUG': <function _parse_float>, 'EMMIN': <function _parse_float>, 'ENMAX': <function _parse_float>, 'ENMIN': <function _parse_float>, 'GGA': <function _parse_list>, 'ICORE': <function _parse_int>, 'IUNSCR': <function _parse_int>, 'LCOR': <function _parse_bool>, 'LEXCH': <method 'strip' of 'str' objects>, 'LPAW': <function _parse_bool>, 'LULTRA': <function _parse_bool>, 'LUNSCR': <function _parse_bool>, 'NDATA': <function _parse_int>, 'POMASS': <function _parse_float>, 'QCUT': <function _parse_float>, 'QGAM': <function _parse_float>, 'RAUG': <function _parse_float>, 'RCLOC': <function _parse_float>, 'RCORE': <function _parse_float>, 'RDEP': <function _parse_float>, 'RDEPT': <function _parse_float>, 'RMAX': <function _parse_float>, 'RPACOR': <function _parse_float>, 'RRKJ': <function _parse_list>, 'RWIGS': <function _parse_float>, 'SHA256': <method 'strip' of 'str' objects>, 'STEP': <function _parse_list>, 'TITEL': <method 'strip' of 'str' objects>, 'VRHFIN': <method 'strip' of 'str' objects>, 'ZVAL': <function _parse_float>}[source]
                                                                              +parse_functions: ClassVar[dict[str, Any]] = {'COPYR': <method 'strip' of 'str' objects>, 'DEXC': <function _parse_float>, 'EATOM': <function _parse_float>, 'EAUG': <function _parse_float>, 'EMMIN': <function _parse_float>, 'ENMAX': <function _parse_float>, 'ENMIN': <function _parse_float>, 'GGA': <function _parse_list>, 'ICORE': <function _parse_int>, 'IUNSCR': <function _parse_int>, 'LCOR': <function _parse_bool>, 'LEXCH': <method 'strip' of 'str' objects>, 'LPAW': <function _parse_bool>, 'LULTRA': <function _parse_bool>, 'LUNSCR': <function _parse_bool>, 'NDATA': <function _parse_int>, 'POMASS': <function _parse_float>, 'QCUT': <function _parse_float>, 'QGAM': <function _parse_float>, 'RAUG': <function _parse_float>, 'RCLOC': <function _parse_float>, 'RCORE': <function _parse_float>, 'RDEP': <function _parse_float>, 'RDEPT': <function _parse_float>, 'RMAX': <function _parse_float>, 'RPACOR': <function _parse_float>, 'RRKJ': <function _parse_list>, 'RWIGS': <function _parse_float>, 'SHA256': <method 'strip' of 'str' objects>, 'STEP': <function _parse_list>, 'TITEL': <method 'strip' of 'str' objects>, 'VRHFIN': <method 'strip' of 'str' objects>, 'ZVAL': <function _parse_float>}[source]
                                                                              -property potential_type: Literal['NC', 'PAW', 'US'][source]
                                                                              +property potential_type: Literal['NC', 'PAW', 'US'][source]

                                                                              NC (Norm-conserving), US (Ultra-soft), PAW (Projector augmented wave).

                                                                              Type:
                                                                              @@ -2189,19 +2204,19 @@

                                                                              Submodules
                                                                              -property sha256_computed_file_hash: str[source]
                                                                              +property sha256_computed_file_hash: str[source]

                                                                              Compute a SHA256 hash of the PotcarSingle EXCLUDING lines starting with ‘SHA256’ and ‘COPYR’.

                                                                              -property symbol: str[source]
                                                                              +property symbol: str[source]

                                                                              The POTCAR symbol, e.g. W_pv.

                                                                              -verify_potcar() tuple[bool, bool][source]
                                                                              +verify_potcar() tuple[bool, bool][source]

                                                                              Attempt to verify the integrity of the POTCAR data.

                                                                              This method checks the whole file (removing only the SHA256 metadata) against the SHA256 hash in the header if this is found. @@ -2219,11 +2234,11 @@

                                                                              Submodules
                                                                              -write_file(filename: str) None[source]
                                                                              +write_file(filename: str) None[source]

                                                                              Write PotcarSingle to a file.

                                                                              Parameters:
                                                                              -

                                                                              filename (str) – Filename to write to.

                                                                              +

                                                                              filename (str) – File to write to.

                                                                              @@ -2232,14 +2247,14 @@

                                                                              Submodules
                                                                              -exception UnknownPotcarWarning[source]
                                                                              +exception UnknownPotcarWarning[source]

                                                                              Bases: UserWarning

                                                                              Warning raised when POTCAR hashes do not pass validation.

                                                                              -class VaspInput(incar: dict | Incar, kpoints: Kpoints | None, poscar: Poscar, potcar: Potcar | str | None, potcar_spec: bool = False, optional_files: dict[PathLike, object] | None = None, **kwargs)[source]
                                                                              +class VaspInput(incar: dict | Incar, kpoints: Kpoints | None, poscar: Poscar, potcar: Potcar | str | None, potcar_spec: bool = False, optional_files: dict[PathLike, object] | None = None, **kwargs)[source]

                                                                              Bases: dict, MSONable

                                                                              Contain a set of VASP input objects corresponding to a run.

                                                                              Initialize a VaspInput object with the given input files.

                                                                              @@ -2262,19 +2277,19 @@

                                                                              Submodules
                                                                              -as_dict() dict[source]
                                                                              +as_dict() dict[source]

                                                                              MSONable dict.

                                                                              -copy(deep: bool = True) Self[source]
                                                                              +copy(deep: bool = True) Self[source]

                                                                              Deep copy of VaspInput.

                                                                              -classmethod from_dict(dct: dict) Self[source]
                                                                              +classmethod from_dict(dct: dict) Self[source]
                                                                              Parameters:

                                                                              dct (dict) – Dict representation.

                                                                              @@ -2287,7 +2302,7 @@

                                                                              Submodules
                                                                              -classmethod from_directory(input_dir: PathLike, optional_files: dict | None = None) Self[source]
                                                                              +classmethod from_directory(input_dir: PathLike, optional_files: dict | None = None) Self[source]

                                                                              Read in a set of VASP inputs from a directory. Note that only the standard INCAR, POSCAR, POTCAR and KPOINTS files are read unless optional_filenames is specified.

                                                                              @@ -2305,31 +2320,31 @@

                                                                              Submodules
                                                                              -property incar: Incar[source]
                                                                              +property incar: Incar[source]

                                                                              INCAR object.

                                                                              -property kpoints: Kpoints | None[source]
                                                                              +property kpoints: Kpoints | None[source]

                                                                              KPOINTS object.

                                                                              -property poscar: Poscar[source]
                                                                              +property poscar: Poscar[source]

                                                                              POSCAR object.

                                                                              -property potcar: Potcar | str | None[source]
                                                                              +property potcar: Potcar | str | None[source]

                                                                              POTCAR or POTCAR.spec object.

                                                                              -run_vasp(run_dir: PathLike = '.', vasp_cmd: list | None = None, output_file: PathLike = 'vasp.out', err_file: PathLike = 'vasp.err') None[source]
                                                                              +run_vasp(run_dir: PathLike = '.', vasp_cmd: list | None = None, output_file: PathLike = 'vasp.out', err_file: PathLike = 'vasp.err') None[source]

                                                                              Write input files and run VASP.

                                                                              Parameters:
                                                                              @@ -2346,7 +2361,7 @@

                                                                              Submodules
                                                                              -write_input(output_dir: PathLike = '.', make_dir_if_not_present: bool = True, cif_name: str | None = None, zip_name: str | None = None, files_to_transfer: dict | None = None) None[source]
                                                                              +write_input(output_dir: PathLike = '.', make_dir_if_not_present: bool = True, cif_name: str | None = None, zip_name: str | None = None, files_to_transfer: dict | None = None) None[source]

                                                                              Write VASP inputs to a directory.

                                                                              Parameters:
                                                                              @@ -2379,7 +2394,7 @@

                                                                              Submodules
                                                                              -class DielectricFunctionCalculator(cder_real: NDArray, cder_imag: NDArray, eigs: NDArray, kweights: NDArray, nedos: int, deltae: float, ismear: int, sigma: float, efermi: float, cshift: float, ispin: int, volume: float)[source]
                                                                              +class DielectricFunctionCalculator(cder_real: NDArray, cder_imag: NDArray, eigs: NDArray, kweights: NDArray, nedos: int, deltae: float, ismear: int, sigma: float, efermi: float, cshift: float, ispin: int, volume: float)[source]

                                                                              Bases: MSONable

                                                                              Post-process VASP optical properties calculations.

                                                                              This objects helps load the different parameters from the vasprun.xml file but allows users to override @@ -2403,50 +2418,50 @@

                                                                              Submodules
                                                                              -property cder[source]
                                                                              +property cder[source]

                                                                              Complex CDER from WAVEDER.

                                                                              -cder_imag: NDArray[source]
                                                                              +cder_imag: NDArray[source]
                                                                              -cder_real: NDArray[source]
                                                                              +cder_real: NDArray[source]
                                                                              -cshift: float[source]
                                                                              +cshift: float[source]
                                                                              -deltae: float[source]
                                                                              +deltae: float[source]
                                                                              -efermi: float[source]
                                                                              +efermi: float[source]
                                                                              -eigs: NDArray[source]
                                                                              +eigs: NDArray[source]
                                                                              -classmethod from_directory(directory: PathLike) Self[source]
                                                                              +classmethod from_directory(directory: PathLike) Self[source]

                                                                              Construct a DielectricFunction from a directory containing vasprun.xml and WAVEDER files.

                                                                              -classmethod from_vasp_objects(vrun: Vasprun, waveder: Waveder) Self[source]
                                                                              +classmethod from_vasp_objects(vrun: Vasprun, waveder: Waveder) Self[source]

                                                                              Construct a DielectricFunction from Vasprun, Kpoint, and Waveder.

                                                                              Parameters:
                                                                              @@ -2461,7 +2476,7 @@

                                                                              Submodules
                                                                              -get_epsilon(idir: int, jdir: int, efermi: float | None = None, nedos: int | None = None, deltae: float | None = None, ismear: int | None = None, sigma: float | None = None, cshift: float | None = None, mask: NDArray | None = None) tuple[NDArray, NDArray][source]
                                                                              +get_epsilon(idir: int, jdir: int, efermi: float | None = None, nedos: int | None = None, deltae: float | None = None, ismear: int | None = None, sigma: float | None = None, cshift: float | None = None, mask: NDArray | None = None) tuple[NDArray, NDArray][source]

                                                                              Compute the frequency dependent dielectric function.

                                                                              Parameters:
                                                                              @@ -2482,27 +2497,27 @@

                                                                              Submodules
                                                                              -ismear: int[source]
                                                                              +ismear: int[source]

                                                                              -ispin: int[source]
                                                                              +ispin: int[source]
                                                                              -kweights: NDArray[source]
                                                                              +kweights: NDArray[source]
                                                                              -nedos: int[source]
                                                                              +nedos: int[source]
                                                                              -plot_weighted_transition_data(idir: int, jdir: int, mask: NDArray | None = None, min_val: float = 0.0)[source]
                                                                              +plot_weighted_transition_data(idir: int, jdir: int, mask: NDArray | None = None, min_val: float = 0.0)[source]

                                                                              Data for plotting the weight matrix elements as a scatter plot.

                                                                              Since the computation of the final spectrum (especially the smearing part) is still fairly expensive. This function can be used to check the values @@ -2524,25 +2539,25 @@

                                                                              Submodules
                                                                              -sigma: float[source]
                                                                              +sigma: float[source]

                                                                              -volume: float[source]
                                                                              +volume: float[source]

                                                                              -delta_func(x: NDArray, ismear: int) NDArray[source]
                                                                              +delta_func(x: NDArray, ismear: int) NDArray[source]

                                                                              Replication of VASP’s delta function.

                                                                              -delta_methfessel_paxton(x: NDArray, n: int) NDArray[source]
                                                                              +delta_methfessel_paxton(x: NDArray, n: int) NDArray[source]

                                                                              D_n (x) = exp -x^2 * sum_i=0^n A_i H_2i(x) where H is a Hermite polynomial and A_i = (-1)^i / ( i! 4^i sqrt(pi) ).

                                                                              @@ -2550,7 +2565,7 @@

                                                                              Submodules
                                                                              -epsilon_imag(cder: NDArray, eigs: NDArray, kweights: ArrayLike, efermi: float, nedos: int, deltae: float, ismear: int, sigma: float, idir: int, jdir: int, mask: NDArray | None = None) tuple[NDArray, NDArray][source]
                                                                              +epsilon_imag(cder: NDArray, eigs: NDArray, kweights: ArrayLike, efermi: float, nedos: int, deltae: float, ismear: int, sigma: float, idir: int, jdir: int, mask: NDArray | None = None) tuple[NDArray, NDArray][source]

                                                                              Replicate the EPSILON_IMAG function of VASP.

                                                                              Parameters:
                                                                              @@ -2579,7 +2594,7 @@

                                                                              Submodules
                                                                              -get_delta(x0: float, sigma: float, nx: int, dx: float, ismear: int = 3) NDArray[source]
                                                                              +get_delta(x0: float, sigma: float, nx: int, dx: float, ismear: int = 3) NDArray[source]

                                                                              Get the smeared delta function to be added to form the spectrum.

                                                                              This replaces the SLOT function from VASP. Uses finite differences instead of evaluating the delta function since the step function is more likely to have analytic form.

                                                                              @@ -2604,7 +2619,7 @@

                                                                              Submodules
                                                                              -get_step(x0: float, sigma: float, nx: int, dx: float, ismear: int) float[source]
                                                                              +get_step(x0: float, sigma: float, nx: int, dx: float, ismear: int) float[source]

                                                                              Get the smeared step function to be added to form the spectrum.

                                                                              This replaces the SLOT function from VASP.

                                                                              @@ -2628,7 +2643,7 @@

                                                                              Submodules
                                                                              -kramers_kronig(eps: NDArray, nedos: int, deltae: float, cshift: float = 0.1) NDArray[source]
                                                                              +kramers_kronig(eps: NDArray, nedos: int, deltae: float, cshift: float = 0.1) NDArray[source]

                                                                              Perform the Kramers-Kronig transformation.

                                                                              Perform the Kramers-Kronig transformation exactly as VASP does it. The input eps should be complex and the imaginary part of the dielectric function @@ -2655,13 +2670,13 @@

                                                                              Submodules
                                                                              -step_func(x: NDArray, ismear: int) NDArray[source]
                                                                              +step_func(x: NDArray, ismear: int) NDArray[source]

                                                                              Replication of VASP’s step function.

                                                                              -step_methfessel_paxton(x: NDArray, n: int) NDArray[source]
                                                                              +step_methfessel_paxton(x: NDArray, n: int) NDArray[source]

                                                                              S_n (x) = (1 + erf x)/2 - exp -x^2 * sum_i=1^n A_i H_{2i-1}(x) where H is a Hermite polynomial and A_i = (-1)^i / ( i! 4^i sqrt(pi) ).

                                                                              @@ -2673,7 +2688,7 @@

                                                                              Submodules
                                                                              -class BSVasprun(filename: PathLike, parse_projected_eigen: bool | str = False, parse_potcar_file: bool | str = False, occu_tol: float = 1e-08, separate_spins: bool = False)[source]
                                                                              +class BSVasprun(filename: PathLike, parse_projected_eigen: bool | str = False, parse_potcar_file: bool | str = False, occu_tol: float = 1e-08, separate_spins: bool = False)[source]

                                                                              Bases: Vasprun

                                                                              A highly optimized version of Vasprun that parses only eigenvalues for bandstructures. All other properties like structures, parameters, @@ -2704,7 +2719,7 @@

                                                                              Submodules
                                                                              -as_dict() dict[source]
                                                                              +as_dict() dict[source]

                                                                              JSON-serializable dict representation.

                                                                              @@ -2712,7 +2727,7 @@

                                                                              Submodules
                                                                              -class Chgcar(poscar: Poscar | Structure, data: dict[str, NDArray], data_aug: NDArray | None = None)[source]
                                                                              +class Chgcar(poscar: Poscar | Structure, data: dict[str, NDArray], data_aug: NDArray | None = None)[source]

                                                                              Bases: VolumetricData

                                                                              CHGCAR file reader.

                                                                              @@ -2726,7 +2741,7 @@

                                                                              Submodules
                                                                              -classmethod from_file(filename: str) Self[source]
                                                                              +classmethod from_file(filename: str) Self[source]

                                                                              Read a CHGCAR file.

                                                                              Parameters:
                                                                              @@ -2740,7 +2755,7 @@

                                                                              Submodules
                                                                              -property net_magnetization: float | None[source]
                                                                              +property net_magnetization: float | None[source]

                                                                              Net magnetic moment from Chgcar.

                                                                              @@ -2748,12 +2763,12 @@

                                                                              Submodules
                                                                              -class Dynmat(filename: PathLike)[source]
                                                                              +class Dynmat(filename: PathLike)[source]

                                                                              Bases: object

                                                                              DYNMAT file reader.

                                                                              -data[source]
                                                                              +data[source]

                                                                              A nested dict containing the DYNMAT data of the form: [atom <int>][disp <int>][‘dispvec’] =

                                                                              @@ -2778,7 +2793,7 @@

                                                                              Submodules
                                                                              -get_phonon_frequencies() list[source]
                                                                              +get_phonon_frequencies() list[source]

                                                                              Calculate phonon frequencies.

                                                                              WARNING: This method is most likely incorrect or suboptimal, hence for demonstration purposes only.

                                                                              @@ -2786,25 +2801,25 @@

                                                                              Submodules
                                                                              -property masses: list[float][source]
                                                                              +property masses: list[float][source]

                                                                              The list of atomic masses.

                                                                              -property natoms: int[source]
                                                                              +property natoms: int[source]

                                                                              The number of atoms.

                                                                              -property ndisps: int[source]
                                                                              +property ndisps: int[source]

                                                                              The number of displacements.

                                                                              -property nspecs: int[source]
                                                                              +property nspecs: int[source]

                                                                              The number of species.

                                                                              @@ -2812,12 +2827,12 @@

                                                                              Submodules
                                                                              -class Eigenval(filename: PathLike, occu_tol: float = 1e-08, separate_spins: bool = False)[source]
                                                                              +class Eigenval(filename: PathLike, occu_tol: float = 1e-08, separate_spins: bool = False)[source]

                                                                              Bases: object

                                                                              EIGENVAL file reader.

                                                                              -filename[source]
                                                                              +filename[source]

                                                                              The input file.

                                                                              Type:
                                                                              @@ -2828,7 +2843,7 @@

                                                                              Submodules
                                                                              -occu_tol[source]
                                                                              +occu_tol[source]

                                                                              Tolerance for determining occupation in band properties.

                                                                              Type:
                                                                              @@ -2839,7 +2854,7 @@

                                                                              Submodules
                                                                              -ispin[source]
                                                                              +ispin[source]

                                                                              Spin polarization tag.

                                                                              Type:
                                                                              @@ -2850,7 +2865,7 @@

                                                                              Submodules
                                                                              -nelect[source]
                                                                              +nelect[source]

                                                                              Number of electrons.

                                                                              Type:
                                                                              @@ -2861,7 +2876,7 @@

                                                                              Submodules
                                                                              -nkpt[source]
                                                                              +nkpt[source]

                                                                              Number of kpoints.

                                                                              Type:
                                                                              @@ -2872,7 +2887,7 @@

                                                                              Submodules
                                                                              -nbands[source]
                                                                              +nbands[source]

                                                                              Number of bands.

                                                                              Type:
                                                                              @@ -2883,7 +2898,7 @@

                                                                              Submodules
                                                                              -kpoints[source]
                                                                              +kpoints[source]

                                                                              List of kpoints.

                                                                              Type:
                                                                              @@ -2894,7 +2909,7 @@

                                                                              Submodules
                                                                              -kpoints_weights[source]
                                                                              +kpoints_weights[source]

                                                                              Weights of each kpoint in the BZ, should sum to 1.

                                                                              Type:
                                                                              @@ -2905,7 +2920,7 @@

                                                                              Submodules
                                                                              -eigenvalues[source]
                                                                              +eigenvalues[source]

                                                                              Eigenvalues as a dict of {(spin): np.ndarray(shape=(nkpt, nbands, 2))}. This representation is based on actual ordering in VASP and is meant as an intermediate representation to be converted into proper objects. The kpoint index is 0-based (unlike the 1-based indexing in VASP).

                                                                              @@ -2931,7 +2946,7 @@

                                                                              Submodules
                                                                              -property eigenvalue_band_properties: tuple[float, float, float, bool] | tuple[tuple[float, float], tuple[float, float], tuple[float, float], tuple[bool, bool]][source]
                                                                              +property eigenvalue_band_properties: tuple[float, float, float, bool] | tuple[tuple[float, float], tuple[float, float], tuple[float, float], tuple[bool, bool]][source]

                                                                              Band properties from the eigenvalues as a tuple of (band gap, cbm, vbm, is_band_gap_direct). In the case of separate_spins=True, @@ -2944,7 +2959,7 @@

                                                                              Submodules
                                                                              -class Elfcar(poscar: Poscar | Structure, data: dict[str, NDArray])[source]
                                                                              +class Elfcar(poscar: Poscar | Structure, data: dict[str, NDArray])[source]

                                                                              Bases: VolumetricData

                                                                              Read an ELFCAR file which contains the Electron Localization Function (ELF).

                                                                              For ELF, “total” key refers to Spin.up, and “diff” refers to Spin.down.

                                                                              @@ -2959,7 +2974,7 @@

                                                                              Submodules
                                                                              -classmethod from_file(filename: str) Self[source]
                                                                              +classmethod from_file(filename: str) Self[source]

                                                                              Read a ELFCAR file.

                                                                              Parameters:
                                                                              @@ -2973,7 +2988,7 @@

                                                                              Submodules
                                                                              -get_alpha() VolumetricData[source]
                                                                              +get_alpha() VolumetricData[source]

                                                                              Get the parameter alpha where ELF = 1/(1 + alpha^2).

                                                                              @@ -2981,69 +2996,69 @@

                                                                              Submodules
                                                                              -class KpointOptProps(tdos: Dos | None = None, idos: Dos | None = None, pdos: list | None = None, efermi: float | None = None, eigenvalues: dict | None = None, projected_eigenvalues: dict | None = None, projected_magnetisation: ndarray | None = None, kpoints: Kpoints | None = None, actual_kpoints: list | None = None, actual_kpoints_weights: list | None = None, dos_has_errors: bool | None = None)[source]
                                                                              +class KpointOptProps(tdos: Dos | None = None, idos: Dos | None = None, pdos: list | None = None, efermi: float | None = None, eigenvalues: dict | None = None, projected_eigenvalues: dict | None = None, projected_magnetisation: ndarray | None = None, kpoints: Kpoints | None = None, actual_kpoints: list | None = None, actual_kpoints_weights: list | None = None, dos_has_errors: bool | None = None)[source]

                                                                              Bases: object

                                                                              Simple container class to store KPOINTS_OPT data in a separate namespace. Used by Vasprun.

                                                                              -actual_kpoints: list | None = None[source]
                                                                              +actual_kpoints: list | None = None[source]
                                                                              -actual_kpoints_weights: list | None = None[source]
                                                                              +actual_kpoints_weights: list | None = None[source]
                                                                              -dos_has_errors: bool | None = None[source]
                                                                              +dos_has_errors: bool | None = None[source]
                                                                              -efermi: float | None = None[source]
                                                                              +efermi: float | None = None[source]
                                                                              -eigenvalues: dict | None = None[source]
                                                                              +eigenvalues: dict | None = None[source]
                                                                              -idos: Dos | None = None[source]
                                                                              +idos: Dos | None = None[source]
                                                                              -kpoints: Kpoints | None = None[source]
                                                                              +kpoints: Kpoints | None = None[source]
                                                                              -pdos: list | None = None[source]
                                                                              +pdos: list | None = None[source]
                                                                              -projected_eigenvalues: dict | None = None[source]
                                                                              +projected_eigenvalues: dict | None = None[source]
                                                                              -projected_magnetisation: ndarray | None = None[source]
                                                                              +projected_magnetisation: ndarray | None = None[source]
                                                                              -tdos: Dos | None = None[source]
                                                                              +tdos: Dos | None = None[source]

                                                                              -class Locpot(poscar: Poscar, data: ndarray, **kwargs)[source]
                                                                              +class Locpot(poscar: Poscar, data: ndarray, **kwargs)[source]

                                                                              Bases: VolumetricData

                                                                              LOCPOT file reader.

                                                                              @@ -3056,7 +3071,7 @@

                                                                              Submodules
                                                                              -classmethod from_file(filename: PathLike, **kwargs) Self[source]
                                                                              +classmethod from_file(filename: PathLike, **kwargs) Self[source]

                                                                              Read a LOCPOT file.

                                                                              Parameters:
                                                                              @@ -3072,7 +3087,7 @@

                                                                              Submodules
                                                                              -class Oszicar(filename: PathLike)[source]
                                                                              +class Oszicar(filename: PathLike)[source]

                                                                              Bases: object

                                                                              OSZICAR parser for VASP.

                                                                              In general, while OSZICAR is useful for a quick look at the @@ -3080,7 +3095,7 @@

                                                                              Submodules
                                                                              -electronic_steps[source]
                                                                              +electronic_steps[source]

                                                                              All electronic steps as a list of list of dict. e.g. [[{“rms”: 160.0, “E”: 4507.24605593, “dE”: 4507.2, “N”: 1, “deps”: -17777.0, “ncg”: 16576}, …], [….] where electronic_steps[index] refers the list of electronic steps in one ionic_step, @@ -3096,7 +3111,7 @@

                                                                              Submodules
                                                                              -ionic_steps[source]
                                                                              +ionic_steps[source]

                                                                              All ionic_steps as a list of dict, e.g. [{“dE”: -526.36, “E0”: -526.36024, “mag”: 0.0, “F”: -526.36024}, …] This is the typical output from VASP at the end of each ionic step. The stored dict might be different @@ -3115,7 +3130,7 @@

                                                                              Submodules
                                                                              -property all_energies: tuple[tuple[float | str, ...], ...][source]
                                                                              +property all_energies: tuple[tuple[float | str, ...], ...][source]

                                                                              Compilation of all energies from all electronic steps and ionic steps as a tuple of list of energies, e.g. ((4507.24605593, 143.824705755, -512.073149912, …), …).

                                                                              @@ -3123,20 +3138,20 @@

                                                                              Submodules
                                                                              -as_dict() dict[str, list][source]
                                                                              +as_dict() dict[str, list][source]

                                                                              MSONable dict.

                                                                              -property final_energy[source]
                                                                              +property final_energy[source]

                                                                              -class Outcar(filename: PathLike)[source]
                                                                              +class Outcar(filename: PathLike)[source]

                                                                              Bases: object

                                                                              Parser for data in OUTCAR that is not available in Vasprun.xml.

                                                                              Note, this class works a bit differently than most of the other @@ -3146,7 +3161,7 @@

                                                                              Submodules
                                                                              -magnetization[source]
                                                                              +magnetization[source]

                                                                              Magnetization on each ion as a tuple of dict, e.g. ({“d”: 0.0, “p”: 0.003, “s”: 0.002, “tot”: 0.005}, … )

                                                                              @@ -3158,7 +3173,7 @@

                                                                              Submodules
                                                                              -chemical_shielding[source]
                                                                              +chemical_shielding[source]

                                                                              Chemical shielding on each ion as a dictionary with core and valence contributions.

                                                                              Type:
                                                                              @@ -3169,7 +3184,7 @@

                                                                              Submodules
                                                                              -unsym_cs_tensor[source]
                                                                              +unsym_cs_tensor[source]

                                                                              Unsymmetrized chemical shielding tensor matrixes on each ion as a list. e.g. [[[sigma11, sigma12, sigma13], [sigma21, sigma22, sigma23], [sigma31, sigma32, sigma33]], …]

                                                                              @@ -3181,7 +3196,7 @@

                                                                              Submodules
                                                                              -cs_g0_contribution[source]
                                                                              +cs_g0_contribution[source]

                                                                              G=0 contribution to chemical shielding. 2D rank 3 matrix.

                                                                              Type:
                                                                              @@ -3192,7 +3207,7 @@

                                                                              Submodules
                                                                              -cs_core_contribution[source]
                                                                              +cs_core_contribution[source]

                                                                              Core contribution to chemical shielding. dict. e.g. {‘Mg’: -412.8, ‘C’: -200.5, ‘O’: -271.1}

                                                                              @@ -3204,7 +3219,7 @@

                                                                              Submodules
                                                                              -efg[source]
                                                                              +efg[source]

                                                                              Electric Field Gradient (EFG) tensor on each ion as a tuple of dict, e.g. ({“cq”: 0.1, “eta”, 0.2, “nuclear_quadrupole_moment”: 0.3}, {“cq”: 0.7, “eta”, 0.8, “nuclear_quadrupole_moment”: 0.9}, …)

                                                                              @@ -3217,7 +3232,7 @@

                                                                              Submodules
                                                                              -charge[source]
                                                                              +charge[source]

                                                                              Charge on each ion as a tuple of dict, e.g. ({“p”: 0.154, “s”: 0.078, “d”: 0.0, “tot”: 0.232}, …)

                                                                              @@ -3229,7 +3244,7 @@

                                                                              Submodules
                                                                              -is_stopped[source]
                                                                              +is_stopped[source]

                                                                              True if OUTCAR is from a stopped run (using STOPCAR, see VASP Manual).

                                                                              Type:
                                                                              @@ -3240,7 +3255,7 @@

                                                                              Submodules
                                                                              -run_stats[source]
                                                                              +run_stats[source]

                                                                              Various useful run stats as a dict including “System time (sec)”, “Total CPU time used (sec)”, “Elapsed time (sec)”, “Maximum memory used (kb)”, “Average memory used (kb)”, “User time (sec)”, “cores”.

                                                                              @@ -3252,7 +3267,7 @@

                                                                              Submodules
                                                                              -elastic_tensor[source]
                                                                              +elastic_tensor[source]

                                                                              Total elastic moduli (Kbar) is given in a 6x6 array matrix.

                                                                              Type:
                                                                              @@ -3263,7 +3278,7 @@

                                                                              Submodules
                                                                              -drift[source]
                                                                              +drift[source]

                                                                              Total drift for each step in eV/Atom.

                                                                              Type:
                                                                              @@ -3274,7 +3289,7 @@

                                                                              Submodules
                                                                              -ngf[source]
                                                                              +ngf[source]

                                                                              Dimensions for the Augmentation grid.

                                                                              Type:
                                                                              @@ -3285,7 +3300,7 @@

                                                                              Submodules
                                                                              -sampling_radii[source]
                                                                              +sampling_radii[source]

                                                                              Size of the sampling radii in VASP for the test charges for the electrostatic potential at each atom. Total array size is the number of elements present in the calculation.

                                                                              @@ -3297,7 +3312,7 @@

                                                                              Submodules
                                                                              -electrostatic_potential[source]
                                                                              +electrostatic_potential[source]

                                                                              Average electrostatic potential at each atomic position in order of the atoms in POSCAR.

                                                                              @@ -3309,7 +3324,7 @@

                                                                              Submodules
                                                                              -final_energy_contribs[source]
                                                                              +final_energy_contribs[source]

                                                                              Individual contributions to the total final energy as a dictionary. Include contributions from keys, e.g.: {‘DENC’: -505778.5184347, ‘EATOM’: 15561.06492564, ‘EBANDS’: -804.53201231, ‘EENTRO’: -0.08932659, @@ -3324,7 +3339,7 @@

                                                                              Submodules
                                                                              -efermi[source]
                                                                              +efermi[source]

                                                                              Fermi energy.

                                                                              Type:
                                                                              @@ -3335,7 +3350,7 @@

                                                                              Submodules
                                                                              -filename[source]
                                                                              +filename[source]

                                                                              Filename.

                                                                              Type:
                                                                              @@ -3346,7 +3361,7 @@

                                                                              Submodules
                                                                              -final_energy[source]
                                                                              +final_energy[source]

                                                                              Final energy after extrapolation of sigma back to 0, i.e. energy(sigma->0).

                                                                              Type:
                                                                              @@ -3357,7 +3372,7 @@

                                                                              Submodules
                                                                              -final_energy_wo_entrp[source]
                                                                              +final_energy_wo_entrp[source]

                                                                              Final energy before extrapolation of sigma, i.e. energy without entropy.

                                                                              Type:
                                                                              @@ -3368,7 +3383,7 @@

                                                                              Submodules
                                                                              -final_fr_energy[source]
                                                                              +final_fr_energy[source]

                                                                              Final “free energy”, i.e. free energy TOTEN.

                                                                              Type:
                                                                              @@ -3379,7 +3394,7 @@

                                                                              Submodules
                                                                              -has_onsite_density_matrices[source]
                                                                              +has_onsite_density_matrices[source]

                                                                              Whether onsite density matrices have been set.

                                                                              Type:
                                                                              @@ -3390,7 +3405,7 @@

                                                                              Submodules
                                                                              -lcalcpol[source]
                                                                              +lcalcpol[source]

                                                                              If LCALCPOL has been set.

                                                                              Type:
                                                                              @@ -3401,7 +3416,7 @@

                                                                              Submodules
                                                                              -lepsilon[source]
                                                                              +lepsilon[source]

                                                                              If LEPSILON has been set.

                                                                              Type:
                                                                              @@ -3412,7 +3427,7 @@

                                                                              Submodules
                                                                              -nelect[source]
                                                                              +nelect[source]

                                                                              Returns the number of electrons in the calculation.

                                                                              Type:
                                                                              @@ -3423,7 +3438,7 @@

                                                                              Submodules
                                                                              -spin[source]
                                                                              +spin[source]

                                                                              If spin-polarization was enabled via ISPIN.

                                                                              Type:
                                                                              @@ -3434,7 +3449,7 @@

                                                                              Submodules
                                                                              -total_mag[source]
                                                                              +total_mag[source]

                                                                              Total magnetization (in terms of the number of unpaired electrons).

                                                                              Type:
                                                                              @@ -3455,13 +3470,13 @@

                                                                              Submodules
                                                                              -as_dict() dict[source]
                                                                              +as_dict() dict[source]

                                                                              MSONable dict.

                                                                              -read_avg_core_poten() list[list][source]
                                                                              +read_avg_core_poten() list[list][source]

                                                                              Read the core potential at each ionic step.

                                                                              Returns:
                                                                              @@ -3476,7 +3491,7 @@

                                                                              Submodules
                                                                              -read_chemical_shielding() None[source]
                                                                              +read_chemical_shielding() None[source]

                                                                              Parse the NMR chemical shieldings data. Only the second part “absolute, valence and core” will be parsed. And only the three right most field (ISO_SHIELDING, SPAN, SKEW) will be retrieved.

                                                                              @@ -3487,7 +3502,7 @@

                                                                              Submodules
                                                                              -read_core_state_eigen() list[dict][source]
                                                                              +read_core_state_eigen() list[dict][source]

                                                                              Read the core state eigenenergies at each ionic step.

                                                                              Returns:
                                                                              @@ -3506,7 +3521,7 @@

                                                                              Submodules
                                                                              -read_corrections(reverse: bool = True, terminate_on_match: bool = True) None[source]
                                                                              +read_corrections(reverse: bool = True, terminate_on_match: bool = True) None[source]

                                                                              Read the dipol qudropol corrections into self.data[“dipol_quadrupol_correction”].

                                                                              @@ -3521,7 +3536,7 @@

                                                                              Submodules
                                                                              -read_cs_core_contribution() None[source]
                                                                              +read_cs_core_contribution() None[source]

                                                                              Parse the core contribution of NMR chemical shielding.

                                                                              Set self.data[“cs_core_contribution”] as:

                                                                              list[list]: G0 contribution matrix.

                                                                              @@ -3531,7 +3546,7 @@

                                                                              Submodules
                                                                              -read_cs_g0_contribution() None[source]
                                                                              +read_cs_g0_contribution() None[source]

                                                                              Parse the G0 contribution of NMR chemical shielding.

                                                                              Set self.data[“cs_g0_contribution”] as:

                                                                              list[list]: G0 contribution matrix.

                                                                              @@ -3541,7 +3556,7 @@

                                                                              Submodules
                                                                              -read_cs_raw_symmetrized_tensors() None[source]
                                                                              +read_cs_raw_symmetrized_tensors() None[source]

                                                                              Parse the matrix form of NMR tensor before corrected to table.

                                                                              Returns:
                                                                              @@ -3552,7 +3567,7 @@

                                                                              Submodules
                                                                              -read_elastic_tensor() None[source]
                                                                              +read_elastic_tensor() None[source]

                                                                              Parse the elastic tensor data.

                                                                              Set self.data[“elastic_tensor”] as:

                                                                              6x6 array corresponding to the elastic tensor from the OUTCAR.

                                                                              @@ -3562,13 +3577,13 @@

                                                                              Submodules
                                                                              -read_electrostatic_potential() None[source]
                                                                              +read_electrostatic_potential() None[source]

                                                                              Parse the eletrostatic potential for the last ionic step.

                                                                              -read_fermi_contact_shift() None[source]
                                                                              +read_fermi_contact_shift() None[source]

                                                                              Read Fermi contact (isotropic) hyperfine coupling parameter.

                                                                              Output example: Fermi contact (isotropic) hyperfine coupling parameter (MHz) @@ -3588,7 +3603,7 @@

                                                                              Submodules
                                                                              -read_freq_dielectric() None[source]
                                                                              +read_freq_dielectric() None[source]

                                                                              Parse the frequency dependent dielectric function (obtained with LOPTICS). Frequencies (in eV) are in self.frequencies, and dielectric tensor function is given as self.dielectric_tensor_function.

                                                                              @@ -3596,7 +3611,7 @@

                                                                              Submodules
                                                                              -read_igpar() None[source]
                                                                              +read_igpar() None[source]

                                                                              Read IGPAR.

                                                                              See VASP sections “LBERRY, IGPAR, NPPSTR, DIPOL” for info on what these are.

                                                                              @@ -3613,7 +3628,7 @@

                                                                              Submodules
                                                                              -read_internal_strain_tensor()[source]
                                                                              +read_internal_strain_tensor()[source]

                                                                              Read the internal strain tensor and populates self.internal_strain_tensor with an array of voigt notation tensors for each site.

                                                                              @@ -3621,28 +3636,28 @@

                                                                              Submodules
                                                                              -read_lcalcpol() None[source]
                                                                              +read_lcalcpol() None[source]

                                                                              Read the LCALCPOL.

                                                                              TODO: Document the actual variables.

                                                                              -read_lepsilon() None[source]
                                                                              +read_lepsilon() None[source]

                                                                              Read a LEPSILON run.

                                                                              TODO: Document the actual variables.

                                                                              -read_lepsilon_ionic() None[source]
                                                                              +read_lepsilon_ionic() None[source]

                                                                              Read the ionic component of a LEPSILON run.

                                                                              TODO: Document the actual variables.

                                                                              -read_neb(reverse: bool = True, terminate_on_match: bool = True) None[source]
                                                                              +read_neb(reverse: bool = True, terminate_on_match: bool = True) None[source]

                                                                              Read NEB data. This only works with OUTCARs from both normal VASP NEB calculations or from the CI NEB method implemented by Henkelman et al.

                                                                              @@ -3669,7 +3684,7 @@

                                                                              Submodules
                                                                              -read_nmr_efg() None[source]
                                                                              +read_nmr_efg() None[source]

                                                                              Parse the NMR Electric Field Gradient interpreted values.

                                                                              Set self.data[“efg”] as:

                                                                              Electric Field Gradient tensors as a list of dict in the order of atoms from OUTCAR. @@ -3680,7 +3695,7 @@

                                                                              Submodules
                                                                              -read_nmr_efg_tensor() list[NDArray][source]
                                                                              +read_nmr_efg_tensor() list[NDArray][source]

                                                                              Parses the NMR Electric Field Gradient Raw Tensors.

                                                                              Returns:
                                                                              @@ -3691,7 +3706,7 @@

                                                                              Submodules
                                                                              -read_onsite_density_matrices() None[source]
                                                                              +read_onsite_density_matrices() None[source]

                                                                              Parse the onsite density matrices.

                                                                              Set self.data[“onsite_density_matrices”] as:

                                                                              List with index corresponding to atom index in Structure.

                                                                              @@ -3701,7 +3716,7 @@

                                                                              Submodules
                                                                              -read_pattern(patterns: dict[str, str], reverse: bool = False, terminate_on_match: bool = False, postprocess: Callable = <class 'str'>) None[source]
                                                                              +read_pattern(patterns: dict[str, str], reverse: bool = False, terminate_on_match: bool = False, postprocess: Callable = <class 'str'>) None[source]

                                                                              General pattern reading. Use monty’s regrep method and take the same arguments.

                                                                              @@ -3731,19 +3746,19 @@

                                                                              Submodules
                                                                              -read_piezo_tensor() None[source]
                                                                              +read_piezo_tensor() None[source]

                                                                              Parse the piezo tensor data.

                                                                              -read_pseudo_zval() None[source]
                                                                              +read_pseudo_zval() None[source]

                                                                              Create a pseudopotential ZVAL dictionary.

                                                                              -read_table_pattern(header_pattern: str, row_pattern: str, footer_pattern: str, postprocess: Callable = <class 'str'>, attribute_name: str | None = None, last_one_only: bool = True, first_one_only: bool = False) list[source]
                                                                              +read_table_pattern(header_pattern: str, row_pattern: str, footer_pattern: str, postprocess: Callable = <class 'str'>, attribute_name: str | None = None, last_one_only: bool = True, first_one_only: bool = False) list[source]

                                                                              Parse table-like data. A table composes of three parts: header, main body, footer. All the data matches “row pattern” in the main body will be returned.

                                                                              @@ -3789,7 +3804,7 @@

                                                                              Submodules
                                                                              -class Procar(filename: PathLike | list[PathLike])[source]
                                                                              +class Procar(filename: PathLike | list[PathLike])[source]

                                                                              Bases: MSONable

                                                                              PROCAR file reader.

                                                                              Updated to use code from easyunfold (https://smtg-bham.github.io/easyunfold; band-structure @@ -3798,10 +3813,10 @@

                                                                              Submodules
                                                                              -data[source]
                                                                              +data[source]

                                                                              The PROCAR data of the form below. It should VASP uses 1-based indexing, but all indices are converted to 0-based here. -{ spin: nd.array accessed with (k-point index, band index, ion index, orbital index) }

                                                                              +{ spin: np.array accessed with (k-point index, band index, ion index, orbital index) }

                                                                              Type:

                                                                              dict

                                                                              @@ -3811,8 +3826,8 @@

                                                                              Submodules
                                                                              -weights[source]
                                                                              -

                                                                              The weights associated with each k-point as an nd.array of length nkpoints.

                                                                              +weights[source] +

                                                                              The weights associated with each k-point as an np.array of length nkpoints.

                                                                              Type:

                                                                              np.array

                                                                              @@ -3822,9 +3837,9 @@

                                                                              Submodules
                                                                              -phase_factors[source]
                                                                              +phase_factors[source]

                                                                              Phase factors, where present (e.g. LORBIT = 12). A dict of the form: -{ spin: complex nd.array accessed with (k-point index, band index, ion index, orbital index) }

                                                                              +{ spin: complex np.array accessed with (k-point index, band index, ion index, orbital index) }

                                                                              Type:

                                                                              dict

                                                                              @@ -3834,7 +3849,7 @@

                                                                              Submodules
                                                                              -nbands[source]
                                                                              +nbands[source]

                                                                              Number of bands.

                                                                              Type:
                                                                              @@ -3845,7 +3860,7 @@

                                                                              Submodules
                                                                              -nkpoints[source]
                                                                              +nkpoints[source]

                                                                              Number of k-points.

                                                                              Type:
                                                                              @@ -3856,7 +3871,7 @@

                                                                              Submodules
                                                                              -nions[source]
                                                                              +nions[source]

                                                                              Number of ions.

                                                                              Type:
                                                                              @@ -3867,7 +3882,7 @@

                                                                              Submodules
                                                                              -nspins[source]
                                                                              +nspins[source]

                                                                              Number of spins.

                                                                              Type:
                                                                              @@ -3878,7 +3893,7 @@

                                                                              Submodules
                                                                              -is_soc[source]
                                                                              +is_soc[source]

                                                                              Whether the PROCAR contains spin-orbit coupling (LSORBIT = True) data.

                                                                              Type:
                                                                              @@ -3889,8 +3904,8 @@

                                                                              Submodules
                                                                              -kpoints[source]
                                                                              -

                                                                              The k-points as an nd.array of shape (nkpoints, 3).

                                                                              +kpoints[source] +

                                                                              The k-points as an np.array of shape (nkpoints, 3).

                                                                              Type:

                                                                              np.array

                                                                              @@ -3900,9 +3915,9 @@

                                                                              Submodules
                                                                              -occupancies[source]
                                                                              +occupancies[source]

                                                                              The occupancies of the bands as a dict of the form: -{ spin: nd.array accessed with (k-point index, band index) }

                                                                              +{ spin: np.array accessed with (k-point index, band index) }

                                                                              Type:

                                                                              dict

                                                                              @@ -3912,9 +3927,9 @@

                                                                              Submodules
                                                                              -eigenvalues[source]
                                                                              +eigenvalues[source]

                                                                              The eigenvalues of the bands as a dict of the form: -{ spin: nd.array accessed with (k-point index, band index) }

                                                                              +{ spin: np.array accessed with (k-point index, band index) }

                                                                              Type:

                                                                              dict

                                                                              @@ -3924,10 +3939,10 @@

                                                                              Submodules
                                                                              -xyz_data[source]
                                                                              +xyz_data[source]

                                                                              The PROCAR projections data along the x,y and z magnetisation projection directions, with is_soc = True (see VASP wiki for more info). -{ ‘x’/’y’/’z’: nd.array accessed with (k-point index, band index, ion index, orbital index) }

                                                                              +{ ‘x’/’y’/’z’: np.array accessed with (k-point index, band index, ion index, orbital index) }

                                                                              Type:

                                                                              dict

                                                                              @@ -3942,7 +3957,7 @@

                                                                              Submodules
                                                                              -get_occupation(atom_index: int, orbital: str) dict[source]
                                                                              +get_occupation(atom_index: int, orbital: str) dict[source]

                                                                              Get the occupation for a particular orbital of a particular atom.

                                                                              Parameters:
                                                                              @@ -3966,7 +3981,7 @@

                                                                              Submodules
                                                                              -get_projection_on_elements(structure: Structure) dict[Spin, list[list[dict[str, float]]]][source]
                                                                              +get_projection_on_elements(structure: Structure) dict[Spin, list[list[dict[str, float]]]][source]

                                                                              Get a dict of projections on elements.

                                                                              Parameters:
                                                                              @@ -3983,7 +3998,7 @@

                                                                              Submodules
                                                                              -read(filenames: list[PathLike])[source]
                                                                              +read(filenames: list[PathLike])[source]

                                                                              Read in PROCAR projections data, possibly from multiple files.

                                                                              Parameters:
                                                                              @@ -3996,21 +4011,21 @@

                                                                              Submodules
                                                                              -exception UnconvergedVASPWarning[source]
                                                                              +exception UnconvergedVASPWarning[source]

                                                                              Bases: Warning

                                                                              Warning for unconverged VASP run.

                                                                              -exception VaspParseError[source]
                                                                              +exception VaspParseError[source]

                                                                              Bases: ParseError

                                                                              Exception class for VASP parsing.

                                                                              -class Vasprun(filename: PathLike, ionic_step_skip: int | None = None, ionic_step_offset: int = 0, parse_dos: bool = True, parse_eigen: bool = True, parse_projected_eigen: bool = False, parse_potcar_file: PathLike | bool = True, occu_tol: float = 1e-08, separate_spins: bool = False, exception_on_bad_xml: bool = True)[source]
                                                                              +class Vasprun(filename: PathLike, ionic_step_skip: int | None = None, ionic_step_offset: int = 0, parse_dos: bool = True, parse_eigen: bool = True, parse_projected_eigen: bool = False, parse_potcar_file: PathLike | bool = True, occu_tol: float = 1e-08, separate_spins: bool = False, exception_on_bad_xml: bool = True)[source]

                                                                              Bases: MSONable

                                                                              Vastly improved cElementTree-based parser for vasprun.xml files. Uses iterparse to support incremental parsing of large files. @@ -4019,7 +4034,7 @@

                                                                              Submodules
                                                                              -ionic_steps[source]
                                                                              +ionic_steps[source]

                                                                              All ionic steps in the run as a list of {“structure”: structure at end of run, “electronic_steps”: {All electronic step data in vasprun file}, “stresses”: stress matrix}.

                                                                              @@ -4031,7 +4046,7 @@

                                                                              Submodules
                                                                              -tdos[source]
                                                                              +tdos[source]

                                                                              Total dos calculated at the end of run. Note that this is rounded to 4 decimal places by VASP.

                                                                              @@ -4043,7 +4058,7 @@

                                                                              Submodules
                                                                              -idos[source]
                                                                              +idos[source]

                                                                              Integrated dos calculated at the end of run. Rounded to 4 decimal places by VASP.

                                                                              Type:
                                                                              @@ -4054,7 +4069,7 @@

                                                                              Submodules
                                                                              -pdos[source]
                                                                              +pdos[source]

                                                                              List of list of PDos objects. Access as pdos[atomindex][orbitalindex].

                                                                              Type:
                                                                              @@ -4065,7 +4080,7 @@

                                                                              Submodules
                                                                              -efermi[source]
                                                                              +efermi[source]

                                                                              Fermi energy.

                                                                              Type:
                                                                              @@ -4076,7 +4091,7 @@

                                                                              Submodules
                                                                              -eigenvalues[source]
                                                                              +eigenvalues[source]

                                                                              Final eigenvalues as a dict of {(spin, kpoint index):[[eigenvalue, occu]]}. The kpoint index is 0-based (unlike the 1-based indexing in VASP).

                                                                              @@ -4088,7 +4103,7 @@

                                                                              Submodules
                                                                              -projected_eigenvalues[source]
                                                                              +projected_eigenvalues[source]

                                                                              Final projected eigenvalues as a dict of {spin: nd-array}. To access a particular value, you need to do Vasprun.projected_eigenvalues[spin][kpoint index][band index][atom index][orbital_index]. @@ -4102,7 +4117,7 @@

                                                                              Submodules
                                                                              -projected_magnetisation[source]
                                                                              +projected_magnetisation[source]

                                                                              Final projected magnetization as a numpy array with the shape (nkpoints, nbands, natoms, norbitals, 3). Where the last axis is the contribution in the 3 Cartesian directions. This attribute is only set if spin-orbit coupling (LSORBIT = True) or @@ -4116,7 +4131,7 @@

                                                                              Submodules
                                                                              -dielectric_data[source]
                                                                              +dielectric_data[source]

                                                                              Dictionary, with the tag comment as key, containing other variants of the real and imaginary part of the dielectric constant (e.g., computed by RPA) in function of the energy (frequency). Optical properties (e.g. absorption coefficient) can be obtained through this. @@ -4133,7 +4148,7 @@

                                                                              Submodules
                                                                              -nionic_steps[source]
                                                                              +nionic_steps[source]

                                                                              The total number of ionic steps. This number is always equal to the total number of steps in the actual run even if ionic_step_skip is used.

                                                                              @@ -4145,7 +4160,7 @@

                                                                              Submodules
                                                                              -force_constants[source]
                                                                              +force_constants[source]

                                                                              Force constants computed in phonon DFPT run(IBRION = 8). The data is a 4D numpy array of shape (natoms, natoms, 3, 3).

                                                                              @@ -4157,7 +4172,7 @@

                                                                              Submodules
                                                                              -normalmode_eigenvals[source]
                                                                              +normalmode_eigenvals[source]

                                                                              Normal mode frequencies. 1D numpy array of size 3*natoms.

                                                                              Type:
                                                                              @@ -4168,7 +4183,7 @@

                                                                              Submodules
                                                                              -normalmode_eigenvecs[source]
                                                                              +normalmode_eigenvecs[source]

                                                                              Normal mode eigen vectors. 3D numpy array of shape (3*natoms, natoms, 3).

                                                                              Type:
                                                                              @@ -4179,7 +4194,7 @@

                                                                              Submodules
                                                                              -md_data[source]
                                                                              +md_data[source]

                                                                              Available only for ML MD runs, i.e., INCAR with ML_LMLFF = .TRUE. md_data is a list of dict with the following format: [{‘energy’: {‘e_0_energy’: -525.07195568, ‘e_fr_energy’: -525.07195568, ‘e_wo_entrp’: -525.07195568, ‘kinetic’: 3.17809233, ‘lattice kinetic’: 0.0, ‘nosekinetic’: 1.323e-5, @@ -4194,7 +4209,7 @@

                                                                              Submodules
                                                                              -incar[source]
                                                                              +incar[source]

                                                                              Incar object for parameters specified in INCAR file.

                                                                              Type:
                                                                              @@ -4205,7 +4220,7 @@

                                                                              Submodules
                                                                              -parameters[source]
                                                                              +parameters[source]

                                                                              Incar object with parameters that VASP actually used, including all defaults.

                                                                              Type:
                                                                              @@ -4216,7 +4231,7 @@

                                                                              Submodules
                                                                              -kpoints[source]
                                                                              +kpoints[source]

                                                                              Kpoints object for KPOINTS specified in run.

                                                                              Type:
                                                                              @@ -4227,7 +4242,7 @@

                                                                              Submodules
                                                                              -actual_kpoints[source]
                                                                              +actual_kpoints[source]

                                                                              List of actual kpoints, e.g. [[0.25, 0.125, 0.08333333], [-0.25, 0.125, 0.08333333], [0.25, 0.375, 0.08333333], ….].

                                                                              @@ -4239,7 +4254,7 @@

                                                                              Submodules
                                                                              -actual_kpoints_weights[source]
                                                                              +actual_kpoints_weights[source]

                                                                              List of kpoint weights, e.g. [0.04166667, 0.04166667, 0.04166667, 0.04166667, 0.04166667, ….].

                                                                              @@ -4251,7 +4266,7 @@

                                                                              Submodules
                                                                              -atomic_symbols[source]
                                                                              +atomic_symbols[source]

                                                                              List of atomic symbols, e.g. [“Li”, “Fe”, “Fe”, “P”, “P”, “P”].

                                                                              Type:
                                                                              @@ -4262,7 +4277,7 @@

                                                                              Submodules
                                                                              -potcar_symbols[source]
                                                                              +potcar_symbols[source]

                                                                              List of POTCAR symbols. e.g. [“PAW_PBE Li 17Jan2003”, “PAW_PBE Fe 06Sep2000”, ..].

                                                                              Type:
                                                                              @@ -4273,7 +4288,7 @@

                                                                              Submodules
                                                                              -kpoints_opt_props[source]
                                                                              +kpoints_opt_props[source]

                                                                              Object whose attributes are the data from KPOINTS_OPT (if present, else None). Attributes of the same name have the same format and meaning as Vasprun (or they are None if absent). Attributes are: tdos, idos, pdos, efermi, eigenvalues, projected_eigenvalues, @@ -4339,13 +4354,13 @@

                                                                              Submodules
                                                                              -as_dict() dict[source]
                                                                              +as_dict() dict[source]

                                                                              JSON-serializable dict representation.

                                                                              -calculate_efermi(tol: float = 0.001) float[source]
                                                                              +calculate_efermi(tol: float = 0.001) float[source]

                                                                              Calculate the Fermi level using a robust algorithm.

                                                                              Sometimes VASP can set the Fermi level inside a band due to issues in the way band occupancies are handled. @@ -4355,13 +4370,13 @@

                                                                              Submodules
                                                                              -property complete_dos: CompleteDos[source]
                                                                              +property complete_dos: CompleteDos[source]

                                                                              A CompleteDos object which incorporates the total DOS and all projected DOS.

                                                                              -property complete_dos_normalized: CompleteDos[source]
                                                                              +property complete_dos_normalized: CompleteDos[source]

                                                                              A CompleteDos object which incorporates the total DOS and all projected DOS. Normalized by the volume of the unit cell with units of states/eV/unit cell volume.

                                                                              @@ -4369,20 +4384,20 @@

                                                                              Submodules
                                                                              -property converged: bool[source]
                                                                              +property converged: bool[source]

                                                                              Whether a relaxation run has both ionically and electronically converged.

                                                                              -property converged_electronic: bool[source]
                                                                              +property converged_electronic: bool[source]

                                                                              Whether electronic step converged in the final ionic step.

                                                                              -property converged_ionic: bool[source]
                                                                              +property converged_ionic: bool[source]

                                                                              Whether ionic step convergence has been reached, i.e. VASP exited before reaching the max ionic steps for a relaxation run. In case IBRION=0 (MD) or EDIFFG=0, returns True if the max ionic @@ -4391,7 +4406,7 @@

                                                                              Submodules
                                                                              -property dielectric: tuple[list, list, list][source]
                                                                              +property dielectric: tuple[list, list, list][source]

                                                                              The real and imaginary part of the dielectric constant (e.g., computed by RPA) in function of the energy (frequency). Optical properties (e.g. absorption coefficient) can be obtained through this.

                                                                              @@ -4408,7 +4423,7 @@

                                                                              Submodules
                                                                              -property eigenvalue_band_properties: tuple[float, float, float, bool] | tuple[tuple[float, float], tuple[float, float], tuple[float, float], tuple[bool, bool]][source]
                                                                              +property eigenvalue_band_properties: tuple[float, float, float, bool] | tuple[tuple[float, float], tuple[float, float], tuple[float, float], tuple[bool, bool]][source]

                                                                              Band properties from the eigenvalues as a tuple, (band gap, cbm, vbm, is_band_gap_direct). In the case of separate_spins=True, the band gap, cbm, vbm, and is_band_gap_direct are each @@ -4418,33 +4433,33 @@

                                                                              Submodules
                                                                              -property epsilon_ionic: list[float][source]
                                                                              +property epsilon_ionic: list[float][source]

                                                                              The ionic part of the static dielectric constant. Present when it’s a DFPT run (LEPSILON=TRUE) and IBRION=5, 6, 7 or 8.

                                                                              -property epsilonassets: list[float][source]
                                                                              +property epsilonassets: list[float][source]

                                                                              The static part of the dielectric constant. Present only when it’s a DFPT run (LEPSILON=TRUE).

                                                                              -property epsilonassets_wolfe: list[float][source]
                                                                              +property epsilonassets_wolfe: list[float][source]

                                                                              The static part of the dielectric constant without any local field effects. Present only when it’s a DFPT run (LEPSILON=TRUE).

                                                                              -property final_energy[source]
                                                                              +property final_energy[source]
                                                                              -get_band_structure(kpoints_filename: str | None = None, efermi: float | Literal['smart'] | None = None, line_mode: bool = False, force_hybrid_mode: bool = False, ignore_kpoints_opt: bool = False) BandStructureSymmLine | BandStructure[source]
                                                                              +get_band_structure(kpoints_filename: str | None = None, efermi: float | Literal['smart'] | None = None, line_mode: bool = False, force_hybrid_mode: bool = False, ignore_kpoints_opt: bool = False) BandStructureSymmLine | BandStructure[source]

                                                                              Get the band structure.

                                                                              Parameters:
                                                                              @@ -4489,7 +4504,7 @@

                                                                              Submodules
                                                                              -get_computed_entry(inc_structure: bool = True, parameters: list[str] | None = None, data: dict | None = None, entry_id: str | None = None) ComputedStructureEntry | ComputedEntry[source]
                                                                              +get_computed_entry(inc_structure: bool = True, parameters: list[str] | None = None, data: dict | None = None, entry_id: str | None = None) ComputedStructureEntry | ComputedEntry[source]

                                                                              Get a ComputedEntry or ComputedStructureEntry from the Vasprun.

                                                                              Parameters:
                                                                              @@ -4514,7 +4529,7 @@

                                                                              Submodules
                                                                              -get_potcars(path: PathLike | bool) Potcar | None[source]
                                                                              +get_potcars(path: PathLike | bool) Potcar | None[source]

                                                                              Get the POTCAR from the specified path.

                                                                              Parameters:
                                                                              @@ -4532,7 +4547,7 @@

                                                                              Submodules
                                                                              -get_trajectory() Trajectory[source]
                                                                              +get_trajectory() Trajectory[source]

                                                                              Get a Trajectory, an alternative representation of self.structures as a single object. Forces are added as site properties.

                                                                              @@ -4544,32 +4559,32 @@

                                                                              Submodules
                                                                              -property hubbards: dict[str, float][source]
                                                                              +property hubbards: dict[str, float][source]

                                                                              Hubbard U values used for a GGA+U run, otherwise an empty dict.

                                                                              -property is_hubbard: bool[source]
                                                                              +property is_hubbard: bool[source]

                                                                              Whether is a DFT+U run.

                                                                              -property is_spin: bool[source]
                                                                              +property is_spin: bool[source]

                                                                              Whether is spin-polarized.

                                                                              -property md_n_steps: int[source]
                                                                              +property md_n_steps: int[source]

                                                                              Number of steps for MD runs.

                                                                              Count all the actual MD steps if ML enabled.

                                                                              -property optical_absorption_coeff: list[float] | None[source]
                                                                              +property optical_absorption_coeff: list[float] | None[source]

                                                                              The optical absorption coefficient from the dielectric constants. Note that this method is only implemented for optical properties calculated with GGA and BSE.

                                                                              @@ -4577,7 +4592,7 @@

                                                                              Submodules
                                                                              -property run_type: str[source]
                                                                              +property run_type: str[source]

                                                                              The run type. Currently detects GGA, metaGGA, HF, HSE, B3LYP, and hybrid functionals based on relevant INCAR tags. LDA is assigned if PAW POTCARs are used and no other functional is detected.

                                                                              @@ -4586,13 +4601,13 @@

                                                                              Submodules
                                                                              -property structures: list[Structure][source]
                                                                              +property structures: list[Structure][source]

                                                                              List of Structures for each ionic step.

                                                                              -update_charge_from_potcar(path: PathLike | bool) None[source]
                                                                              +update_charge_from_potcar(path: PathLike | bool) None[source]

                                                                              Update the charge of a structure based on the POTCARs found.

                                                                              Parameters:
                                                                              @@ -4603,7 +4618,7 @@

                                                                              Submodules
                                                                              -update_potcar_spec(path: PathLike | bool) None[source]
                                                                              +update_potcar_spec(path: PathLike | bool) None[source]

                                                                              Update the specs based on the POTCARs found.

                                                                              Parameters:
                                                                              @@ -4616,7 +4631,7 @@

                                                                              Submodules
                                                                              -class VolumetricData(structure: Structure, data: dict[str, ndarray], distance_matrix: ndarray | None = None, data_aug: ndarray | None = None)[source]
                                                                              +class VolumetricData(structure: Structure, data: dict[str, ndarray], distance_matrix: ndarray | None = None, data_aug: ndarray | None = None)[source]

                                                                              Bases: VolumetricData

                                                                              Container for volumetric data that allows for reading/writing with Poscar-type data.

                                                                              @@ -4638,7 +4653,7 @@

                                                                              Submodules
                                                                              -static parse_file(filename: PathLike) tuple[Poscar, dict, dict][source]
                                                                              +static parse_file(filename: PathLike) tuple[Poscar, dict, dict][source]

                                                                              Parse a generic volumetric data file in the VASP like format. Used by subclasses for parsing files.

                                                                              @@ -4656,7 +4671,7 @@

                                                                              Submodules
                                                                              -write_file(file_name: PathLike, vasp4_compatible: bool = False) None[source]
                                                                              +write_file(file_name: PathLike, vasp4_compatible: bool = False) None[source]

                                                                              Write the VolumetricData object to a VASP compatible file.

                                                                              Parameters:
                                                                              @@ -4672,7 +4687,7 @@

                                                                              Submodules
                                                                              -class WSWQ(nspin: int, nkpoints: int, nbands: int, me_real: ndarray, me_imag: ndarray)[source]
                                                                              +class WSWQ(nspin: int, nkpoints: int, nbands: int, me_real: ndarray, me_imag: ndarray)[source]

                                                                              Bases: MSONable

                                                                              Read a WSWQ file. The WSWQ file is used to calculation the wave function overlaps between:

                                                                              @@ -4698,7 +4713,7 @@

                                                                              Submodules
                                                                              -nspin[source]
                                                                              +nspin[source]

                                                                              Number of spin channels

                                                                              Type:
                                                                              @@ -4709,7 +4724,7 @@

                                                                              Submodules
                                                                              -nkpoints[source]
                                                                              +nkpoints[source]

                                                                              Number of k-points

                                                                              Type:
                                                                              @@ -4720,7 +4735,7 @@

                                                                              Submodules
                                                                              -nbands[source]
                                                                              +nbands[source]

                                                                              Number of bands

                                                                              Type:
                                                                              @@ -4731,7 +4746,7 @@

                                                                              Submodules
                                                                              -me_real[source]
                                                                              +me_real[source]

                                                                              Real part of the overlap matrix elements

                                                                              Type:
                                                                              @@ -4742,7 +4757,7 @@

                                                                              Submodules
                                                                              -me_imag[source]
                                                                              +me_imag[source]

                                                                              Imaginary part of the overlap matrix elements

                                                                              Type:
                                                                              @@ -4753,13 +4768,13 @@

                                                                              Submodules
                                                                              -property data: ndarray[source]
                                                                              +property data: ndarray[source]

                                                                              Complex overlap matrix.

                                                                              -classmethod from_file(filename: str) Self[source]
                                                                              +classmethod from_file(filename: str) Self[source]

                                                                              Construct a WSWQ object from a file.

                                                                              Parameters:
                                                                              @@ -4773,34 +4788,34 @@

                                                                              Submodules
                                                                              -me_imag: ndarray[source]
                                                                              +me_imag: ndarray[source]

                                                                              -me_real: ndarray[source]
                                                                              +me_real: ndarray[source]
                                                                              -nbands: int[source]
                                                                              +nbands: int[source]
                                                                              -nkpoints: int[source]
                                                                              +nkpoints: int[source]
                                                                              -nspin: int[source]
                                                                              +nspin: int[source]
                                                                              -class Wavecar(filename: PathLike = 'WAVECAR', verbose: bool = False, precision: Literal['normal', 'accurate'] = 'normal', vasp_type: Literal['std', 'gam', 'ncl'] | None = None)[source]
                                                                              +class Wavecar(filename: PathLike = 'WAVECAR', verbose: bool = False, precision: Literal['normal', 'accurate'] = 'normal', vasp_type: Literal['std', 'gam', 'ncl'] | None = None)[source]

                                                                              Bases: object

                                                                              Container for the (pseudo-) wavefunctions from VASP.

                                                                              Coefficients are read from the given WAVECAR file and the corresponding @@ -4816,7 +4831,7 @@

                                                                              Submoduleshttps://doi.org/10.1103/PhysRevMaterials.1.065001).

                                                                              -vasp_type[source]
                                                                              +vasp_type[source]

                                                                              String that determines VASP type the WAVECAR was generated with. One of ‘std’, ‘gam’, ‘ncl’.

                                                                              @@ -4828,7 +4843,7 @@

                                                                              Submodules
                                                                              -nk[source]
                                                                              +nk[source]

                                                                              Number of k-points from the WAVECAR.

                                                                              Type:
                                                                              @@ -4839,7 +4854,7 @@

                                                                              Submodules
                                                                              -nb[source]
                                                                              +nb[source]

                                                                              Number of bands per k-point.

                                                                              Type:
                                                                              @@ -4850,7 +4865,7 @@

                                                                              Submodules
                                                                              -encut[source]
                                                                              +encut[source]

                                                                              Energy cutoff (used to define G_{cut}).

                                                                              Type:
                                                                              @@ -4861,7 +4876,7 @@

                                                                              Submodules
                                                                              -efermi[source]
                                                                              +efermi[source]

                                                                              Fermi energy.

                                                                              Type:
                                                                              @@ -4872,7 +4887,7 @@

                                                                              Submodules
                                                                              -a[source]
                                                                              +a[source]

                                                                              Primitive lattice vectors of the cell (e.g. a_1 = self.a[0, :]).

                                                                              Type:
                                                                              @@ -4883,7 +4898,7 @@

                                                                              Submodules
                                                                              -b[source]
                                                                              +b[source]

                                                                              Reciprocal lattice vectors of the cell (e.g. b_1 = self.b[0, :]).

                                                                              Type:
                                                                              @@ -4894,7 +4909,7 @@

                                                                              Submodules
                                                                              -vol[source]
                                                                              +vol[source]

                                                                              The volume of the unit cell in real space.

                                                                              Type:
                                                                              @@ -4905,7 +4920,7 @@

                                                                              Submodules
                                                                              -kpoints[source]
                                                                              +kpoints[source]

                                                                              The list of k-points read from the WAVECAR file.

                                                                              Type:
                                                                              @@ -4916,7 +4931,7 @@

                                                                              Submodules
                                                                              -band_energy[source]
                                                                              +band_energy[source]

                                                                              The list of band eigenenergies (and corresponding occupancies) for each kpoint, where the first index corresponds to the index of the k-point (e.g. self.band_energy[kp]).

                                                                              @@ -4928,7 +4943,7 @@

                                                                              Submodules
                                                                              -Gpoints[source]
                                                                              +Gpoints[source]

                                                                              The list of generated G-points for each k-point (a double list), which are used with the coefficients for each k-point and band to recreate the wavefunction (e.g. self.Gpoints[kp] is the list of G-points for @@ -4946,7 +4961,7 @@

                                                                              Submodules
                                                                              -coeffs[source]
                                                                              +coeffs[source]

                                                                              The list of coefficients for each k-point and band for reconstructing the wavefunction. For non-spin-polarized, the first index corresponds to the kpoint and the second corresponds to the band (e.g. self.coeffs[kp][b] corresponds to k-point kp and band b). For spin-polarized calculations, @@ -4982,7 +4997,7 @@

                                                                              Submodules
                                                                              -evaluate_wavefunc(kpoint: int, band: int, r: ndarray, spin: int = 0, spinor: int = 0) complex64[source]
                                                                              +evaluate_wavefunc(kpoint: int, band: int, r: ndarray, spin: int = 0, spinor: int = 0) complex64[source]

                                                                              Evaluate the wavefunction for a given position, r.

                                                                              The wavefunction is given by the k-point and band. It is evaluated at the given position by summing over the components. Formally,

                                                                              @@ -5013,7 +5028,7 @@

                                                                              Submodules
                                                                              -fft_mesh(kpoint: int, band: int, spin: int = 0, spinor: int = 0, shift: bool = True) ndarray[source]
                                                                              +fft_mesh(kpoint: int, band: int, spin: int = 0, spinor: int = 0, shift: bool = True) ndarray[source]

                                                                              Place the coefficients of a wavefunction onto an fft mesh.

                                                                              Once the mesh has been obtained, a discrete fourier transform can be used to obtain real-space evaluation of the wavefunction. The output @@ -5042,7 +5057,7 @@

                                                                              Submodules
                                                                              -get_parchg(poscar: Poscar, kpoint: int, band: int, spin: int | None = None, spinor: int | None = None, phase: bool = False, scale: int = 2) Chgcar[source]
                                                                              +get_parchg(poscar: Poscar, kpoint: int, band: int, spin: int | None = None, spinor: int | None = None, phase: bool = False, scale: int = 2) Chgcar[source]

                                                                              Generate a Chgcar object, which is the charge density of the specified wavefunction.

                                                                              This function generates a Chgcar object with the charge density of the @@ -5084,7 +5099,7 @@

                                                                              Submodules
                                                                              -write_unks(directory: PathLike) None[source]
                                                                              +write_unks(directory: PathLike) None[source]

                                                                              Write the UNK files to the given directory.

                                                                              Write the cell-periodic part of the Bloch wavefunctions from the WAVECAR file to each of the UNK files. There will be one UNK file for @@ -5106,7 +5121,7 @@

                                                                              Submodules
                                                                              -class Waveder(cder_real: ndarray, cder_imag: ndarray)[source]
                                                                              +class Waveder(cder_real: ndarray, cder_imag: ndarray)[source]

                                                                              Bases: MSONable

                                                                              Representation of the WAVEDER file.

                                                                              The LOPTICS tag produces a WAVEDER file which contains the derivative of the orbitals with respect to k. @@ -5133,7 +5148,7 @@

                                                                              Submodules
                                                                              -cder_real[source]
                                                                              +cder_real[source]

                                                                              Real part of the derivative of the orbitals with respect to k.

                                                                              Type:
                                                                              @@ -5144,7 +5159,7 @@

                                                                              Submodules
                                                                              -cder_imag[source]
                                                                              +cder_imag[source]

                                                                              Imaginary part of the derivative of the orbitals with respect to k.

                                                                              Type:
                                                                              @@ -5156,23 +5171,23 @@

                                                                              Submodules
                                                                              -property cder: ndarray[source]
                                                                              +property cder: ndarray[source]

                                                                              The complex derivative of the orbitals with respect to k.

                                                                              -cder_imag: ndarray[source]
                                                                              +cder_imag: ndarray[source]
                                                                              -cder_real: ndarray[source]
                                                                              +cder_real: ndarray[source]
                                                                              -classmethod from_binary(filename: PathLike, data_type: Literal['complex64', 'float64', 'float32'] = 'complex64') Self[source]
                                                                              +classmethod from_binary(filename: PathLike, data_type: Literal['complex64', 'float64', 'float32'] = 'complex64') Self[source]

                                                                              Read the WAVEDER file.

                                                                              Parameters:
                                                                              @@ -5191,7 +5206,7 @@

                                                                              Submodules
                                                                              -classmethod from_formatted(filename: PathLike) Self[source]
                                                                              +classmethod from_formatted(filename: PathLike) Self[source]

                                                                              Read the WAVEDERF file.

                                                                              Note: This file is only produced when LOPTICS is true and VASP has been recompiled after uncommenting the line that calls @@ -5210,7 +5225,7 @@

                                                                              Submodules
                                                                              -get_orbital_derivative_between_states(band_i: int, band_j: int, kpoint: int, spin: Literal[0, 1], cart_dir: Literal[0, 1, 2]) float[source]
                                                                              +get_orbital_derivative_between_states(band_i: int, band_j: int, kpoint: int, spin: Literal[0, 1], cart_dir: Literal[0, 1, 2]) float[source]

                                                                              Get a float between bands band_i and band_j for k-point index, spin-channel and Cartesian direction.

                                                                              @@ -5231,19 +5246,19 @@

                                                                              Submodules
                                                                              -property nbands: int[source]
                                                                              +property nbands: int[source]

                                                                              The number of bands.

                                                                              -property nkpoints: int[source]
                                                                              +property nkpoints: int[source]

                                                                              The number of k-points.

                                                                              -property nspin: int[source]
                                                                              +property nspin: int[source]

                                                                              The number of spin channels.

                                                                              @@ -5251,12 +5266,12 @@

                                                                              Submodules
                                                                              -class Xdatcar(filename: PathLike, ionicstep_start: int = 1, ionicstep_end: int | None = None, comment: str | None = None)[source]
                                                                              +class Xdatcar(filename: PathLike, ionicstep_start: int = 1, ionicstep_end: int | None = None, comment: str | None = None)[source]

                                                                              Bases: object

                                                                              XDATCAR parser. Only tested with VASP 5.x files.

                                                                              -structures[source]
                                                                              +structures[source]

                                                                              List of structures parsed from XDATCAR.

                                                                              Type:
                                                                              @@ -5267,7 +5282,7 @@

                                                                              Submodules
                                                                              -comment[source]
                                                                              +comment[source]

                                                                              Optional comment string.

                                                                              Type:
                                                                              @@ -5290,7 +5305,7 @@

                                                                              Submodules
                                                                              -concatenate(filename: PathLike, ionicstep_start: int = 1, ionicstep_end: int | None = None) None[source]
                                                                              +concatenate(filename: PathLike, ionicstep_start: int = 1, ionicstep_end: int | None = None) None[source]

                                                                              Concatenate structures in file to Xdatcar.

                                                                              Parameters:
                                                                              @@ -5309,7 +5324,7 @@

                                                                              Submodules
                                                                              -get_str(ionicstep_start: int = 1, ionicstep_end: int | None = None, significant_figures: int = 8) str[source]
                                                                              +get_str(ionicstep_start: int = 1, ionicstep_end: int | None = None, significant_figures: int = 8) str[source]

                                                                              Write Xdatcar to a string.

                                                                              Parameters:
                                                                              @@ -5324,21 +5339,21 @@

                                                                              Submodules
                                                                              -property natoms: list[int][source]
                                                                              +property natoms: list[int][source]

                                                                              Sequence of number of sites of each type associated with the Poscar. Similar to 7th line in VASP 5+ Xdatcar.

                                                                              -property site_symbols: list[str][source]
                                                                              +property site_symbols: list[str][source]

                                                                              Sequence of symbols associated with the Xdatcar. Similar to 6th line in VASP 5+ Xdatcar.

                                                                              -write_file(filename: PathLike, **kwargs) None[source]
                                                                              +write_file(filename: PathLike, **kwargs) None[source]

                                                                              Write Xdatcar into a file.

                                                                              Parameters:
                                                                              @@ -5355,7 +5370,7 @@

                                                                              Submodules
                                                                              -get_adjusted_fermi_level(efermi: float, cbm: float, band_structure: BandStructureSymmLine, energy_step: float = 0.01) float[source]
                                                                              +get_adjusted_fermi_level(efermi: float, cbm: float, band_structure: BandStructureSymmLine, energy_step: float = 0.01) float[source]

                                                                              When running a band structure computation, the Fermi level needs to be taken from the static run that gave the charge density used for the non-self consistent band structure run. Sometimes this Fermi level is too low @@ -5387,7 +5402,7 @@

                                                                              Submodules
                                                                              -get_band_structure_from_vasp_multiple_branches(dir_name: str, efermi: float | None = None, projections: bool = False) BandStructureSymmLine | BandStructure | None[source]
                                                                              +get_band_structure_from_vasp_multiple_branches(dir_name: str, efermi: float | None = None, projections: bool = False) BandStructureSymmLine | BandStructure | None[source]

                                                                              Get band structure info from a VASP directory.

                                                                              It takes into account that a run can be divided in several branches named “branch_x”. If the run has not been divided in branches the method will @@ -5438,21 +5453,21 @@

                                                                              Submodules
                                                                              -exception BadInputSetWarning[source]
                                                                              +exception BadInputSetWarning[source]

                                                                              Bases: UserWarning

                                                                              Warning class for bad but legal VASP inputs.

                                                                              -class DictSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]
                                                                              +class DictSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              Alias for VaspInputSet.

                                                                              -class LobsterSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = 'PBE_54', force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = ('PBE_52', 'PBE_54', 'PBE_64'), isym: int = 0, ismear: int = -5, reciprocal_density: int | None = None, address_basis_file: str | None = None, user_supplied_basis: dict | None = None)[source]
                                                                              +class LobsterSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = 'PBE_54', force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = ('PBE_52', 'PBE_54', 'PBE_64'), isym: int = 0, ismear: int = -5, reciprocal_density: int | None = None, address_basis_file: str | None = None, user_supplied_basis: dict | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              Input set to prepare VASP runs that can be digested by Lobster (See cohp.de).

                                                                              @@ -5476,56 +5491,56 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -address_basis_file: str | None = None[source]
                                                                              +address_basis_file: str | None = None[source]
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -ismear: int = -5[source]
                                                                              +ismear: int = -5[source]
                                                                              -isym: int = 0[source]
                                                                              +isym: int = 0[source]
                                                                              -property kpoints_updates: dict[str, int][source]
                                                                              +property kpoints_updates: dict[str, int][source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              -reciprocal_density: int | None = None[source]
                                                                              +reciprocal_density: int | None = None[source]
                                                                              -user_potcar_functional: UserPotcarFunctional = 'PBE_54'[source]
                                                                              +user_potcar_functional: UserPotcarFunctional = 'PBE_54'[source]
                                                                              -user_supplied_basis: dict | None = None[source]
                                                                              +user_supplied_basis: dict | None = None[source]
                                                                              -class MITMDSet(structure: Structure | None = None, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, start_temp: float = 0.0, end_temp: float = 300.0, nsteps: int = 1000, time_step: float = 2, spin_polarized: bool = False)[source]
                                                                              +class MITMDSet(structure: Structure | None = None, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, start_temp: float = 0.0, end_temp: float = 300.0, nsteps: int = 1000, time_step: float = 2, spin_polarized: bool = False)[source]

                                                                              Bases: VaspInputSet

                                                                              Write a VASP MD run. This DOES NOT do multiple stage runs.

                                                                              @@ -5545,56 +5560,56 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF': 1e-05, 'ENCUT': 520, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'ISYM': 0, 'LDAU': True, 'LDAUJ': {'F': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'O': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'S': {'Fe': 0, 'Mn': 0}}, 'LDAUL': {'F': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'O': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'S': {'Fe': 2, 'Mn': 2.5}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'O': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'S': {'Fe': 1.9, 'Mn': 2.5}}, 'LORBIT': '11', 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 200, 'NELMIN': 6, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'length': 25}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': {'hash': 'd6854224d20e3de6e6fd7399503791d1', 'symbol': 'Ac'}, 'Ag': {'hash': 'e8ffa02fe3f3a51338ac1ac91ae968b9', 'symbol': 'Ag'}, 'Al': {'hash': 'a6fd9a46aec185f4ad2acd0cbe4ae2fa', 'symbol': 'Al'}, 'Ar': {'hash': 'e782fc6292623b396091bf8b871c272f', 'symbol': 'Ar'}, 'As': {'hash': '8005364db225a254e52cba350bedd032', 'symbol': 'As'}, 'Au': {'hash': 'a9182d436a13194b744640ac940ab9b0', 'symbol': 'Au'}, 'B': {'hash': '18ed2875dfa6305324cec3d7d59273ae', 'symbol': 'B'}, 'Ba': {'hash': 'c0477913afb63dfae3439f3534fbf0ed', 'symbol': 'Ba_sv'}, 'Be': {'hash': 'fb974e44d56a8c62c6bbd1a1eb70c3a7', 'symbol': 'Be'}, 'Bi': {'hash': 'e29661c79d59abae3b3ba69eae24b1a5', 'symbol': 'Bi'}, 'Br': {'hash': '40f9594b4506684a69158c8975cfb9d6', 'symbol': 'Br'}, 'C': {'hash': 'c0a8167dbb174fe492a3db7f5006c0f8', 'symbol': 'C'}, 'Ca': {'hash': 'eb006721e214c04b3c13146e81b3a27d', 'symbol': 'Ca_sv'}, 'Cd': {'hash': '0506b2d0ac28d5fe2b5ced77a701aa86', 'symbol': 'Cd'}, 'Ce': {'hash': 'ff3a09f2ff91798e58eb4b9854e9be4a', 'symbol': 'Ce'}, 'Cl': {'hash': '779b9901046c78fe51c5d80224642aeb', 'symbol': 'Cl'}, 'Co': {'hash': 'b169bca4e137294d2ab3df8cbdd09083', 'symbol': 'Co'}, 'Cr': {'hash': '82c14307937c7509fda4e9bc023d243d', 'symbol': 'Cr'}, 'Cs': {'hash': '096b53a7d80cc0086976bcda50d536e5', 'symbol': 'Cs_sv'}, 'Cu': {'hash': '8ca4e43a30de0c397e51f16bbb20d678', 'symbol': 'Cu'}, 'Dy': {'hash': 'd4a05220ab0a2d4c03a76872ea724a1e', 'symbol': 'Dy_3'}, 'Er': {'hash': 'daa65a04877317f8c3c593ddeaa8a132', 'symbol': 'Er_3'}, 'Eu': {'hash': 'd466d046adf21f6146ee9644049ea268', 'symbol': 'Eu'}, 'F': {'hash': '180141c33d032bfbfff30b3bea9d23dd', 'symbol': 'F'}, 'Fe': {'hash': '9530da8244e4dac17580869b4adab115', 'symbol': 'Fe'}, 'Ga': {'hash': '6e0b9d58412b1bfcd7252aff13d476c2', 'symbol': 'Ga'}, 'Gd': {'hash': '1f0d42b1e5f6769d319d3f247992aeb9', 'symbol': 'Gd'}, 'Ge': {'hash': '79e788788c31e196a460553010512d3f', 'symbol': 'Ge'}, 'H': {'hash': 'bb43c666e3d36577264afe07669e9582', 'symbol': 'H'}, 'He': {'hash': '47f9434aa3db96c85d7c4b3e4c2df09b', 'symbol': 'He'}, 'Hf': {'hash': 'b113f150cbf9c736f8244a6c25b0482e', 'symbol': 'Hf'}, 'Hg': {'hash': 'c2f15dfb5fd53396c5427635e5019160', 'symbol': 'Hg'}, 'Ho': {'hash': '661891464a27e87cf7e1324dd1893b77', 'symbol': 'Ho_3'}, 'I': {'hash': 'f4ff16a495dd361ff5824ee61b418bb0', 'symbol': 'I'}, 'In': {'hash': '7df38c0cdb4e6d9a9b93f09d690bb3ae', 'symbol': 'In'}, 'Ir': {'hash': 'dbcf7dcc6f4fb40df7b3d26904f60a66', 'symbol': 'Ir'}, 'K': {'hash': '3e84f86d37f203a4fb01de36af57e430', 'symbol': 'K_sv'}, 'Kr': {'hash': '39b9b85ae3982e6c012fb549b2840ce5', 'symbol': 'Kr'}, 'La': {'hash': '9b3ce03d18f7c0b40471a817ff91b287', 'symbol': 'La'}, 'Li': {'hash': '65e83282d1707ec078c1012afbd05be8', 'symbol': 'Li'}, 'Lu': {'hash': 'd40a90babf1224b88ffb4c3273ac3848', 'symbol': 'Lu_3'}, 'Mg': {'hash': '1771eb72adbbfa6310d66e7517e49930', 'symbol': 'Mg'}, 'Mn': {'hash': 'd082dba29b57ab59b3165e605dbf71b8', 'symbol': 'Mn'}, 'Mo': {'hash': '84e18fd84a98e3d7fa8f055952410df0', 'symbol': 'Mo_pv'}, 'N': {'hash': 'b98fd027ddebc67da4063ff2cabbc04b', 'symbol': 'N'}, 'Na': {'hash': '1a89e79f7e21d99e8cf5788979f6a987', 'symbol': 'Na'}, 'Nb': {'hash': '7bcee99a4dc3094be0f9fd7961c02966', 'symbol': 'Nb_pv'}, 'Nd': {'hash': '0c64e63070cee837c967283fffa001df', 'symbol': 'Nd'}, 'Ne': {'hash': '52064eee378b9e37a295a674f1c278f0', 'symbol': 'Ne'}, 'Ni': {'hash': '653f5772e68b2c7fd87ffd1086c0d710', 'symbol': 'Ni'}, 'Np': {'hash': '20cb30b714200c4db870550b288ac4cd', 'symbol': 'Np'}, 'O': {'hash': '7a25bc5b9a5393f46600a4939d357982', 'symbol': 'O'}, 'Os': {'hash': '35c2cb48d48a9c38c40fb82bbe70626d', 'symbol': 'Os'}, 'P': {'hash': '7dc3393307131ae67785a0cdacb61d5f', 'symbol': 'P'}, 'Pa': {'hash': 'a1fdb1089d0727f415416ec8082246ba', 'symbol': 'Pa'}, 'Pb': {'hash': '704c2c967247d7f84090d2536c91877d', 'symbol': 'Pb'}, 'Pd': {'hash': 'a395eb3aaf2fcab12fac3030a1146f61', 'symbol': 'Pd'}, 'Pm': {'hash': 'a2c9485ea86b2a7cf175077e6e5c7b3e', 'symbol': 'Pm'}, 'Pr': {'hash': '92f191499bf5346ea652bb806350ad87', 'symbol': 'Pr'}, 'Pt': {'hash': 'a604ea3c6a9cc23c739b762f625cf449', 'symbol': 'Pt'}, 'Pu': {'hash': 'f1d01e845dccc52d448679911f301a73', 'symbol': 'Pu'}, 'Rb': {'hash': 'e447c648d870b066b3514e6b800727ab', 'symbol': 'Rb_pv'}, 'Re': {'hash': '72385e193c92a8acfe17ea49004c2be1', 'symbol': 'Re'}, 'Rh': {'hash': '2c3dba3fcc6058ca1b1cfa75e45084bc', 'symbol': 'Rh'}, 'Ru': {'hash': '7925f4d4b68076d70af7cd86eef9ba8d', 'symbol': 'Ru_pv'}, 'S': {'hash': 'd368db6899d8839859bbee4811a42a88', 'symbol': 'S'}, 'Sb': {'hash': 'd82c022b02fc5344e85bd1909f9ee3e7', 'symbol': 'Sb'}, 'Sc': {'hash': 'dc386f505ad0c43385a7715b4111cb75', 'symbol': 'Sc_sv'}, 'Se': {'hash': '67a8804ede9f1112726e3d136978ef19', 'symbol': 'Se'}, 'Si': {'hash': 'b2b0ea6feb62e7cde209616683b8f7f5', 'symbol': 'Si'}, 'Sm': {'hash': 'e5e274e7cd99602ca81d146155abdf88', 'symbol': 'Sm_3'}, 'Sn': {'hash': '849b0795e148f93113a06be8fd5f5001', 'symbol': 'Sn_d'}, 'Sr': {'hash': 'ca6a5429c120a0ab705824386a76fe5b', 'symbol': 'Sr_sv'}, 'Ta': {'hash': 'd4e2cfe9338ef80da592d5bb9dc782c7', 'symbol': 'Ta'}, 'Tb': {'hash': '0790955c547003956c0fd4f080f7f508', 'symbol': 'Tb_3'}, 'Tc': {'hash': '9592642886319309a39d55c5717c6f48', 'symbol': 'Tc'}, 'Te': {'hash': '72719856e22fb1d3032df6f96d98a0f2', 'symbol': 'Te'}, 'Th': {'hash': 'aea79f322180fa6f0bfa74cb2a156dcf', 'symbol': 'Th'}, 'Ti': {'hash': 'c617e8b539c3f44a0ab6e8da2a92d318', 'symbol': 'Ti'}, 'Tl': {'hash': '2aa0d5406aaab7ebfbc761da382f1352', 'symbol': 'Tl'}, 'Tm': {'hash': '94a07cb7949b01305cb161da0cbfb492', 'symbol': 'Tm_3'}, 'U': {'hash': '72702eabbb1bc02b4167590dc848ed5d', 'symbol': 'U'}, 'V': {'hash': '7f1297a2e1d963e2a4d81b61f85e4ded', 'symbol': 'V_pv'}, 'W': {'hash': '2a33e0d5c700640535f60ac0a12177ab', 'symbol': 'W_pv'}, 'Xe': {'hash': '338472e581f58b41d37c002a5e22353b', 'symbol': 'Xe'}, 'Y': {'hash': '4ed187e77cd54f198bb88020278b143d', 'symbol': 'Y_sv'}, 'Yb': {'hash': '9f472bd422f640710f7d93e2d9ce89f4', 'symbol': 'Yb'}, 'Zn': {'hash': 'e35ee27f8483a63bb68dbc236a343af3', 'symbol': 'Zn'}, 'Zr': {'hash': 'd221d2c0bac4f8e81af2f5c42a314274', 'symbol': 'Zr'}}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF': 1e-05, 'ENCUT': 520, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'ISYM': 0, 'LDAU': True, 'LDAUJ': {'F': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'O': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'S': {'Fe': 0, 'Mn': 0}}, 'LDAUL': {'F': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'O': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'S': {'Fe': 2, 'Mn': 2.5}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'O': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'S': {'Fe': 1.9, 'Mn': 2.5}}, 'LORBIT': '11', 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 200, 'NELMIN': 6, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'length': 25}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': {'hash': 'd6854224d20e3de6e6fd7399503791d1', 'symbol': 'Ac'}, 'Ag': {'hash': 'e8ffa02fe3f3a51338ac1ac91ae968b9', 'symbol': 'Ag'}, 'Al': {'hash': 'a6fd9a46aec185f4ad2acd0cbe4ae2fa', 'symbol': 'Al'}, 'Ar': {'hash': 'e782fc6292623b396091bf8b871c272f', 'symbol': 'Ar'}, 'As': {'hash': '8005364db225a254e52cba350bedd032', 'symbol': 'As'}, 'Au': {'hash': 'a9182d436a13194b744640ac940ab9b0', 'symbol': 'Au'}, 'B': {'hash': '18ed2875dfa6305324cec3d7d59273ae', 'symbol': 'B'}, 'Ba': {'hash': 'c0477913afb63dfae3439f3534fbf0ed', 'symbol': 'Ba_sv'}, 'Be': {'hash': 'fb974e44d56a8c62c6bbd1a1eb70c3a7', 'symbol': 'Be'}, 'Bi': {'hash': 'e29661c79d59abae3b3ba69eae24b1a5', 'symbol': 'Bi'}, 'Br': {'hash': '40f9594b4506684a69158c8975cfb9d6', 'symbol': 'Br'}, 'C': {'hash': 'c0a8167dbb174fe492a3db7f5006c0f8', 'symbol': 'C'}, 'Ca': {'hash': 'eb006721e214c04b3c13146e81b3a27d', 'symbol': 'Ca_sv'}, 'Cd': {'hash': '0506b2d0ac28d5fe2b5ced77a701aa86', 'symbol': 'Cd'}, 'Ce': {'hash': 'ff3a09f2ff91798e58eb4b9854e9be4a', 'symbol': 'Ce'}, 'Cl': {'hash': '779b9901046c78fe51c5d80224642aeb', 'symbol': 'Cl'}, 'Co': {'hash': 'b169bca4e137294d2ab3df8cbdd09083', 'symbol': 'Co'}, 'Cr': {'hash': '82c14307937c7509fda4e9bc023d243d', 'symbol': 'Cr'}, 'Cs': {'hash': '096b53a7d80cc0086976bcda50d536e5', 'symbol': 'Cs_sv'}, 'Cu': {'hash': '8ca4e43a30de0c397e51f16bbb20d678', 'symbol': 'Cu'}, 'Dy': {'hash': 'd4a05220ab0a2d4c03a76872ea724a1e', 'symbol': 'Dy_3'}, 'Er': {'hash': 'daa65a04877317f8c3c593ddeaa8a132', 'symbol': 'Er_3'}, 'Eu': {'hash': 'd466d046adf21f6146ee9644049ea268', 'symbol': 'Eu'}, 'F': {'hash': '180141c33d032bfbfff30b3bea9d23dd', 'symbol': 'F'}, 'Fe': {'hash': '9530da8244e4dac17580869b4adab115', 'symbol': 'Fe'}, 'Ga': {'hash': '6e0b9d58412b1bfcd7252aff13d476c2', 'symbol': 'Ga'}, 'Gd': {'hash': '1f0d42b1e5f6769d319d3f247992aeb9', 'symbol': 'Gd'}, 'Ge': {'hash': '79e788788c31e196a460553010512d3f', 'symbol': 'Ge'}, 'H': {'hash': 'bb43c666e3d36577264afe07669e9582', 'symbol': 'H'}, 'He': {'hash': '47f9434aa3db96c85d7c4b3e4c2df09b', 'symbol': 'He'}, 'Hf': {'hash': 'b113f150cbf9c736f8244a6c25b0482e', 'symbol': 'Hf'}, 'Hg': {'hash': 'c2f15dfb5fd53396c5427635e5019160', 'symbol': 'Hg'}, 'Ho': {'hash': '661891464a27e87cf7e1324dd1893b77', 'symbol': 'Ho_3'}, 'I': {'hash': 'f4ff16a495dd361ff5824ee61b418bb0', 'symbol': 'I'}, 'In': {'hash': '7df38c0cdb4e6d9a9b93f09d690bb3ae', 'symbol': 'In'}, 'Ir': {'hash': 'dbcf7dcc6f4fb40df7b3d26904f60a66', 'symbol': 'Ir'}, 'K': {'hash': '3e84f86d37f203a4fb01de36af57e430', 'symbol': 'K_sv'}, 'Kr': {'hash': '39b9b85ae3982e6c012fb549b2840ce5', 'symbol': 'Kr'}, 'La': {'hash': '9b3ce03d18f7c0b40471a817ff91b287', 'symbol': 'La'}, 'Li': {'hash': '65e83282d1707ec078c1012afbd05be8', 'symbol': 'Li'}, 'Lu': {'hash': 'd40a90babf1224b88ffb4c3273ac3848', 'symbol': 'Lu_3'}, 'Mg': {'hash': '1771eb72adbbfa6310d66e7517e49930', 'symbol': 'Mg'}, 'Mn': {'hash': 'd082dba29b57ab59b3165e605dbf71b8', 'symbol': 'Mn'}, 'Mo': {'hash': '84e18fd84a98e3d7fa8f055952410df0', 'symbol': 'Mo_pv'}, 'N': {'hash': 'b98fd027ddebc67da4063ff2cabbc04b', 'symbol': 'N'}, 'Na': {'hash': '1a89e79f7e21d99e8cf5788979f6a987', 'symbol': 'Na'}, 'Nb': {'hash': '7bcee99a4dc3094be0f9fd7961c02966', 'symbol': 'Nb_pv'}, 'Nd': {'hash': '0c64e63070cee837c967283fffa001df', 'symbol': 'Nd'}, 'Ne': {'hash': '52064eee378b9e37a295a674f1c278f0', 'symbol': 'Ne'}, 'Ni': {'hash': '653f5772e68b2c7fd87ffd1086c0d710', 'symbol': 'Ni'}, 'Np': {'hash': '20cb30b714200c4db870550b288ac4cd', 'symbol': 'Np'}, 'O': {'hash': '7a25bc5b9a5393f46600a4939d357982', 'symbol': 'O'}, 'Os': {'hash': '35c2cb48d48a9c38c40fb82bbe70626d', 'symbol': 'Os'}, 'P': {'hash': '7dc3393307131ae67785a0cdacb61d5f', 'symbol': 'P'}, 'Pa': {'hash': 'a1fdb1089d0727f415416ec8082246ba', 'symbol': 'Pa'}, 'Pb': {'hash': '704c2c967247d7f84090d2536c91877d', 'symbol': 'Pb'}, 'Pd': {'hash': 'a395eb3aaf2fcab12fac3030a1146f61', 'symbol': 'Pd'}, 'Pm': {'hash': 'a2c9485ea86b2a7cf175077e6e5c7b3e', 'symbol': 'Pm'}, 'Pr': {'hash': '92f191499bf5346ea652bb806350ad87', 'symbol': 'Pr'}, 'Pt': {'hash': 'a604ea3c6a9cc23c739b762f625cf449', 'symbol': 'Pt'}, 'Pu': {'hash': 'f1d01e845dccc52d448679911f301a73', 'symbol': 'Pu'}, 'Rb': {'hash': 'e447c648d870b066b3514e6b800727ab', 'symbol': 'Rb_pv'}, 'Re': {'hash': '72385e193c92a8acfe17ea49004c2be1', 'symbol': 'Re'}, 'Rh': {'hash': '2c3dba3fcc6058ca1b1cfa75e45084bc', 'symbol': 'Rh'}, 'Ru': {'hash': '7925f4d4b68076d70af7cd86eef9ba8d', 'symbol': 'Ru_pv'}, 'S': {'hash': 'd368db6899d8839859bbee4811a42a88', 'symbol': 'S'}, 'Sb': {'hash': 'd82c022b02fc5344e85bd1909f9ee3e7', 'symbol': 'Sb'}, 'Sc': {'hash': 'dc386f505ad0c43385a7715b4111cb75', 'symbol': 'Sc_sv'}, 'Se': {'hash': '67a8804ede9f1112726e3d136978ef19', 'symbol': 'Se'}, 'Si': {'hash': 'b2b0ea6feb62e7cde209616683b8f7f5', 'symbol': 'Si'}, 'Sm': {'hash': 'e5e274e7cd99602ca81d146155abdf88', 'symbol': 'Sm_3'}, 'Sn': {'hash': '849b0795e148f93113a06be8fd5f5001', 'symbol': 'Sn_d'}, 'Sr': {'hash': 'ca6a5429c120a0ab705824386a76fe5b', 'symbol': 'Sr_sv'}, 'Ta': {'hash': 'd4e2cfe9338ef80da592d5bb9dc782c7', 'symbol': 'Ta'}, 'Tb': {'hash': '0790955c547003956c0fd4f080f7f508', 'symbol': 'Tb_3'}, 'Tc': {'hash': '9592642886319309a39d55c5717c6f48', 'symbol': 'Tc'}, 'Te': {'hash': '72719856e22fb1d3032df6f96d98a0f2', 'symbol': 'Te'}, 'Th': {'hash': 'aea79f322180fa6f0bfa74cb2a156dcf', 'symbol': 'Th'}, 'Ti': {'hash': 'c617e8b539c3f44a0ab6e8da2a92d318', 'symbol': 'Ti'}, 'Tl': {'hash': '2aa0d5406aaab7ebfbc761da382f1352', 'symbol': 'Tl'}, 'Tm': {'hash': '94a07cb7949b01305cb161da0cbfb492', 'symbol': 'Tm_3'}, 'U': {'hash': '72702eabbb1bc02b4167590dc848ed5d', 'symbol': 'U'}, 'V': {'hash': '7f1297a2e1d963e2a4d81b61f85e4ded', 'symbol': 'V_pv'}, 'W': {'hash': '2a33e0d5c700640535f60ac0a12177ab', 'symbol': 'W_pv'}, 'Xe': {'hash': '338472e581f58b41d37c002a5e22353b', 'symbol': 'Xe'}, 'Y': {'hash': '4ed187e77cd54f198bb88020278b143d', 'symbol': 'Y_sv'}, 'Yb': {'hash': '9f472bd422f640710f7d93e2d9ce89f4', 'symbol': 'Yb'}, 'Zn': {'hash': 'e35ee27f8483a63bb68dbc236a343af3', 'symbol': 'Zn'}, 'Zr': {'hash': 'd221d2c0bac4f8e81af2f5c42a314274', 'symbol': 'Zr'}}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -end_temp: float = 300.0[source]
                                                                              +end_temp: float = 300.0[source]
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -property kpoints_updates: Kpoints[source]
                                                                              +property kpoints_updates: Kpoints[source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              -nsteps: int = 1000[source]
                                                                              +nsteps: int = 1000[source]
                                                                              -spin_polarized: bool = False[source]
                                                                              +spin_polarized: bool = False[source]
                                                                              -start_temp: float = 0.0[source]
                                                                              +start_temp: float = 0.0[source]
                                                                              -structure: Structure | None = None[source]
                                                                              +structure: Structure | None = None[source]
                                                                              -time_step: float = 2[source]
                                                                              +time_step: float = 2[source]
                                                                              -class MITNEBSet(structures: list[Structure], unset_encut: bool = False, **kwargs)[source]
                                                                              +class MITNEBSet(structures: list[Structure], unset_encut: bool = False, **kwargs)[source]

                                                                              Bases: VaspInputSet

                                                                              Write NEB inputs.

                                                                              Note that EDIFF is not on a per atom basis for this input set.

                                                                              @@ -5609,19 +5624,19 @@

                                                                              Submodules
                                                                              -property poscar: Poscar[source]
                                                                              +property poscar: Poscar[source]

                                                                              Poscar for structure of first end point.

                                                                              -property poscars: list[Poscar][source]
                                                                              +property poscars: list[Poscar][source]

                                                                              List of Poscars.

                                                                              -write_input(output_dir: PathLike, make_dir_if_not_present: bool = True, write_cif: bool = False, write_path_cif: bool = False, write_endpoint_inputs: bool = False) None[source]
                                                                              +write_input(output_dir: PathLike, make_dir_if_not_present: bool = True, write_cif: bool = False, write_path_cif: bool = False, write_endpoint_inputs: bool = False) None[source]

                                                                              NEB inputs has a special directory structure where inputs are in 00, 01, 02, ….

                                                                              @@ -5644,7 +5659,7 @@

                                                                              Submodules
                                                                              -class MITRelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]
                                                                              +class MITRelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              Standard implementation of VaspInputSet utilizing parameters in the MIT High-throughput project. @@ -5669,14 +5684,161 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF': 1e-05, 'ENCUT': 520, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'ISYM': 0, 'LDAU': True, 'LDAUJ': {'F': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'O': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'S': {'Fe': 0, 'Mn': 0}}, 'LDAUL': {'F': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'O': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'S': {'Fe': 2, 'Mn': 2.5}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'O': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'S': {'Fe': 1.9, 'Mn': 2.5}}, 'LORBIT': '11', 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 200, 'NELMIN': 6, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'length': 25}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': {'hash': 'd6854224d20e3de6e6fd7399503791d1', 'symbol': 'Ac'}, 'Ag': {'hash': 'e8ffa02fe3f3a51338ac1ac91ae968b9', 'symbol': 'Ag'}, 'Al': {'hash': 'a6fd9a46aec185f4ad2acd0cbe4ae2fa', 'symbol': 'Al'}, 'Ar': {'hash': 'e782fc6292623b396091bf8b871c272f', 'symbol': 'Ar'}, 'As': {'hash': '8005364db225a254e52cba350bedd032', 'symbol': 'As'}, 'Au': {'hash': 'a9182d436a13194b744640ac940ab9b0', 'symbol': 'Au'}, 'B': {'hash': '18ed2875dfa6305324cec3d7d59273ae', 'symbol': 'B'}, 'Ba': {'hash': 'c0477913afb63dfae3439f3534fbf0ed', 'symbol': 'Ba_sv'}, 'Be': {'hash': 'fb974e44d56a8c62c6bbd1a1eb70c3a7', 'symbol': 'Be'}, 'Bi': {'hash': 'e29661c79d59abae3b3ba69eae24b1a5', 'symbol': 'Bi'}, 'Br': {'hash': '40f9594b4506684a69158c8975cfb9d6', 'symbol': 'Br'}, 'C': {'hash': 'c0a8167dbb174fe492a3db7f5006c0f8', 'symbol': 'C'}, 'Ca': {'hash': 'eb006721e214c04b3c13146e81b3a27d', 'symbol': 'Ca_sv'}, 'Cd': {'hash': '0506b2d0ac28d5fe2b5ced77a701aa86', 'symbol': 'Cd'}, 'Ce': {'hash': 'ff3a09f2ff91798e58eb4b9854e9be4a', 'symbol': 'Ce'}, 'Cl': {'hash': '779b9901046c78fe51c5d80224642aeb', 'symbol': 'Cl'}, 'Co': {'hash': 'b169bca4e137294d2ab3df8cbdd09083', 'symbol': 'Co'}, 'Cr': {'hash': '82c14307937c7509fda4e9bc023d243d', 'symbol': 'Cr'}, 'Cs': {'hash': '096b53a7d80cc0086976bcda50d536e5', 'symbol': 'Cs_sv'}, 'Cu': {'hash': '8ca4e43a30de0c397e51f16bbb20d678', 'symbol': 'Cu'}, 'Dy': {'hash': 'd4a05220ab0a2d4c03a76872ea724a1e', 'symbol': 'Dy_3'}, 'Er': {'hash': 'daa65a04877317f8c3c593ddeaa8a132', 'symbol': 'Er_3'}, 'Eu': {'hash': 'd466d046adf21f6146ee9644049ea268', 'symbol': 'Eu'}, 'F': {'hash': '180141c33d032bfbfff30b3bea9d23dd', 'symbol': 'F'}, 'Fe': {'hash': '9530da8244e4dac17580869b4adab115', 'symbol': 'Fe'}, 'Ga': {'hash': '6e0b9d58412b1bfcd7252aff13d476c2', 'symbol': 'Ga'}, 'Gd': {'hash': '1f0d42b1e5f6769d319d3f247992aeb9', 'symbol': 'Gd'}, 'Ge': {'hash': '79e788788c31e196a460553010512d3f', 'symbol': 'Ge'}, 'H': {'hash': 'bb43c666e3d36577264afe07669e9582', 'symbol': 'H'}, 'He': {'hash': '47f9434aa3db96c85d7c4b3e4c2df09b', 'symbol': 'He'}, 'Hf': {'hash': 'b113f150cbf9c736f8244a6c25b0482e', 'symbol': 'Hf'}, 'Hg': {'hash': 'c2f15dfb5fd53396c5427635e5019160', 'symbol': 'Hg'}, 'Ho': {'hash': '661891464a27e87cf7e1324dd1893b77', 'symbol': 'Ho_3'}, 'I': {'hash': 'f4ff16a495dd361ff5824ee61b418bb0', 'symbol': 'I'}, 'In': {'hash': '7df38c0cdb4e6d9a9b93f09d690bb3ae', 'symbol': 'In'}, 'Ir': {'hash': 'dbcf7dcc6f4fb40df7b3d26904f60a66', 'symbol': 'Ir'}, 'K': {'hash': '3e84f86d37f203a4fb01de36af57e430', 'symbol': 'K_sv'}, 'Kr': {'hash': '39b9b85ae3982e6c012fb549b2840ce5', 'symbol': 'Kr'}, 'La': {'hash': '9b3ce03d18f7c0b40471a817ff91b287', 'symbol': 'La'}, 'Li': {'hash': '65e83282d1707ec078c1012afbd05be8', 'symbol': 'Li'}, 'Lu': {'hash': 'd40a90babf1224b88ffb4c3273ac3848', 'symbol': 'Lu_3'}, 'Mg': {'hash': '1771eb72adbbfa6310d66e7517e49930', 'symbol': 'Mg'}, 'Mn': {'hash': 'd082dba29b57ab59b3165e605dbf71b8', 'symbol': 'Mn'}, 'Mo': {'hash': '84e18fd84a98e3d7fa8f055952410df0', 'symbol': 'Mo_pv'}, 'N': {'hash': 'b98fd027ddebc67da4063ff2cabbc04b', 'symbol': 'N'}, 'Na': {'hash': '1a89e79f7e21d99e8cf5788979f6a987', 'symbol': 'Na'}, 'Nb': {'hash': '7bcee99a4dc3094be0f9fd7961c02966', 'symbol': 'Nb_pv'}, 'Nd': {'hash': '0c64e63070cee837c967283fffa001df', 'symbol': 'Nd'}, 'Ne': {'hash': '52064eee378b9e37a295a674f1c278f0', 'symbol': 'Ne'}, 'Ni': {'hash': '653f5772e68b2c7fd87ffd1086c0d710', 'symbol': 'Ni'}, 'Np': {'hash': '20cb30b714200c4db870550b288ac4cd', 'symbol': 'Np'}, 'O': {'hash': '7a25bc5b9a5393f46600a4939d357982', 'symbol': 'O'}, 'Os': {'hash': '35c2cb48d48a9c38c40fb82bbe70626d', 'symbol': 'Os'}, 'P': {'hash': '7dc3393307131ae67785a0cdacb61d5f', 'symbol': 'P'}, 'Pa': {'hash': 'a1fdb1089d0727f415416ec8082246ba', 'symbol': 'Pa'}, 'Pb': {'hash': '704c2c967247d7f84090d2536c91877d', 'symbol': 'Pb'}, 'Pd': {'hash': 'a395eb3aaf2fcab12fac3030a1146f61', 'symbol': 'Pd'}, 'Pm': {'hash': 'a2c9485ea86b2a7cf175077e6e5c7b3e', 'symbol': 'Pm'}, 'Pr': {'hash': '92f191499bf5346ea652bb806350ad87', 'symbol': 'Pr'}, 'Pt': {'hash': 'a604ea3c6a9cc23c739b762f625cf449', 'symbol': 'Pt'}, 'Pu': {'hash': 'f1d01e845dccc52d448679911f301a73', 'symbol': 'Pu'}, 'Rb': {'hash': 'e447c648d870b066b3514e6b800727ab', 'symbol': 'Rb_pv'}, 'Re': {'hash': '72385e193c92a8acfe17ea49004c2be1', 'symbol': 'Re'}, 'Rh': {'hash': '2c3dba3fcc6058ca1b1cfa75e45084bc', 'symbol': 'Rh'}, 'Ru': {'hash': '7925f4d4b68076d70af7cd86eef9ba8d', 'symbol': 'Ru_pv'}, 'S': {'hash': 'd368db6899d8839859bbee4811a42a88', 'symbol': 'S'}, 'Sb': {'hash': 'd82c022b02fc5344e85bd1909f9ee3e7', 'symbol': 'Sb'}, 'Sc': {'hash': 'dc386f505ad0c43385a7715b4111cb75', 'symbol': 'Sc_sv'}, 'Se': {'hash': '67a8804ede9f1112726e3d136978ef19', 'symbol': 'Se'}, 'Si': {'hash': 'b2b0ea6feb62e7cde209616683b8f7f5', 'symbol': 'Si'}, 'Sm': {'hash': 'e5e274e7cd99602ca81d146155abdf88', 'symbol': 'Sm_3'}, 'Sn': {'hash': '849b0795e148f93113a06be8fd5f5001', 'symbol': 'Sn_d'}, 'Sr': {'hash': 'ca6a5429c120a0ab705824386a76fe5b', 'symbol': 'Sr_sv'}, 'Ta': {'hash': 'd4e2cfe9338ef80da592d5bb9dc782c7', 'symbol': 'Ta'}, 'Tb': {'hash': '0790955c547003956c0fd4f080f7f508', 'symbol': 'Tb_3'}, 'Tc': {'hash': '9592642886319309a39d55c5717c6f48', 'symbol': 'Tc'}, 'Te': {'hash': '72719856e22fb1d3032df6f96d98a0f2', 'symbol': 'Te'}, 'Th': {'hash': 'aea79f322180fa6f0bfa74cb2a156dcf', 'symbol': 'Th'}, 'Ti': {'hash': 'c617e8b539c3f44a0ab6e8da2a92d318', 'symbol': 'Ti'}, 'Tl': {'hash': '2aa0d5406aaab7ebfbc761da382f1352', 'symbol': 'Tl'}, 'Tm': {'hash': '94a07cb7949b01305cb161da0cbfb492', 'symbol': 'Tm_3'}, 'U': {'hash': '72702eabbb1bc02b4167590dc848ed5d', 'symbol': 'U'}, 'V': {'hash': '7f1297a2e1d963e2a4d81b61f85e4ded', 'symbol': 'V_pv'}, 'W': {'hash': '2a33e0d5c700640535f60ac0a12177ab', 'symbol': 'W_pv'}, 'Xe': {'hash': '338472e581f58b41d37c002a5e22353b', 'symbol': 'Xe'}, 'Y': {'hash': '4ed187e77cd54f198bb88020278b143d', 'symbol': 'Y_sv'}, 'Yb': {'hash': '9f472bd422f640710f7d93e2d9ce89f4', 'symbol': 'Yb'}, 'Zn': {'hash': 'e35ee27f8483a63bb68dbc236a343af3', 'symbol': 'Zn'}, 'Zr': {'hash': 'd221d2c0bac4f8e81af2f5c42a314274', 'symbol': 'Zr'}}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF': 1e-05, 'ENCUT': 520, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'ISYM': 0, 'LDAU': True, 'LDAUJ': {'F': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'O': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'S': {'Fe': 0, 'Mn': 0}}, 'LDAUL': {'F': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'O': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'S': {'Fe': 2, 'Mn': 2.5}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'O': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'S': {'Fe': 1.9, 'Mn': 2.5}}, 'LORBIT': '11', 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 200, 'NELMIN': 6, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'length': 25}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': {'hash': 'd6854224d20e3de6e6fd7399503791d1', 'symbol': 'Ac'}, 'Ag': {'hash': 'e8ffa02fe3f3a51338ac1ac91ae968b9', 'symbol': 'Ag'}, 'Al': {'hash': 'a6fd9a46aec185f4ad2acd0cbe4ae2fa', 'symbol': 'Al'}, 'Ar': {'hash': 'e782fc6292623b396091bf8b871c272f', 'symbol': 'Ar'}, 'As': {'hash': '8005364db225a254e52cba350bedd032', 'symbol': 'As'}, 'Au': {'hash': 'a9182d436a13194b744640ac940ab9b0', 'symbol': 'Au'}, 'B': {'hash': '18ed2875dfa6305324cec3d7d59273ae', 'symbol': 'B'}, 'Ba': {'hash': 'c0477913afb63dfae3439f3534fbf0ed', 'symbol': 'Ba_sv'}, 'Be': {'hash': 'fb974e44d56a8c62c6bbd1a1eb70c3a7', 'symbol': 'Be'}, 'Bi': {'hash': 'e29661c79d59abae3b3ba69eae24b1a5', 'symbol': 'Bi'}, 'Br': {'hash': '40f9594b4506684a69158c8975cfb9d6', 'symbol': 'Br'}, 'C': {'hash': 'c0a8167dbb174fe492a3db7f5006c0f8', 'symbol': 'C'}, 'Ca': {'hash': 'eb006721e214c04b3c13146e81b3a27d', 'symbol': 'Ca_sv'}, 'Cd': {'hash': '0506b2d0ac28d5fe2b5ced77a701aa86', 'symbol': 'Cd'}, 'Ce': {'hash': 'ff3a09f2ff91798e58eb4b9854e9be4a', 'symbol': 'Ce'}, 'Cl': {'hash': '779b9901046c78fe51c5d80224642aeb', 'symbol': 'Cl'}, 'Co': {'hash': 'b169bca4e137294d2ab3df8cbdd09083', 'symbol': 'Co'}, 'Cr': {'hash': '82c14307937c7509fda4e9bc023d243d', 'symbol': 'Cr'}, 'Cs': {'hash': '096b53a7d80cc0086976bcda50d536e5', 'symbol': 'Cs_sv'}, 'Cu': {'hash': '8ca4e43a30de0c397e51f16bbb20d678', 'symbol': 'Cu'}, 'Dy': {'hash': 'd4a05220ab0a2d4c03a76872ea724a1e', 'symbol': 'Dy_3'}, 'Er': {'hash': 'daa65a04877317f8c3c593ddeaa8a132', 'symbol': 'Er_3'}, 'Eu': {'hash': 'd466d046adf21f6146ee9644049ea268', 'symbol': 'Eu'}, 'F': {'hash': '180141c33d032bfbfff30b3bea9d23dd', 'symbol': 'F'}, 'Fe': {'hash': '9530da8244e4dac17580869b4adab115', 'symbol': 'Fe'}, 'Ga': {'hash': '6e0b9d58412b1bfcd7252aff13d476c2', 'symbol': 'Ga'}, 'Gd': {'hash': '1f0d42b1e5f6769d319d3f247992aeb9', 'symbol': 'Gd'}, 'Ge': {'hash': '79e788788c31e196a460553010512d3f', 'symbol': 'Ge'}, 'H': {'hash': 'bb43c666e3d36577264afe07669e9582', 'symbol': 'H'}, 'He': {'hash': '47f9434aa3db96c85d7c4b3e4c2df09b', 'symbol': 'He'}, 'Hf': {'hash': 'b113f150cbf9c736f8244a6c25b0482e', 'symbol': 'Hf'}, 'Hg': {'hash': 'c2f15dfb5fd53396c5427635e5019160', 'symbol': 'Hg'}, 'Ho': {'hash': '661891464a27e87cf7e1324dd1893b77', 'symbol': 'Ho_3'}, 'I': {'hash': 'f4ff16a495dd361ff5824ee61b418bb0', 'symbol': 'I'}, 'In': {'hash': '7df38c0cdb4e6d9a9b93f09d690bb3ae', 'symbol': 'In'}, 'Ir': {'hash': 'dbcf7dcc6f4fb40df7b3d26904f60a66', 'symbol': 'Ir'}, 'K': {'hash': '3e84f86d37f203a4fb01de36af57e430', 'symbol': 'K_sv'}, 'Kr': {'hash': '39b9b85ae3982e6c012fb549b2840ce5', 'symbol': 'Kr'}, 'La': {'hash': '9b3ce03d18f7c0b40471a817ff91b287', 'symbol': 'La'}, 'Li': {'hash': '65e83282d1707ec078c1012afbd05be8', 'symbol': 'Li'}, 'Lu': {'hash': 'd40a90babf1224b88ffb4c3273ac3848', 'symbol': 'Lu_3'}, 'Mg': {'hash': '1771eb72adbbfa6310d66e7517e49930', 'symbol': 'Mg'}, 'Mn': {'hash': 'd082dba29b57ab59b3165e605dbf71b8', 'symbol': 'Mn'}, 'Mo': {'hash': '84e18fd84a98e3d7fa8f055952410df0', 'symbol': 'Mo_pv'}, 'N': {'hash': 'b98fd027ddebc67da4063ff2cabbc04b', 'symbol': 'N'}, 'Na': {'hash': '1a89e79f7e21d99e8cf5788979f6a987', 'symbol': 'Na'}, 'Nb': {'hash': '7bcee99a4dc3094be0f9fd7961c02966', 'symbol': 'Nb_pv'}, 'Nd': {'hash': '0c64e63070cee837c967283fffa001df', 'symbol': 'Nd'}, 'Ne': {'hash': '52064eee378b9e37a295a674f1c278f0', 'symbol': 'Ne'}, 'Ni': {'hash': '653f5772e68b2c7fd87ffd1086c0d710', 'symbol': 'Ni'}, 'Np': {'hash': '20cb30b714200c4db870550b288ac4cd', 'symbol': 'Np'}, 'O': {'hash': '7a25bc5b9a5393f46600a4939d357982', 'symbol': 'O'}, 'Os': {'hash': '35c2cb48d48a9c38c40fb82bbe70626d', 'symbol': 'Os'}, 'P': {'hash': '7dc3393307131ae67785a0cdacb61d5f', 'symbol': 'P'}, 'Pa': {'hash': 'a1fdb1089d0727f415416ec8082246ba', 'symbol': 'Pa'}, 'Pb': {'hash': '704c2c967247d7f84090d2536c91877d', 'symbol': 'Pb'}, 'Pd': {'hash': 'a395eb3aaf2fcab12fac3030a1146f61', 'symbol': 'Pd'}, 'Pm': {'hash': 'a2c9485ea86b2a7cf175077e6e5c7b3e', 'symbol': 'Pm'}, 'Pr': {'hash': '92f191499bf5346ea652bb806350ad87', 'symbol': 'Pr'}, 'Pt': {'hash': 'a604ea3c6a9cc23c739b762f625cf449', 'symbol': 'Pt'}, 'Pu': {'hash': 'f1d01e845dccc52d448679911f301a73', 'symbol': 'Pu'}, 'Rb': {'hash': 'e447c648d870b066b3514e6b800727ab', 'symbol': 'Rb_pv'}, 'Re': {'hash': '72385e193c92a8acfe17ea49004c2be1', 'symbol': 'Re'}, 'Rh': {'hash': '2c3dba3fcc6058ca1b1cfa75e45084bc', 'symbol': 'Rh'}, 'Ru': {'hash': '7925f4d4b68076d70af7cd86eef9ba8d', 'symbol': 'Ru_pv'}, 'S': {'hash': 'd368db6899d8839859bbee4811a42a88', 'symbol': 'S'}, 'Sb': {'hash': 'd82c022b02fc5344e85bd1909f9ee3e7', 'symbol': 'Sb'}, 'Sc': {'hash': 'dc386f505ad0c43385a7715b4111cb75', 'symbol': 'Sc_sv'}, 'Se': {'hash': '67a8804ede9f1112726e3d136978ef19', 'symbol': 'Se'}, 'Si': {'hash': 'b2b0ea6feb62e7cde209616683b8f7f5', 'symbol': 'Si'}, 'Sm': {'hash': 'e5e274e7cd99602ca81d146155abdf88', 'symbol': 'Sm_3'}, 'Sn': {'hash': '849b0795e148f93113a06be8fd5f5001', 'symbol': 'Sn_d'}, 'Sr': {'hash': 'ca6a5429c120a0ab705824386a76fe5b', 'symbol': 'Sr_sv'}, 'Ta': {'hash': 'd4e2cfe9338ef80da592d5bb9dc782c7', 'symbol': 'Ta'}, 'Tb': {'hash': '0790955c547003956c0fd4f080f7f508', 'symbol': 'Tb_3'}, 'Tc': {'hash': '9592642886319309a39d55c5717c6f48', 'symbol': 'Tc'}, 'Te': {'hash': '72719856e22fb1d3032df6f96d98a0f2', 'symbol': 'Te'}, 'Th': {'hash': 'aea79f322180fa6f0bfa74cb2a156dcf', 'symbol': 'Th'}, 'Ti': {'hash': 'c617e8b539c3f44a0ab6e8da2a92d318', 'symbol': 'Ti'}, 'Tl': {'hash': '2aa0d5406aaab7ebfbc761da382f1352', 'symbol': 'Tl'}, 'Tm': {'hash': '94a07cb7949b01305cb161da0cbfb492', 'symbol': 'Tm_3'}, 'U': {'hash': '72702eabbb1bc02b4167590dc848ed5d', 'symbol': 'U'}, 'V': {'hash': '7f1297a2e1d963e2a4d81b61f85e4ded', 'symbol': 'V_pv'}, 'W': {'hash': '2a33e0d5c700640535f60ac0a12177ab', 'symbol': 'W_pv'}, 'Xe': {'hash': '338472e581f58b41d37c002a5e22353b', 'symbol': 'Xe'}, 'Y': {'hash': '4ed187e77cd54f198bb88020278b143d', 'symbol': 'Y_sv'}, 'Yb': {'hash': '9f472bd422f640710f7d93e2d9ce89f4', 'symbol': 'Yb'}, 'Zn': {'hash': 'e35ee27f8483a63bb68dbc236a343af3', 'symbol': 'Zn'}, 'Zr': {'hash': 'd221d2c0bac4f8e81af2f5c42a314274', 'symbol': 'Zr'}}, 'POTCAR_FUNCTIONAL': 'PBE'}[source] +

                                                                              + +
                                                                              + +
                                                                              +
                                                                              +class MP24RelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = False, auto_kspacing: bool = True, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, xc_functional: Literal['r2SCAN', 'PBE', 'PBEsol'] = 'r2SCAN', dispersion: Literal['rVV10', 'D4'] | None = None)[source]
                                                                              +

                                                                              Bases: VaspInputSet

                                                                              +

                                                                              Materials Project relax set after a 2023-2024 benchmarking effort.

                                                                              +

                                                                              By default, this uses r2SCAN as the xc functional. +For discussion around this benchmarking effort, see: +https://github.com/materialsproject/foundation/pull/26

                                                                              +

                                                                              Citation info: +- r2SCAN:

                                                                              +
                                                                              +

                                                                              James W. Furness, Aaron D. Kaplan, Jinliang Ning, John P. Perdew, and Jianwei Sun. +Accurate and Numerically Efficient r2SCAN Meta-Generalized Gradient Approximation. +J. Phys. Chem. Lett. 11, 8208-8215 (2022) DOI: 10.1021/acs.jpclett.0c02405

                                                                              +
                                                                              +
                                                                                +
                                                                              • +
                                                                                r2SCAN-rVV10:
                                                                                +
                                                                                Jinliang Ning, Manish Kothakonda, James W. Furness, Aaron D. Kaplan, Sebastian Ehlert,

                                                                                Jan Gerit Brandenburg, John P. Perdew, and Jianwei Sun.

                                                                                +
                                                                                +
                                                                                Workhorse minimally empirical dispersion-corrected density functional with tests for

                                                                                weakly bound systems: r2SCAN+rVV10.

                                                                                +
                                                                                +
                                                                                +

                                                                                Phys. Rev. B 106, 075422 (2022) DOI: 10.1103/PhysRevB.106.075422

                                                                                +
                                                                                +
                                                                                +
                                                                              • +
                                                                              • +
                                                                                r2SCAN-D4:
                                                                                +
                                                                                Sebastian Ehlert, Uwe Huniar, Jinliang Ning, James W. Furness, Jianwei Sun,

                                                                                Aaron D. Kaplan, John P. Perdew, and Jan Gerit Brandenburg.

                                                                                +
                                                                                +
                                                                                +

                                                                                r2SCAN-D4: Dispersion corrected meta-generalized gradient approximation for general chemical applications. +J. Chem. Phys. 154, 061101 (2021) DOI: 10.1063/5.0041008

                                                                                +
                                                                                +
                                                                                +
                                                                              • +
                                                                              • +
                                                                                PBE:

                                                                                John P. Perdew, Kieron Burke, and Matthias Ernzerhof, +Generalized Gradient Approximation Made Simple, +Phys. Rev. Lett. 77, 3865 (1996) DOI: 10.1103/PhysRevLett.77.3865

                                                                                +
                                                                                +
                                                                                +
                                                                              • +
                                                                              • +
                                                                                PBEsol:
                                                                                +
                                                                                John P. Perdew, Adrienn Ruzsinszky, Gábor I. Csonka, Oleg A. Vydrov,

                                                                                Gustavo E. Scuseria, Lucian A. Constantin, Xiaolan Zhou, and Kieron Burke.

                                                                                +
                                                                                +
                                                                                +

                                                                                Restoring the Density-Gradient Expansion for Exchange in Solids and Surfaces. +Phys. Rev. Lett. 100, 136406 (2009) DOI: 10.1103/PhysRevLett.100.136406

                                                                                +
                                                                                +
                                                                                +
                                                                              • +
                                                                              • +
                                                                                PBE-D4 and PBEsol-D4:

                                                                                Eike Caldeweyher,Jan-Michael Mewes, Sebastian Ehlert, and Stefan Grimme. +Extension and evaluation of the D4 London-dispersion model for periodic systems. +Phys. Chem. Chem. Phys. 22, 8499-8512 (2020) DOI: 10.1039/D0CP00502A

                                                                                +
                                                                                +
                                                                                +
                                                                              • +
                                                                              +
                                                                              +
                                                                              +CONFIG = {'INCAR': {'ALGO': 'Normal', 'EDIFF': 1e-05, 'EDIFFG': -0.02, 'ENAUG': 1360, 'ENCUT': 680, 'GGA_COMPAT': False, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': 0, 'ISPIN': 2, 'KSPACING': 0.22, 'LAECHG': True, 'LASPH': True, 'LCHARG': True, 'LELF': False, 'LMAXMIX': 6, 'LMIXTAU': True, 'LORBIT': 11, 'LREAL': False, 'LVTOT': True, 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'METAGGA': 'R2SCAN', 'NELM': 200, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'PARENT': 'PBE64Base', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Am': 'Am', 'Ar': 'Ar', 'As': 'As', 'At': 'At', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv_GW', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cf': 'Cf', 'Cl': 'Cl', 'Cm': 'Cm', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_h', 'Er': 'Er_h', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Fr': 'Fr_sv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_h', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_h', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_h', 'Po': 'Po_d', 'Pr': 'Pr_h', 'Pt': 'Pt', 'Pu': 'Pu', 'Ra': 'Ra_sv', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Rn': 'Rn', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_h', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_h', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_h', 'U': 'U', 'V': 'V_pv', 'W': 'W_sv', 'Xe': 'Xe_GW', 'Y': 'Y_sv', 'Yb': 'Yb_h', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_64'}[source]
                                                                              +
                                                                              + +
                                                                              +
                                                                              +auto_ismear: bool = False[source]
                                                                              +
                                                                              + +
                                                                              +
                                                                              +auto_kspacing: bool = True[source]
                                                                              +
                                                                              + +
                                                                              +
                                                                              +dispersion: Literal['rVV10', 'D4'] | None = None[source]
                                                                              +
                                                                              + +
                                                                              +
                                                                              +inherit_incar: bool = False[source]
                                                                              +
                                                                              + +
                                                                              +
                                                                              +property kspacing_update[source]
                                                                              +
                                                                              + +
                                                                              +
                                                                              +xc_functional: Literal['r2SCAN', 'PBE', 'PBEsol'] = 'r2SCAN'[source]
                                                                              +
                                                                              + +
                                                                              + +
                                                                              +
                                                                              +class MP24StaticSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = False, auto_kspacing: bool = True, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, xc_functional: Literal['r2SCAN', 'PBE', 'PBEsol'] = 'r2SCAN', dispersion: Literal['rVV10', 'D4'] | None = None, lepsilon: bool = False, lcalcpol: bool = False)[source]
                                                                              +

                                                                              Bases: MP24RelaxSet

                                                                              +

                                                                              Create input files for a static calculation using MP24 parameters.

                                                                              +

                                                                              For class information, refer to MP24RelaxSet. +If you use this set, please consider citing the appropriate papers in MP24RelaxSet.

                                                                              +
                                                                              +
                                                                              Parameters:
                                                                              +
                                                                                +
                                                                              • structure (Structure) – Structure from previous run.

                                                                              • +
                                                                              • bandgap (float) – Bandgap of the structure in eV. The bandgap is used to +compute the appropriate k-point density and determine the smearing settings.

                                                                              • +
                                                                              • lepsilon (bool) – Whether to add static dielectric calculation

                                                                              • +
                                                                              • lcalcpol (bool) – Whether to turn on evaluation of the Berry phase approximations +for electronic polarization.

                                                                              • +
                                                                              • **kwargs – Keywords supported by MP24RelaxSet.

                                                                              • +
                                                                              +
                                                                              +
                                                                              +
                                                                              +
                                                                              +auto_kspacing: bool = True[source]
                                                                              +
                                                                              + +
                                                                              +
                                                                              +property incar_updates: dict[str, Any][source]
                                                                              +

                                                                              Updates to the INCAR config for this calculation type.

                                                                              +
                                                                              + +
                                                                              +
                                                                              +inherit_incar: bool = False[source]
                                                                              +
                                                                              + +
                                                                              +
                                                                              +lcalcpol: bool = False[source]
                                                                              +
                                                                              + +
                                                                              +
                                                                              +lepsilon: bool = False[source]
                                                                              -class MPAbsorptionSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = True, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, mode: str = 'IPA', copy_wavecar: bool = True, nbands_factor: float = 2, reciprocal_density: float = 400, nkred: Tuple3Ints | None = None, nedos: int = 2001, nbands: int | None = None)[source]
                                                                              +class MPAbsorptionSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = True, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, mode: str = 'IPA', copy_wavecar: bool = True, nbands_factor: float = 2, reciprocal_density: float = 400, nkred: Tuple3Ints | None = None, nedos: int = 2001, nbands: int | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              MP input set for generating frequency dependent dielectrics.

                                                                              Two modes are supported: “IPA” or “RPA”. @@ -5710,38 +5872,38 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -SUPPORTED_MODES = ('IPA', 'RPA')[source]
                                                                              +SUPPORTED_MODES = ('IPA', 'RPA')[source]
                                                                              -copy_wavecar: bool = True[source]
                                                                              +copy_wavecar: bool = True[source]
                                                                              -force_gamma: bool = True[source]
                                                                              +force_gamma: bool = True[source]
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -inherit_incar: bool = True[source]
                                                                              +inherit_incar: bool = True[source]
                                                                              -property kpoints_updates: dict[str, float][source]
                                                                              +property kpoints_updates: dict[str, float][source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              Generate gamma center k-points mesh grid for optical calculation. It is not mandatory for ‘ALGO = Exact’, but is requested by ‘ALGO = CHI’ calculation.

                                                                              @@ -5749,39 +5911,39 @@

                                                                              Submodules
                                                                              -mode: str = 'IPA'[source]
                                                                              +mode: str = 'IPA'[source]

                                                                              -nbands: int | None = None[source]
                                                                              +nbands: int | None = None[source]
                                                                              -nbands_factor: float = 2[source]
                                                                              +nbands_factor: float = 2[source]
                                                                              -nedos: int = 2001[source]
                                                                              +nedos: int = 2001[source]
                                                                              -nkred: Tuple3Ints | None = None[source]
                                                                              +nkred: Tuple3Ints | None = None[source]
                                                                              -reciprocal_density: float = 400[source]
                                                                              +reciprocal_density: float = 400[source]
                                                                              -class MPHSEBSSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, added_kpoints: list[Vector3D] = <factory>, mode: str = 'gap', reciprocal_density: float = 50, copy_chgcar: bool = True, kpoints_line_density: float = 20, nbands_factor: float = 1.2, zero_weighted_reciprocal_density: float = 100, dedos: float = 0.02, optics: bool = False)[source]
                                                                              +class MPHSEBSSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, added_kpoints: list[Vector3D] = <factory>, mode: str = 'gap', reciprocal_density: float = 50, copy_chgcar: bool = True, kpoints_line_density: float = 20, nbands_factor: float = 1.2, zero_weighted_reciprocal_density: float = 100, dedos: float = 0.02, optics: bool = False)[source]

                                                                              Bases: VaspInputSet

                                                                              Implementation of a VaspInputSet for HSE band structure computations.

                                                                              Remember that HSE band structures must be self-consistent in VASP. A band structure @@ -5821,94 +5983,94 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'All', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'HFSCREEN': 0.2, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': 0, 'ISPIN': 2, 'LHFCALC': True, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'PRECFOCK': 'Fast', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 50}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_52'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'All', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'HFSCREEN': 0.2, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': 0, 'ISPIN': 2, 'LHFCALC': True, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'PRECFOCK': 'Fast', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 50}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_52'}[source]

                                                                              -added_kpoints: list[Vector3D][source]
                                                                              +added_kpoints: list[Vector3D][source]
                                                                              -copy_chgcar: bool = True[source]
                                                                              +copy_chgcar: bool = True[source]
                                                                              -dedos: float = 0.02[source]
                                                                              +dedos: float = 0.02[source]
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -kpoints_line_density: float = 20[source]
                                                                              +kpoints_line_density: float = 20[source]
                                                                              -property kpoints_updates: dict[str, Any][source]
                                                                              +property kpoints_updates: dict[str, Any][source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              -mode: str = 'gap'[source]
                                                                              +mode: str = 'gap'[source]
                                                                              -nbands_factor: float = 1.2[source]
                                                                              +nbands_factor: float = 1.2[source]
                                                                              -optics: bool = False[source]
                                                                              +optics: bool = False[source]
                                                                              -reciprocal_density: float = 50[source]
                                                                              +reciprocal_density: float = 50[source]
                                                                              -zero_weighted_reciprocal_density: float = 100[source]
                                                                              +zero_weighted_reciprocal_density: float = 100[source]

                                                                              -class MPHSERelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: Literal['dftd3', 'dftd3-bj'] | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]
                                                                              +class MPHSERelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: Literal['dftd3', 'dftd3-bj'] | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              Same as the MPRelaxSet, but with HSE parameters and vdW corrections.

                                                                              -CONFIG = {'INCAR': {'ALGO': 'All', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'HFSCREEN': 0.2, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': 0, 'ISPIN': 2, 'LHFCALC': True, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'PRECFOCK': 'Fast', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 50}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_52'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'All', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'HFSCREEN': 0.2, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': 0, 'ISPIN': 2, 'LHFCALC': True, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'PRECFOCK': 'Fast', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 50}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_52'}[source]
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -vdw: Literal['dftd3', 'dftd3-bj'] | None = None[source]
                                                                              +vdw: Literal['dftd3', 'dftd3-bj'] | None = None[source]
                                                                              -class MPMDSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, start_temp: float = 0.0, end_temp: float = 300.0, nsteps: int = 1000, time_step: float | None = None, spin_polarized: bool = False)[source]
                                                                              +class MPMDSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, start_temp: float = 0.0, end_temp: float = 300.0, nsteps: int = 1000, time_step: float | None = None, spin_polarized: bool = False)[source]

                                                                              Bases: VaspInputSet

                                                                              This a modified version of the old MITMDSet pre 2018/03/12.

                                                                              This set serves as the basis for the amorphous skyline paper.

                                                                              @@ -5938,69 +6100,69 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -end_temp: float = 300.0[source]
                                                                              +end_temp: float = 300.0[source]
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -property kpoints_updates: Kpoints[source]
                                                                              +property kpoints_updates: Kpoints[source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              -nsteps: int = 1000[source]
                                                                              +nsteps: int = 1000[source]
                                                                              -spin_polarized: bool = False[source]
                                                                              +spin_polarized: bool = False[source]
                                                                              -start_temp: float = 0.0[source]
                                                                              +start_temp: float = 0.0[source]
                                                                              -time_step: float | None = None[source]
                                                                              +time_step: float | None = None[source]

                                                                              -class MPMetalRelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]
                                                                              +class MPMetalRelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              Implementation of VaspInputSet utilizing parameters in the public Materials Project, but with tuning for metals. Key things are a denser k point density, and a.

                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              -property incar_updates: dict[source]
                                                                              +property incar_updates: dict[source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -property kpoints_updates: dict[source]
                                                                              +property kpoints_updates: dict[source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              @@ -6008,7 +6170,7 @@

                                                                              Submodules
                                                                              -class MPNMRSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, mode: Literal['cs', 'efg'] = 'cs', isotopes: list = <factory>, reciprocal_density: int = 100, small_gap_multiply: tuple[float, float] | None = None)[source]
                                                                              +class MPNMRSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, mode: Literal['cs', 'efg'] = 'cs', isotopes: list = <factory>, reciprocal_density: int = 100, small_gap_multiply: tuple[float, float] | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              Init a MPNMRSet.

                                                                              @@ -6036,51 +6198,51 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -inherit_incar: bool = True[source]
                                                                              +inherit_incar: bool = True[source]
                                                                              -isotopes: list[source]
                                                                              +isotopes: list[source]
                                                                              -property kpoints_updates: dict[str, Any][source]
                                                                              +property kpoints_updates: dict[str, Any][source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              -mode: Literal['cs', 'efg'] = 'cs'[source]
                                                                              +mode: Literal['cs', 'efg'] = 'cs'[source]
                                                                              -reciprocal_density: int = 100[source]
                                                                              +reciprocal_density: int = 100[source]
                                                                              -small_gap_multiply: tuple[float, float] | None = None[source]
                                                                              +small_gap_multiply: tuple[float, float] | None = None[source]

                                                                              -class MPNonSCFSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, mode: str = 'line', nedos: int = 2001, dedos: float = 0.005, reciprocal_density: float = 100, kpoints_line_density: float = 20, optics: bool = False, copy_chgcar: bool = True, nbands_factor: float = 1.2, small_gap_multiply: tuple[float, float] | None = None)[source]
                                                                              +class MPNonSCFSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, mode: str = 'line', nedos: int = 2001, dedos: float = 0.005, reciprocal_density: float = 100, kpoints_line_density: float = 20, optics: bool = False, copy_chgcar: bool = True, nbands_factor: float = 1.2, small_gap_multiply: tuple[float, float] | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              Init a MPNonSCFSet. Typically, you would use the classmethod from_prev_calc to initialize from a previous SCF run.

                                                                              @@ -6111,76 +6273,76 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -copy_chgcar: bool = True[source]
                                                                              +copy_chgcar: bool = True[source]
                                                                              -dedos: float = 0.005[source]
                                                                              +dedos: float = 0.005[source]
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -inherit_incar: bool = True[source]
                                                                              +inherit_incar: bool = True[source]
                                                                              -kpoints_line_density: float = 20[source]
                                                                              +kpoints_line_density: float = 20[source]
                                                                              -property kpoints_updates: dict[str, Any][source]
                                                                              +property kpoints_updates: dict[str, Any][source]

                                                                              Updates to the KPOINTS configuration for this calculation type.

                                                                              -mode: str = 'line'[source]
                                                                              +mode: str = 'line'[source]
                                                                              -nbands_factor: float = 1.2[source]
                                                                              +nbands_factor: float = 1.2[source]
                                                                              -nedos: int = 2001[source]
                                                                              +nedos: int = 2001[source]
                                                                              -optics: bool = False[source]
                                                                              +optics: bool = False[source]
                                                                              -reciprocal_density: float = 100[source]
                                                                              +reciprocal_density: float = 100[source]
                                                                              -small_gap_multiply: tuple[float, float] | None = None[source]
                                                                              +small_gap_multiply: tuple[float, float] | None = None[source]

                                                                              -class MPRelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]
                                                                              +class MPRelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              Implementation of VaspInputSet utilizing parameters in the public Materials Project. Typically, the pseudopotentials chosen contain more @@ -6199,14 +6361,14 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -class MPSOCSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, saxis: Tuple3Ints = (0, 0, 1), nbands_factor: float = 1.2, lepsilon: bool = False, lcalcpol: bool = False, reciprocal_density: float = 100, small_gap_multiply: tuple[float, float] | None = None, magmom: list[Vector3D] | None = None, copy_chgcar: bool = True)[source]
                                                                              +class MPSOCSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, saxis: Tuple3Ints = (0, 0, 1), nbands_factor: float = 1.2, lepsilon: bool = False, lcalcpol: bool = False, reciprocal_density: float = 100, small_gap_multiply: tuple[float, float] | None = None, magmom: list[Vector3D] | None = None, copy_chgcar: bool = True)[source]

                                                                              Bases: VaspInputSet

                                                                              An input set for running spin-orbit coupling (SOC) calculations.

                                                                              @@ -6233,69 +6395,69 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -copy_chgcar: bool = True[source]
                                                                              +copy_chgcar: bool = True[source]
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -inherit_incar: bool = True[source]
                                                                              +inherit_incar: bool = True[source]
                                                                              -property kpoints_updates: dict[str, Any][source]
                                                                              +property kpoints_updates: dict[str, Any][source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              -lcalcpol: bool = False[source]
                                                                              +lcalcpol: bool = False[source]
                                                                              -lepsilon: bool = False[source]
                                                                              +lepsilon: bool = False[source]
                                                                              -magmom: list[Vector3D] | None = None[source]
                                                                              +magmom: list[Vector3D] | None = None[source]
                                                                              -nbands_factor: float = 1.2[source]
                                                                              +nbands_factor: float = 1.2[source]
                                                                              -reciprocal_density: float = 100[source]
                                                                              +reciprocal_density: float = 100[source]
                                                                              -saxis: Tuple3Ints = (0, 0, 1)[source]
                                                                              +saxis: Tuple3Ints = (0, 0, 1)[source]
                                                                              -small_gap_multiply: tuple[float, float] | None = None[source]
                                                                              +small_gap_multiply: tuple[float, float] | None = None[source]
                                                                              -property structure: Structure | None[source]
                                                                              +property structure: Structure | None[source]

                                                                              Structure.

                                                                              @@ -6303,7 +6465,7 @@

                                                                              Submodules
                                                                              -class MPScanRelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = 'PBE_54', force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = True, auto_ismear: bool = True, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = ('PBE_52', 'PBE_54', 'PBE_64'))[source]
                                                                              +class MPScanRelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = 'PBE_54', force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = True, auto_ismear: bool = True, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = ('PBE_52', 'PBE_54', 'PBE_64'))[source]

                                                                              Bases: VaspInputSet

                                                                              Write a relaxation input set using the accurate and numerically efficient r2SCAN variant of the Strongly Constrained and Appropriately Normed @@ -6352,37 +6514,37 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'ALL', 'EDIFF': 1e-05, 'EDIFFG': -0.02, 'ENAUG': 1360, 'ENCUT': 680, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': 0, 'ISPIN': 2, 'KSPACING': 0.22, 'LAECHG': True, 'LASPH': True, 'LCHARG': True, 'LELF': False, 'LMIXTAU': True, 'LORBIT': 11, 'LREAL': 'Auto', 'LVTOT': True, 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'METAGGA': 'R2SCAN', 'NELM': 200, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Am': 'Am', 'Ar': 'Ar', 'As': 'As', 'At': 'At', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cf': 'Cf', 'Cl': 'Cl', 'Cm': 'Cm', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Fr': 'Fr_sv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Po': 'Po_d', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Ra': 'Ra_sv', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Rn': 'Rn', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_sv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_3', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_54'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'ALL', 'EDIFF': 1e-05, 'EDIFFG': -0.02, 'ENAUG': 1360, 'ENCUT': 680, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': 0, 'ISPIN': 2, 'KSPACING': 0.22, 'LAECHG': True, 'LASPH': True, 'LCHARG': True, 'LELF': False, 'LMIXTAU': True, 'LORBIT': 11, 'LREAL': 'Auto', 'LVTOT': True, 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'METAGGA': 'R2SCAN', 'NELM': 200, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Am': 'Am', 'Ar': 'Ar', 'As': 'As', 'At': 'At', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cf': 'Cf', 'Cl': 'Cl', 'Cm': 'Cm', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Fr': 'Fr_sv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Po': 'Po_d', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Ra': 'Ra_sv', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Rn': 'Rn', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_sv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_3', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_54'}[source]

                                                                              -auto_ismear: bool = True[source]
                                                                              +auto_ismear: bool = True[source]
                                                                              -auto_kspacing: bool = True[source]
                                                                              +auto_kspacing: bool = True[source]
                                                                              -bandgap: float | None = None[source]
                                                                              +bandgap: float | None = None[source]
                                                                              -user_potcar_functional: UserPotcarFunctional = 'PBE_54'[source]
                                                                              +user_potcar_functional: UserPotcarFunctional = 'PBE_54'[source]

                                                                              -class MPScanStaticSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = 'PBE_54', force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = True, auto_ismear: bool = True, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = ('PBE_52', 'PBE_54', 'PBE_64'), lepsilon: bool = False, lcalcpol: bool = False)[source]
                                                                              +class MPScanStaticSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = 'PBE_54', force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = True, auto_ismear: bool = True, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = ('PBE_52', 'PBE_54', 'PBE_64'), lepsilon: bool = False, lcalcpol: bool = False)[source]

                                                                              Bases: MPScanRelaxSet

                                                                              Create input files for a static calculation using the accurate and numerically efficient r2SCAN variant of the Strongly Constrained and Appropriately Normed @@ -6402,35 +6564,35 @@

                                                                              Submodules
                                                                              -auto_kspacing: bool = True[source]
                                                                              +auto_kspacing: bool = True[source]

                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -inherit_incar: bool = True[source]
                                                                              +inherit_incar: bool = True[source]
                                                                              -lcalcpol: bool = False[source]
                                                                              +lcalcpol: bool = False[source]
                                                                              -lepsilon: bool = False[source]
                                                                              +lepsilon: bool = False[source]
                                                                              -class MPStaticSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, lepsilon: bool = False, lcalcpol: bool = False, reciprocal_density: int = 100, small_gap_multiply: tuple[float, float] | None = None)[source]
                                                                              +class MPStaticSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, lepsilon: bool = False, lcalcpol: bool = False, reciprocal_density: int = 100, small_gap_multiply: tuple[float, float] | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              Create input files for a static calculation.

                                                                              @@ -6453,51 +6615,51 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -property incar_updates: dict[source]
                                                                              +property incar_updates: dict[source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -inherit_incar: bool = True[source]
                                                                              +inherit_incar: bool = True[source]
                                                                              -property kpoints_updates: dict | Kpoints[source]
                                                                              +property kpoints_updates: dict | Kpoints[source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              -lcalcpol: bool = False[source]
                                                                              +lcalcpol: bool = False[source]
                                                                              -lepsilon: bool = False[source]
                                                                              +lepsilon: bool = False[source]
                                                                              -reciprocal_density: int = 100[source]
                                                                              +reciprocal_density: int = 100[source]
                                                                              -small_gap_multiply: tuple[float, float] | None = None[source]
                                                                              +small_gap_multiply: tuple[float, float] | None = None[source]
                                                                              -class MVLElasticSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]
                                                                              +class MVLElasticSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              MVL denotes VASP input sets that are implemented by the Materials Virtual Lab (https://materialsvirtuallab.org) for various research.

                                                                              @@ -6523,25 +6685,25 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -potim: float = 0.015[source]
                                                                              +potim: float = 0.015[source]

                                                                              -class MVLGBSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, k_product: int = 40, slab_mode: bool = False, is_metal: bool = True)[source]
                                                                              +class MVLGBSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, k_product: int = 40, slab_mode: bool = False, is_metal: bool = True)[source]

                                                                              Bases: VaspInputSet

                                                                              Write a VASP input files for grain boundary calculations, slab or bulk.

                                                                              @@ -6563,42 +6725,42 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -is_metal: bool = True[source]
                                                                              +is_metal: bool = True[source]
                                                                              -k_product: int = 40[source]
                                                                              +k_product: int = 40[source]
                                                                              -property kpoints_updates: Kpoints[source]
                                                                              +property kpoints_updates: Kpoints[source]

                                                                              k_product is kpoint number * length for a & b directions, also for c direction in bulk calculations Automatic mesh & Gamma is the default setting.

                                                                              -slab_mode: bool = False[source]
                                                                              +slab_mode: bool = False[source]
                                                                              -class MVLGWSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = True, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, reciprocal_density: float = 100, mode: str = 'STATIC', copy_wavecar: bool = True, nbands_factor: int = 5, ncores: int = 16, nbands: int | None = None)[source]
                                                                              +class MVLGWSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = True, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool = True, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, reciprocal_density: float = 100, mode: str = 'STATIC', copy_wavecar: bool = True, nbands_factor: int = 5, ncores: int = 16, nbands: int | None = None)[source]

                                                                              Bases: VaspInputSet

                                                                              MVL denotes VASP input sets that are implemented by the Materials Virtual Lab (https://materialsvirtuallab.org) for various research. This is a @@ -6638,27 +6800,27 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'Normal', 'EDIFF': 1e-08, 'IBRION': -1, 'ICHARG': 1, 'ISMEAR': 0, 'ISPIN': 2, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': True, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'PREC': 'Accurate', 'SIGMA': 0.01}, 'KPOINTS': {'reciprocal_density': 100}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag_sv_GW', 'Al': 'Al_GW', 'Ar': 'Ar_GW', 'As': 'As_GW', 'At': 'At_d_GW', 'Au': 'Au_sv_GW', 'B': 'B_GW', 'Ba': 'Ba_sv_GW', 'Be': 'Be_sv_GW', 'Bi': 'Bi_d_GW', 'Br': 'Br_GW', 'C': 'C_GW', 'Ca': 'Ca_sv_GW', 'Cd': 'Cd_sv_GW', 'Ce': 'Ce_GW', 'Cl': 'Cl_GW', 'Co': 'Co_sv_GW', 'Cr': 'Cr_sv_GW', 'Cs': 'Cs_sv_GW', 'Cu': 'Cu_sv_GW', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F_GW', 'Fe': 'Fe_sv_GW', 'Ga': 'Ga_d_GW', 'Gd': 'Gd', 'Ge': 'Ge_d_GW', 'H': 'H_GW', 'He': 'He_GW', 'Hf': 'Hf_sv_GW', 'Hg': 'Hg_sv_GW', 'Ho': 'Ho_3', 'I': 'I_GW', 'In': 'In_d_GW', 'Ir': 'Ir_sv_GW', 'K': 'K_sv_GW', 'Kr': 'Kr_GW', 'La': 'La_GW', 'Li': 'Li_sv_GW', 'Lu': 'Lu_3', 'Mg': 'Mg_sv_GW', 'Mn': 'Mn_sv_GW', 'Mo': 'Mo_sv_GW', 'N': 'N_GW', 'Na': 'Na_sv_GW', 'Nb': 'Nb_sv_GW', 'Nd': 'Nd_3', 'Ne': 'Ne_GW', 'Ni': 'Ni_sv_GW', 'Np': 'Np', 'O': 'O_GW', 'Os': 'Os_sv_GW', 'P': 'P_GW', 'Pa': 'Pa', 'Pb': 'Pb_d_GW', 'Pd': 'Pd_sv_GW', 'Pm': 'Pm_3', 'Po': 'Po_d_GW', 'Pr': 'Pr_3', 'Pt': 'Pt_sv_GW', 'Pu': 'Pu', 'Rb': 'Rb_sv_GW', 'Re': 'Re_sv_GW', 'Rh': 'Rh_sv_GW', 'Rn': 'Rn_d_GW', 'Ru': 'Ru_sv_GW', 'S': 'S_GW', 'Sb': 'Sb_d_GW', 'Sc': 'Sc_sv_GW', 'Se': 'Se_GW', 'Si': 'Si_GW', 'Sm': 'Sm_3', 'Sn': 'Sn_d_GW', 'Sr': 'Sr_sv_GW', 'Ta': 'Ta_sv_GW', 'Tb': 'Tb_3', 'Tc': 'Tc_sv_GW', 'Te': 'Te_GW', 'Th': 'Th', 'Ti': 'Ti_sv_GW', 'Tl': 'Tl_d_GW', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_sv_GW', 'W': 'W_sv_GW', 'Xe': 'Xe_GW', 'Y': 'Y_sv_GW', 'Yb': 'Yb_3', 'Zn': 'Zn_sv_GW', 'Zr': 'Zr_sv_GW'}, 'POTCAR_FUNCTIONAL': 'PBE_54'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'Normal', 'EDIFF': 1e-08, 'IBRION': -1, 'ICHARG': 1, 'ISMEAR': 0, 'ISPIN': 2, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': True, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'PREC': 'Accurate', 'SIGMA': 0.01}, 'KPOINTS': {'reciprocal_density': 100}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag_sv_GW', 'Al': 'Al_GW', 'Ar': 'Ar_GW', 'As': 'As_GW', 'At': 'At_d_GW', 'Au': 'Au_sv_GW', 'B': 'B_GW', 'Ba': 'Ba_sv_GW', 'Be': 'Be_sv_GW', 'Bi': 'Bi_d_GW', 'Br': 'Br_GW', 'C': 'C_GW', 'Ca': 'Ca_sv_GW', 'Cd': 'Cd_sv_GW', 'Ce': 'Ce_GW', 'Cl': 'Cl_GW', 'Co': 'Co_sv_GW', 'Cr': 'Cr_sv_GW', 'Cs': 'Cs_sv_GW', 'Cu': 'Cu_sv_GW', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F_GW', 'Fe': 'Fe_sv_GW', 'Ga': 'Ga_d_GW', 'Gd': 'Gd', 'Ge': 'Ge_d_GW', 'H': 'H_GW', 'He': 'He_GW', 'Hf': 'Hf_sv_GW', 'Hg': 'Hg_sv_GW', 'Ho': 'Ho_3', 'I': 'I_GW', 'In': 'In_d_GW', 'Ir': 'Ir_sv_GW', 'K': 'K_sv_GW', 'Kr': 'Kr_GW', 'La': 'La_GW', 'Li': 'Li_sv_GW', 'Lu': 'Lu_3', 'Mg': 'Mg_sv_GW', 'Mn': 'Mn_sv_GW', 'Mo': 'Mo_sv_GW', 'N': 'N_GW', 'Na': 'Na_sv_GW', 'Nb': 'Nb_sv_GW', 'Nd': 'Nd_3', 'Ne': 'Ne_GW', 'Ni': 'Ni_sv_GW', 'Np': 'Np', 'O': 'O_GW', 'Os': 'Os_sv_GW', 'P': 'P_GW', 'Pa': 'Pa', 'Pb': 'Pb_d_GW', 'Pd': 'Pd_sv_GW', 'Pm': 'Pm_3', 'Po': 'Po_d_GW', 'Pr': 'Pr_3', 'Pt': 'Pt_sv_GW', 'Pu': 'Pu', 'Rb': 'Rb_sv_GW', 'Re': 'Re_sv_GW', 'Rh': 'Rh_sv_GW', 'Rn': 'Rn_d_GW', 'Ru': 'Ru_sv_GW', 'S': 'S_GW', 'Sb': 'Sb_d_GW', 'Sc': 'Sc_sv_GW', 'Se': 'Se_GW', 'Si': 'Si_GW', 'Sm': 'Sm_3', 'Sn': 'Sn_d_GW', 'Sr': 'Sr_sv_GW', 'Ta': 'Ta_sv_GW', 'Tb': 'Tb_3', 'Tc': 'Tc_sv_GW', 'Te': 'Te_GW', 'Th': 'Th', 'Ti': 'Ti_sv_GW', 'Tl': 'Tl_d_GW', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_sv_GW', 'W': 'W_sv_GW', 'Xe': 'Xe_GW', 'Y': 'Y_sv_GW', 'Yb': 'Yb_3', 'Zn': 'Zn_sv_GW', 'Zr': 'Zr_sv_GW'}, 'POTCAR_FUNCTIONAL': 'PBE_54'}[source]

                                                                              -SUPPORTED_MODES = ('DIAG', 'GW', 'STATIC', 'BSE')[source]
                                                                              +SUPPORTED_MODES = ('DIAG', 'GW', 'STATIC', 'BSE')[source]
                                                                              -copy_wavecar: bool = True[source]
                                                                              +copy_wavecar: bool = True[source]
                                                                              -force_gamma: bool = True[source]
                                                                              +force_gamma: bool = True[source]
                                                                              -classmethod from_prev_calc(prev_calc_dir: PathLike, mode: str = 'DIAG', **kwargs) Self[source]
                                                                              +classmethod from_prev_calc(prev_calc_dir: PathLike, mode: str = 'DIAG', **kwargs) Self[source]

                                                                              Generate a set of VASP input files for GW or BSE calculations from a directory of previous Exact Diag VASP run.

                                                                              @@ -6678,51 +6840,51 @@

                                                                              Submodules
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -inherit_incar: bool = True[source]
                                                                              +inherit_incar: bool = True[source]
                                                                              -property kpoints_updates: dict[str, Any][source]
                                                                              +property kpoints_updates: dict[str, Any][source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              -mode: str = 'STATIC'[source]
                                                                              +mode: str = 'STATIC'[source]
                                                                              -nbands: int | None = None[source]
                                                                              +nbands: int | None = None[source]
                                                                              -nbands_factor: int = 5[source]
                                                                              +nbands_factor: int = 5[source]
                                                                              -ncores: int = 16[source]
                                                                              +ncores: int = 16[source]
                                                                              -reciprocal_density: float = 100[source]
                                                                              +reciprocal_density: float = 100[source]
                                                                              -class MVLNPTMDSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, start_temp: float = 0.0, end_temp: float = 300.0, nsteps: int = 1000, time_step: float = 2, spin_polarized: bool = False)[source]
                                                                              +class MVLNPTMDSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, start_temp: float = 0.0, end_temp: float = 300.0, nsteps: int = 1000, time_step: float = 2, spin_polarized: bool = False)[source]

                                                                              Bases: VaspInputSet

                                                                              Write a VASP MD run in NPT ensemble.

                                                                              Notes

                                                                              @@ -6730,51 +6892,51 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF': 1e-05, 'ENCUT': 520, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'ISYM': 0, 'LDAU': True, 'LDAUJ': {'F': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'O': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'S': {'Fe': 0, 'Mn': 0}}, 'LDAUL': {'F': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'O': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'S': {'Fe': 2, 'Mn': 2.5}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'O': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'S': {'Fe': 1.9, 'Mn': 2.5}}, 'LORBIT': '11', 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 200, 'NELMIN': 6, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'length': 25}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': {'hash': 'd6854224d20e3de6e6fd7399503791d1', 'symbol': 'Ac'}, 'Ag': {'hash': 'e8ffa02fe3f3a51338ac1ac91ae968b9', 'symbol': 'Ag'}, 'Al': {'hash': 'a6fd9a46aec185f4ad2acd0cbe4ae2fa', 'symbol': 'Al'}, 'Ar': {'hash': 'e782fc6292623b396091bf8b871c272f', 'symbol': 'Ar'}, 'As': {'hash': '8005364db225a254e52cba350bedd032', 'symbol': 'As'}, 'Au': {'hash': 'a9182d436a13194b744640ac940ab9b0', 'symbol': 'Au'}, 'B': {'hash': '18ed2875dfa6305324cec3d7d59273ae', 'symbol': 'B'}, 'Ba': {'hash': 'c0477913afb63dfae3439f3534fbf0ed', 'symbol': 'Ba_sv'}, 'Be': {'hash': 'fb974e44d56a8c62c6bbd1a1eb70c3a7', 'symbol': 'Be'}, 'Bi': {'hash': 'e29661c79d59abae3b3ba69eae24b1a5', 'symbol': 'Bi'}, 'Br': {'hash': '40f9594b4506684a69158c8975cfb9d6', 'symbol': 'Br'}, 'C': {'hash': 'c0a8167dbb174fe492a3db7f5006c0f8', 'symbol': 'C'}, 'Ca': {'hash': 'eb006721e214c04b3c13146e81b3a27d', 'symbol': 'Ca_sv'}, 'Cd': {'hash': '0506b2d0ac28d5fe2b5ced77a701aa86', 'symbol': 'Cd'}, 'Ce': {'hash': 'ff3a09f2ff91798e58eb4b9854e9be4a', 'symbol': 'Ce'}, 'Cl': {'hash': '779b9901046c78fe51c5d80224642aeb', 'symbol': 'Cl'}, 'Co': {'hash': 'b169bca4e137294d2ab3df8cbdd09083', 'symbol': 'Co'}, 'Cr': {'hash': '82c14307937c7509fda4e9bc023d243d', 'symbol': 'Cr'}, 'Cs': {'hash': '096b53a7d80cc0086976bcda50d536e5', 'symbol': 'Cs_sv'}, 'Cu': {'hash': '8ca4e43a30de0c397e51f16bbb20d678', 'symbol': 'Cu'}, 'Dy': {'hash': 'd4a05220ab0a2d4c03a76872ea724a1e', 'symbol': 'Dy_3'}, 'Er': {'hash': 'daa65a04877317f8c3c593ddeaa8a132', 'symbol': 'Er_3'}, 'Eu': {'hash': 'd466d046adf21f6146ee9644049ea268', 'symbol': 'Eu'}, 'F': {'hash': '180141c33d032bfbfff30b3bea9d23dd', 'symbol': 'F'}, 'Fe': {'hash': '9530da8244e4dac17580869b4adab115', 'symbol': 'Fe'}, 'Ga': {'hash': '6e0b9d58412b1bfcd7252aff13d476c2', 'symbol': 'Ga'}, 'Gd': {'hash': '1f0d42b1e5f6769d319d3f247992aeb9', 'symbol': 'Gd'}, 'Ge': {'hash': '79e788788c31e196a460553010512d3f', 'symbol': 'Ge'}, 'H': {'hash': 'bb43c666e3d36577264afe07669e9582', 'symbol': 'H'}, 'He': {'hash': '47f9434aa3db96c85d7c4b3e4c2df09b', 'symbol': 'He'}, 'Hf': {'hash': 'b113f150cbf9c736f8244a6c25b0482e', 'symbol': 'Hf'}, 'Hg': {'hash': 'c2f15dfb5fd53396c5427635e5019160', 'symbol': 'Hg'}, 'Ho': {'hash': '661891464a27e87cf7e1324dd1893b77', 'symbol': 'Ho_3'}, 'I': {'hash': 'f4ff16a495dd361ff5824ee61b418bb0', 'symbol': 'I'}, 'In': {'hash': '7df38c0cdb4e6d9a9b93f09d690bb3ae', 'symbol': 'In'}, 'Ir': {'hash': 'dbcf7dcc6f4fb40df7b3d26904f60a66', 'symbol': 'Ir'}, 'K': {'hash': '3e84f86d37f203a4fb01de36af57e430', 'symbol': 'K_sv'}, 'Kr': {'hash': '39b9b85ae3982e6c012fb549b2840ce5', 'symbol': 'Kr'}, 'La': {'hash': '9b3ce03d18f7c0b40471a817ff91b287', 'symbol': 'La'}, 'Li': {'hash': '65e83282d1707ec078c1012afbd05be8', 'symbol': 'Li'}, 'Lu': {'hash': 'd40a90babf1224b88ffb4c3273ac3848', 'symbol': 'Lu_3'}, 'Mg': {'hash': '1771eb72adbbfa6310d66e7517e49930', 'symbol': 'Mg'}, 'Mn': {'hash': 'd082dba29b57ab59b3165e605dbf71b8', 'symbol': 'Mn'}, 'Mo': {'hash': '84e18fd84a98e3d7fa8f055952410df0', 'symbol': 'Mo_pv'}, 'N': {'hash': 'b98fd027ddebc67da4063ff2cabbc04b', 'symbol': 'N'}, 'Na': {'hash': '1a89e79f7e21d99e8cf5788979f6a987', 'symbol': 'Na'}, 'Nb': {'hash': '7bcee99a4dc3094be0f9fd7961c02966', 'symbol': 'Nb_pv'}, 'Nd': {'hash': '0c64e63070cee837c967283fffa001df', 'symbol': 'Nd'}, 'Ne': {'hash': '52064eee378b9e37a295a674f1c278f0', 'symbol': 'Ne'}, 'Ni': {'hash': '653f5772e68b2c7fd87ffd1086c0d710', 'symbol': 'Ni'}, 'Np': {'hash': '20cb30b714200c4db870550b288ac4cd', 'symbol': 'Np'}, 'O': {'hash': '7a25bc5b9a5393f46600a4939d357982', 'symbol': 'O'}, 'Os': {'hash': '35c2cb48d48a9c38c40fb82bbe70626d', 'symbol': 'Os'}, 'P': {'hash': '7dc3393307131ae67785a0cdacb61d5f', 'symbol': 'P'}, 'Pa': {'hash': 'a1fdb1089d0727f415416ec8082246ba', 'symbol': 'Pa'}, 'Pb': {'hash': '704c2c967247d7f84090d2536c91877d', 'symbol': 'Pb'}, 'Pd': {'hash': 'a395eb3aaf2fcab12fac3030a1146f61', 'symbol': 'Pd'}, 'Pm': {'hash': 'a2c9485ea86b2a7cf175077e6e5c7b3e', 'symbol': 'Pm'}, 'Pr': {'hash': '92f191499bf5346ea652bb806350ad87', 'symbol': 'Pr'}, 'Pt': {'hash': 'a604ea3c6a9cc23c739b762f625cf449', 'symbol': 'Pt'}, 'Pu': {'hash': 'f1d01e845dccc52d448679911f301a73', 'symbol': 'Pu'}, 'Rb': {'hash': 'e447c648d870b066b3514e6b800727ab', 'symbol': 'Rb_pv'}, 'Re': {'hash': '72385e193c92a8acfe17ea49004c2be1', 'symbol': 'Re'}, 'Rh': {'hash': '2c3dba3fcc6058ca1b1cfa75e45084bc', 'symbol': 'Rh'}, 'Ru': {'hash': '7925f4d4b68076d70af7cd86eef9ba8d', 'symbol': 'Ru_pv'}, 'S': {'hash': 'd368db6899d8839859bbee4811a42a88', 'symbol': 'S'}, 'Sb': {'hash': 'd82c022b02fc5344e85bd1909f9ee3e7', 'symbol': 'Sb'}, 'Sc': {'hash': 'dc386f505ad0c43385a7715b4111cb75', 'symbol': 'Sc_sv'}, 'Se': {'hash': '67a8804ede9f1112726e3d136978ef19', 'symbol': 'Se'}, 'Si': {'hash': 'b2b0ea6feb62e7cde209616683b8f7f5', 'symbol': 'Si'}, 'Sm': {'hash': 'e5e274e7cd99602ca81d146155abdf88', 'symbol': 'Sm_3'}, 'Sn': {'hash': '849b0795e148f93113a06be8fd5f5001', 'symbol': 'Sn_d'}, 'Sr': {'hash': 'ca6a5429c120a0ab705824386a76fe5b', 'symbol': 'Sr_sv'}, 'Ta': {'hash': 'd4e2cfe9338ef80da592d5bb9dc782c7', 'symbol': 'Ta'}, 'Tb': {'hash': '0790955c547003956c0fd4f080f7f508', 'symbol': 'Tb_3'}, 'Tc': {'hash': '9592642886319309a39d55c5717c6f48', 'symbol': 'Tc'}, 'Te': {'hash': '72719856e22fb1d3032df6f96d98a0f2', 'symbol': 'Te'}, 'Th': {'hash': 'aea79f322180fa6f0bfa74cb2a156dcf', 'symbol': 'Th'}, 'Ti': {'hash': 'c617e8b539c3f44a0ab6e8da2a92d318', 'symbol': 'Ti'}, 'Tl': {'hash': '2aa0d5406aaab7ebfbc761da382f1352', 'symbol': 'Tl'}, 'Tm': {'hash': '94a07cb7949b01305cb161da0cbfb492', 'symbol': 'Tm_3'}, 'U': {'hash': '72702eabbb1bc02b4167590dc848ed5d', 'symbol': 'U'}, 'V': {'hash': '7f1297a2e1d963e2a4d81b61f85e4ded', 'symbol': 'V_pv'}, 'W': {'hash': '2a33e0d5c700640535f60ac0a12177ab', 'symbol': 'W_pv'}, 'Xe': {'hash': '338472e581f58b41d37c002a5e22353b', 'symbol': 'Xe'}, 'Y': {'hash': '4ed187e77cd54f198bb88020278b143d', 'symbol': 'Y_sv'}, 'Yb': {'hash': '9f472bd422f640710f7d93e2d9ce89f4', 'symbol': 'Yb'}, 'Zn': {'hash': 'e35ee27f8483a63bb68dbc236a343af3', 'symbol': 'Zn'}, 'Zr': {'hash': 'd221d2c0bac4f8e81af2f5c42a314274', 'symbol': 'Zr'}}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF': 1e-05, 'ENCUT': 520, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'ISYM': 0, 'LDAU': True, 'LDAUJ': {'F': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'O': {'Ag': 0, 'Co': 0, 'Cr': 0, 'Cu': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Nb': 0, 'Ni': 0, 'Re': 0, 'Ta': 0, 'V': 0, 'W': 0}, 'S': {'Fe': 0, 'Mn': 0}}, 'LDAUL': {'F': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'O': {'Ag': 2, 'Co': 2, 'Cr': 2, 'Cu': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Nb': 2, 'Ni': 2, 'Re': 2, 'Ta': 2, 'V': 2, 'W': 2}, 'S': {'Fe': 2, 'Mn': 2.5}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'O': {'Ag': 1.5, 'Co': 3.4, 'Cr': 3.5, 'Cu': 4, 'Fe': 4.0, 'Mn': 3.9, 'Mo': 4.38, 'Nb': 1.5, 'Ni': 6, 'Re': 2, 'Ta': 2, 'V': 3.1, 'W': 4.0}, 'S': {'Fe': 1.9, 'Mn': 2.5}}, 'LORBIT': '11', 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 200, 'NELMIN': 6, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'length': 25}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': {'hash': 'd6854224d20e3de6e6fd7399503791d1', 'symbol': 'Ac'}, 'Ag': {'hash': 'e8ffa02fe3f3a51338ac1ac91ae968b9', 'symbol': 'Ag'}, 'Al': {'hash': 'a6fd9a46aec185f4ad2acd0cbe4ae2fa', 'symbol': 'Al'}, 'Ar': {'hash': 'e782fc6292623b396091bf8b871c272f', 'symbol': 'Ar'}, 'As': {'hash': '8005364db225a254e52cba350bedd032', 'symbol': 'As'}, 'Au': {'hash': 'a9182d436a13194b744640ac940ab9b0', 'symbol': 'Au'}, 'B': {'hash': '18ed2875dfa6305324cec3d7d59273ae', 'symbol': 'B'}, 'Ba': {'hash': 'c0477913afb63dfae3439f3534fbf0ed', 'symbol': 'Ba_sv'}, 'Be': {'hash': 'fb974e44d56a8c62c6bbd1a1eb70c3a7', 'symbol': 'Be'}, 'Bi': {'hash': 'e29661c79d59abae3b3ba69eae24b1a5', 'symbol': 'Bi'}, 'Br': {'hash': '40f9594b4506684a69158c8975cfb9d6', 'symbol': 'Br'}, 'C': {'hash': 'c0a8167dbb174fe492a3db7f5006c0f8', 'symbol': 'C'}, 'Ca': {'hash': 'eb006721e214c04b3c13146e81b3a27d', 'symbol': 'Ca_sv'}, 'Cd': {'hash': '0506b2d0ac28d5fe2b5ced77a701aa86', 'symbol': 'Cd'}, 'Ce': {'hash': 'ff3a09f2ff91798e58eb4b9854e9be4a', 'symbol': 'Ce'}, 'Cl': {'hash': '779b9901046c78fe51c5d80224642aeb', 'symbol': 'Cl'}, 'Co': {'hash': 'b169bca4e137294d2ab3df8cbdd09083', 'symbol': 'Co'}, 'Cr': {'hash': '82c14307937c7509fda4e9bc023d243d', 'symbol': 'Cr'}, 'Cs': {'hash': '096b53a7d80cc0086976bcda50d536e5', 'symbol': 'Cs_sv'}, 'Cu': {'hash': '8ca4e43a30de0c397e51f16bbb20d678', 'symbol': 'Cu'}, 'Dy': {'hash': 'd4a05220ab0a2d4c03a76872ea724a1e', 'symbol': 'Dy_3'}, 'Er': {'hash': 'daa65a04877317f8c3c593ddeaa8a132', 'symbol': 'Er_3'}, 'Eu': {'hash': 'd466d046adf21f6146ee9644049ea268', 'symbol': 'Eu'}, 'F': {'hash': '180141c33d032bfbfff30b3bea9d23dd', 'symbol': 'F'}, 'Fe': {'hash': '9530da8244e4dac17580869b4adab115', 'symbol': 'Fe'}, 'Ga': {'hash': '6e0b9d58412b1bfcd7252aff13d476c2', 'symbol': 'Ga'}, 'Gd': {'hash': '1f0d42b1e5f6769d319d3f247992aeb9', 'symbol': 'Gd'}, 'Ge': {'hash': '79e788788c31e196a460553010512d3f', 'symbol': 'Ge'}, 'H': {'hash': 'bb43c666e3d36577264afe07669e9582', 'symbol': 'H'}, 'He': {'hash': '47f9434aa3db96c85d7c4b3e4c2df09b', 'symbol': 'He'}, 'Hf': {'hash': 'b113f150cbf9c736f8244a6c25b0482e', 'symbol': 'Hf'}, 'Hg': {'hash': 'c2f15dfb5fd53396c5427635e5019160', 'symbol': 'Hg'}, 'Ho': {'hash': '661891464a27e87cf7e1324dd1893b77', 'symbol': 'Ho_3'}, 'I': {'hash': 'f4ff16a495dd361ff5824ee61b418bb0', 'symbol': 'I'}, 'In': {'hash': '7df38c0cdb4e6d9a9b93f09d690bb3ae', 'symbol': 'In'}, 'Ir': {'hash': 'dbcf7dcc6f4fb40df7b3d26904f60a66', 'symbol': 'Ir'}, 'K': {'hash': '3e84f86d37f203a4fb01de36af57e430', 'symbol': 'K_sv'}, 'Kr': {'hash': '39b9b85ae3982e6c012fb549b2840ce5', 'symbol': 'Kr'}, 'La': {'hash': '9b3ce03d18f7c0b40471a817ff91b287', 'symbol': 'La'}, 'Li': {'hash': '65e83282d1707ec078c1012afbd05be8', 'symbol': 'Li'}, 'Lu': {'hash': 'd40a90babf1224b88ffb4c3273ac3848', 'symbol': 'Lu_3'}, 'Mg': {'hash': '1771eb72adbbfa6310d66e7517e49930', 'symbol': 'Mg'}, 'Mn': {'hash': 'd082dba29b57ab59b3165e605dbf71b8', 'symbol': 'Mn'}, 'Mo': {'hash': '84e18fd84a98e3d7fa8f055952410df0', 'symbol': 'Mo_pv'}, 'N': {'hash': 'b98fd027ddebc67da4063ff2cabbc04b', 'symbol': 'N'}, 'Na': {'hash': '1a89e79f7e21d99e8cf5788979f6a987', 'symbol': 'Na'}, 'Nb': {'hash': '7bcee99a4dc3094be0f9fd7961c02966', 'symbol': 'Nb_pv'}, 'Nd': {'hash': '0c64e63070cee837c967283fffa001df', 'symbol': 'Nd'}, 'Ne': {'hash': '52064eee378b9e37a295a674f1c278f0', 'symbol': 'Ne'}, 'Ni': {'hash': '653f5772e68b2c7fd87ffd1086c0d710', 'symbol': 'Ni'}, 'Np': {'hash': '20cb30b714200c4db870550b288ac4cd', 'symbol': 'Np'}, 'O': {'hash': '7a25bc5b9a5393f46600a4939d357982', 'symbol': 'O'}, 'Os': {'hash': '35c2cb48d48a9c38c40fb82bbe70626d', 'symbol': 'Os'}, 'P': {'hash': '7dc3393307131ae67785a0cdacb61d5f', 'symbol': 'P'}, 'Pa': {'hash': 'a1fdb1089d0727f415416ec8082246ba', 'symbol': 'Pa'}, 'Pb': {'hash': '704c2c967247d7f84090d2536c91877d', 'symbol': 'Pb'}, 'Pd': {'hash': 'a395eb3aaf2fcab12fac3030a1146f61', 'symbol': 'Pd'}, 'Pm': {'hash': 'a2c9485ea86b2a7cf175077e6e5c7b3e', 'symbol': 'Pm'}, 'Pr': {'hash': '92f191499bf5346ea652bb806350ad87', 'symbol': 'Pr'}, 'Pt': {'hash': 'a604ea3c6a9cc23c739b762f625cf449', 'symbol': 'Pt'}, 'Pu': {'hash': 'f1d01e845dccc52d448679911f301a73', 'symbol': 'Pu'}, 'Rb': {'hash': 'e447c648d870b066b3514e6b800727ab', 'symbol': 'Rb_pv'}, 'Re': {'hash': '72385e193c92a8acfe17ea49004c2be1', 'symbol': 'Re'}, 'Rh': {'hash': '2c3dba3fcc6058ca1b1cfa75e45084bc', 'symbol': 'Rh'}, 'Ru': {'hash': '7925f4d4b68076d70af7cd86eef9ba8d', 'symbol': 'Ru_pv'}, 'S': {'hash': 'd368db6899d8839859bbee4811a42a88', 'symbol': 'S'}, 'Sb': {'hash': 'd82c022b02fc5344e85bd1909f9ee3e7', 'symbol': 'Sb'}, 'Sc': {'hash': 'dc386f505ad0c43385a7715b4111cb75', 'symbol': 'Sc_sv'}, 'Se': {'hash': '67a8804ede9f1112726e3d136978ef19', 'symbol': 'Se'}, 'Si': {'hash': 'b2b0ea6feb62e7cde209616683b8f7f5', 'symbol': 'Si'}, 'Sm': {'hash': 'e5e274e7cd99602ca81d146155abdf88', 'symbol': 'Sm_3'}, 'Sn': {'hash': '849b0795e148f93113a06be8fd5f5001', 'symbol': 'Sn_d'}, 'Sr': {'hash': 'ca6a5429c120a0ab705824386a76fe5b', 'symbol': 'Sr_sv'}, 'Ta': {'hash': 'd4e2cfe9338ef80da592d5bb9dc782c7', 'symbol': 'Ta'}, 'Tb': {'hash': '0790955c547003956c0fd4f080f7f508', 'symbol': 'Tb_3'}, 'Tc': {'hash': '9592642886319309a39d55c5717c6f48', 'symbol': 'Tc'}, 'Te': {'hash': '72719856e22fb1d3032df6f96d98a0f2', 'symbol': 'Te'}, 'Th': {'hash': 'aea79f322180fa6f0bfa74cb2a156dcf', 'symbol': 'Th'}, 'Ti': {'hash': 'c617e8b539c3f44a0ab6e8da2a92d318', 'symbol': 'Ti'}, 'Tl': {'hash': '2aa0d5406aaab7ebfbc761da382f1352', 'symbol': 'Tl'}, 'Tm': {'hash': '94a07cb7949b01305cb161da0cbfb492', 'symbol': 'Tm_3'}, 'U': {'hash': '72702eabbb1bc02b4167590dc848ed5d', 'symbol': 'U'}, 'V': {'hash': '7f1297a2e1d963e2a4d81b61f85e4ded', 'symbol': 'V_pv'}, 'W': {'hash': '2a33e0d5c700640535f60ac0a12177ab', 'symbol': 'W_pv'}, 'Xe': {'hash': '338472e581f58b41d37c002a5e22353b', 'symbol': 'Xe'}, 'Y': {'hash': '4ed187e77cd54f198bb88020278b143d', 'symbol': 'Y_sv'}, 'Yb': {'hash': '9f472bd422f640710f7d93e2d9ce89f4', 'symbol': 'Yb'}, 'Zn': {'hash': 'e35ee27f8483a63bb68dbc236a343af3', 'symbol': 'Zn'}, 'Zr': {'hash': 'd221d2c0bac4f8e81af2f5c42a314274', 'symbol': 'Zr'}}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -end_temp: float = 300.0[source]
                                                                              +end_temp: float = 300.0[source]
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -property kpoints_updates: Kpoints[source]
                                                                              +property kpoints_updates: Kpoints[source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              -nsteps: int = 1000[source]
                                                                              +nsteps: int = 1000[source]
                                                                              -spin_polarized: bool = False[source]
                                                                              +spin_polarized: bool = False[source]
                                                                              -start_temp: float = 0.0[source]
                                                                              +start_temp: float = 0.0[source]
                                                                              -time_step: float = 2[source]
                                                                              +time_step: float = 2[source]

                                                                              -class MVLRelax52Set(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = 'PBE_52', force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = ('PBE_52', 'PBE_54', 'PBE_64'))[source]
                                                                              +class MVLRelax52Set(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = 'PBE_52', force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = ('PBE_52', 'PBE_54', 'PBE_64'))[source]

                                                                              Bases: VaspInputSet

                                                                              Implementation of VaspInputSet utilizing the public Materials Project parameters for INCAR & KPOINTS and VASP’s recommended PAW potentials for @@ -6807,19 +6969,19 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Am': 'Am', 'Ar': 'Ar', 'As': 'As', 'At': 'At_d', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be', 'Bi': 'Bi_d', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Cm': 'Cm', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu_2', 'F': 'F', 'Fe': 'Fe', 'Fr': 'Fr_sv', 'Ga': 'Ga_d', 'Gd': 'Gd_3', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg', 'Mn': 'Mn_pv', 'Mo': 'Mo_sv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_sv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni', 'Np': 'Np', 'O': 'O', 'Os': 'Os', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Po': 'Po_d', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Ra': 'Ra_sv', 'Rb': 'Rb_sv', 'Re': 'Re', 'Rh': 'Rh_pv', 'Rn': 'Rn', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_sv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_sv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_52'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ICHARG': 1, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Am': 'Am', 'Ar': 'Ar', 'As': 'As', 'At': 'At_d', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be', 'Bi': 'Bi_d', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Cm': 'Cm', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu_2', 'F': 'F', 'Fe': 'Fe', 'Fr': 'Fr_sv', 'Ga': 'Ga_d', 'Gd': 'Gd_3', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg', 'Mn': 'Mn_pv', 'Mo': 'Mo_sv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_sv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni', 'Np': 'Np', 'O': 'O', 'Os': 'Os', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Po': 'Po_d', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Ra': 'Ra_sv', 'Rb': 'Rb_sv', 'Re': 'Re', 'Rh': 'Rh_pv', 'Rn': 'Rn', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_sv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_sv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_52'}[source]

                                                                              -user_potcar_functional: UserPotcarFunctional = 'PBE_52'[source]
                                                                              +user_potcar_functional: UserPotcarFunctional = 'PBE_52'[source]

                                                                              -class MVLScanRelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = 'PBE_52', force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = ('PBE_52', 'PBE_54', 'PBE_64'))[source]
                                                                              +class MVLScanRelaxSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = 'PBE_52', force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = ('PBE_52', 'PBE_54', 'PBE_64'))[source]

                                                                              Bases: VaspInputSet

                                                                              Write a relax input set using Strongly Constrained and Appropriately Normed (SCAN) semilocal density functional.

                                                                              @@ -6850,25 +7012,25 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -user_potcar_functional: UserPotcarFunctional = 'PBE_52'[source]
                                                                              +user_potcar_functional: UserPotcarFunctional = 'PBE_52'[source]

                                                                              -class MVLSlabSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, k_product: int = 50, bulk: bool = False, auto_dipole: bool = False, set_mix: bool = True)[source]
                                                                              +class MVLSlabSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, k_product: int = 50, bulk: bool = False, auto_dipole: bool = False, set_mix: bool = True)[source]

                                                                              Bases: VaspInputSet

                                                                              Write a set of slab VASP runs, including both slabs (along the c direction) and orient unit cells (bulk), to ensure the same KPOINTS, POTCAR and INCAR criterion.

                                                                              @@ -6888,12 +7050,12 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'FAST', 'EDIFF_PER_ATOM': 5e-05, 'ENCUT': 520, 'IBRION': 2, 'ISIF': 3, 'ISMEAR': -5, 'ISPIN': 2, 'LASPH': True, 'LDAU': True, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUPRINT': 1, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LORBIT': 11, 'LREAL': 'AUTO', 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 100, 'NSW': 99, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'KPOINTS': {'reciprocal_density': 64}, 'PARENT': 'VASPIncarBase', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Ar': 'Ar', 'As': 'As', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cl': 'Cl', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_pv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_2', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE'}[source]

                                                                              -as_dict(verbosity: int = 2) dict[str, Any][source]
                                                                              +as_dict(verbosity: int = 2) dict[str, Any][source]
                                                                              Parameters:

                                                                              verbosity (int) – Verbosity of dict. e.g. whether to include Structure.

                                                                              @@ -6909,28 +7071,28 @@

                                                                              Submodules
                                                                              -auto_dipole: bool = False[source]
                                                                              +auto_dipole: bool = False[source]

                                                                              -bulk: bool = False[source]
                                                                              +bulk: bool = False[source]
                                                                              -property incar_updates: dict[str, Any][source]
                                                                              +property incar_updates: dict[str, Any][source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -k_product: int = 50[source]
                                                                              +k_product: int = 50[source]
                                                                              -property kpoints_updates: Kpoints[source]
                                                                              +property kpoints_updates: Kpoints[source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              k_product, default to 50, is kpoint number * length for a & b directions, also for c direction in bulk calculations @@ -6939,14 +7101,14 @@

                                                                              Submodules
                                                                              -set_mix: bool = True[source]
                                                                              +set_mix: bool = True[source]

                                                                              -class MatPESStaticSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: tuple[str, ...] | bool = ('LPEAD', 'NGX', 'NGY', 'NGZ', 'SYMPREC', 'IMIX', 'LMAXMIX', 'KGAMMA', 'ISYM', 'NCORE', 'NPAR', 'NELMIN', 'IOPT', 'NBANDS', 'KPAR', 'AMIN', 'NELMDL', 'BMIX', 'AMIX_MAG', 'BMIX_MAG'), auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: dict | str | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, xc_functional: Literal['R2SCAN', 'PBE', 'PBE+U'] = 'PBE')[source]
                                                                              +class MatPESStaticSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: tuple[str, ...] | bool = ('LPEAD', 'NGX', 'NGY', 'NGZ', 'SYMPREC', 'IMIX', 'LMAXMIX', 'KGAMMA', 'ISYM', 'NCORE', 'NPAR', 'NELMIN', 'IOPT', 'NBANDS', 'KPAR', 'AMIN', 'NELMDL', 'BMIX', 'AMIX_MAG', 'BMIX_MAG'), auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: dict | str | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None, xc_functional: Literal['R2SCAN', 'PBE', 'PBE+U'] = 'PBE')[source]

                                                                              Bases: VaspInputSet

                                                                              Create input files for a MatPES static calculation.

                                                                              The goal of MatPES is to generate potential energy surface data. This is a distinctly different @@ -6970,35 +7132,35 @@

                                                                              Submodules
                                                                              -CONFIG = {'INCAR': {'ALGO': 'Normal', 'EDIFF': 1e-05, 'ENAUG': 1360, 'ENCUT': 680, 'GGA': 'PE', 'ISMEAR': 0, 'ISPIN': 2, 'KSPACING': 0.22, 'LAECHG': True, 'LASPH': True, 'LCHARG': True, 'LDAU': False, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LMAXMIX': 6, 'LMIXTAU': True, 'LORBIT': 11, 'LREAL': False, 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 200, 'NSW': 0, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'PARENT': 'PBE64Base', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Am': 'Am', 'Ar': 'Ar', 'As': 'As', 'At': 'At', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cf': 'Cf', 'Cl': 'Cl', 'Cm': 'Cm', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_3', 'Er': 'Er_3', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Fr': 'Fr_sv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_3', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_3', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_3', 'Po': 'Po_d', 'Pr': 'Pr_3', 'Pt': 'Pt', 'Pu': 'Pu', 'Ra': 'Ra_sv', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Rn': 'Rn', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_3', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_3', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_3', 'U': 'U', 'V': 'V_pv', 'W': 'W_sv', 'Xe': 'Xe', 'Y': 'Y_sv', 'Yb': 'Yb_3', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_64'}[source]
                                                                              +CONFIG = {'INCAR': {'ALGO': 'Normal', 'EDIFF': 1e-05, 'ENAUG': 1360, 'ENCUT': 680, 'GGA': 'PE', 'ISMEAR': 0, 'ISPIN': 2, 'KSPACING': 0.22, 'LAECHG': True, 'LASPH': True, 'LCHARG': True, 'LDAU': False, 'LDAUJ': {'F': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}, 'O': {'Co': 0, 'Cr': 0, 'Fe': 0, 'Mn': 0, 'Mo': 0, 'Ni': 0, 'V': 0, 'W': 0}}, 'LDAUL': {'F': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}, 'O': {'Co': 2, 'Cr': 2, 'Fe': 2, 'Mn': 2, 'Mo': 2, 'Ni': 2, 'V': 2, 'W': 2}}, 'LDAUTYPE': 2, 'LDAUU': {'F': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}, 'O': {'Co': 3.32, 'Cr': 3.7, 'Fe': 5.3, 'Mn': 3.9, 'Mo': 4.38, 'Ni': 6.2, 'V': 3.25, 'W': 6.2}}, 'LMAXMIX': 6, 'LMIXTAU': True, 'LORBIT': 11, 'LREAL': False, 'LWAVE': False, 'MAGMOM': {'Ce': 5, 'Ce3+': 1, 'Co': 0.6, 'Co3+': 0.6, 'Co4+': 1, 'Cr': 5, 'Dy3+': 5, 'Er3+': 3, 'Eu': 10, 'Eu2+': 7, 'Eu3+': 6, 'Fe': 5, 'Gd3+': 7, 'Ho3+': 4, 'La3+': 0.6, 'Lu3+': 0.6, 'Mn': 5, 'Mn3+': 4, 'Mn4+': 3, 'Mo': 5, 'Nd3+': 3, 'Ni': 5, 'Pm3+': 4, 'Pr3+': 2, 'Sm3+': 5, 'Tb3+': 6, 'Tm3+': 2, 'V': 5, 'W': 5, 'Yb3+': 1}, 'NELM': 200, 'NSW': 0, 'PREC': 'Accurate', 'SIGMA': 0.05}, 'PARENT': 'PBE64Base', 'POTCAR': {'Ac': 'Ac', 'Ag': 'Ag', 'Al': 'Al', 'Am': 'Am', 'Ar': 'Ar', 'As': 'As', 'At': 'At', 'Au': 'Au', 'B': 'B', 'Ba': 'Ba_sv_GW', 'Be': 'Be_sv', 'Bi': 'Bi', 'Br': 'Br', 'C': 'C', 'Ca': 'Ca_sv', 'Cd': 'Cd', 'Ce': 'Ce', 'Cf': 'Cf', 'Cl': 'Cl', 'Cm': 'Cm', 'Co': 'Co', 'Cr': 'Cr_pv', 'Cs': 'Cs_sv', 'Cu': 'Cu_pv', 'Dy': 'Dy_h', 'Er': 'Er_h', 'Eu': 'Eu', 'F': 'F', 'Fe': 'Fe_pv', 'Fr': 'Fr_sv', 'Ga': 'Ga_d', 'Gd': 'Gd', 'Ge': 'Ge_d', 'H': 'H', 'He': 'He', 'Hf': 'Hf_pv', 'Hg': 'Hg', 'Ho': 'Ho_h', 'I': 'I', 'In': 'In_d', 'Ir': 'Ir', 'K': 'K_sv', 'Kr': 'Kr', 'La': 'La', 'Li': 'Li_sv', 'Lu': 'Lu_3', 'Mg': 'Mg_pv', 'Mn': 'Mn_pv', 'Mo': 'Mo_pv', 'N': 'N', 'Na': 'Na_pv', 'Nb': 'Nb_pv', 'Nd': 'Nd_h', 'Ne': 'Ne', 'Ni': 'Ni_pv', 'Np': 'Np', 'O': 'O', 'Os': 'Os_pv', 'P': 'P', 'Pa': 'Pa', 'Pb': 'Pb_d', 'Pd': 'Pd', 'Pm': 'Pm_h', 'Po': 'Po_d', 'Pr': 'Pr_h', 'Pt': 'Pt', 'Pu': 'Pu', 'Ra': 'Ra_sv', 'Rb': 'Rb_sv', 'Re': 'Re_pv', 'Rh': 'Rh_pv', 'Rn': 'Rn', 'Ru': 'Ru_pv', 'S': 'S', 'Sb': 'Sb', 'Sc': 'Sc_sv', 'Se': 'Se', 'Si': 'Si', 'Sm': 'Sm_h', 'Sn': 'Sn_d', 'Sr': 'Sr_sv', 'Ta': 'Ta_pv', 'Tb': 'Tb_h', 'Tc': 'Tc_pv', 'Te': 'Te', 'Th': 'Th', 'Ti': 'Ti_pv', 'Tl': 'Tl_d', 'Tm': 'Tm_h', 'U': 'U', 'V': 'V_pv', 'W': 'W_sv', 'Xe': 'Xe_GW', 'Y': 'Y_sv', 'Yb': 'Yb_h', 'Zn': 'Zn', 'Zr': 'Zr_sv'}, 'POTCAR_FUNCTIONAL': 'PBE_64'}[source]

                                                                              -inherit_incar: tuple[str, ...] | bool = ('LPEAD', 'NGX', 'NGY', 'NGZ', 'SYMPREC', 'IMIX', 'LMAXMIX', 'KGAMMA', 'ISYM', 'NCORE', 'NPAR', 'NELMIN', 'IOPT', 'NBANDS', 'KPAR', 'AMIN', 'NELMDL', 'BMIX', 'AMIX_MAG', 'BMIX_MAG')[source]
                                                                              +inherit_incar: tuple[str, ...] | bool = ('LPEAD', 'NGX', 'NGY', 'NGZ', 'SYMPREC', 'IMIX', 'LMAXMIX', 'KGAMMA', 'ISYM', 'NCORE', 'NPAR', 'NELMIN', 'IOPT', 'NBANDS', 'KPAR', 'AMIN', 'NELMDL', 'BMIX', 'AMIX_MAG', 'BMIX_MAG')[source]
                                                                              -prev_incar: dict | str | None = None[source]
                                                                              +prev_incar: dict | str | None = None[source]
                                                                              -xc_functional: Literal['R2SCAN', 'PBE', 'PBE+U'] = 'PBE'[source]
                                                                              +xc_functional: Literal['R2SCAN', 'PBE', 'PBE+U'] = 'PBE'[source]

                                                                              -VaspInputGenerator[source]
                                                                              +VaspInputGenerator[source]

                                                                              alias of VaspInputSet

                                                                              -class VaspInputSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]
                                                                              +class VaspInputSet(structure: Structure | None = <property object>, config_dict: dict = <factory>, files_to_transfer: dict = <factory>, user_incar_settings: dict = <factory>, user_kpoints_settings: dict = <factory>, user_potcar_settings: dict = <factory>, constrain_total_magmom: bool = False, sort_structure: bool = True, user_potcar_functional: UserPotcarFunctional = None, force_gamma: bool = False, reduce_structure: Literal['niggli', 'LLL'] | None = None, vdw: str | None = None, use_structure_charge: bool = False, standardize: bool = False, sym_prec: float = 0.1, international_monoclinic: bool = True, validate_magmom: bool = True, inherit_incar: bool | list[str] = False, auto_kspacing: bool = False, auto_ismear: bool = False, auto_ispin: bool = False, auto_lreal: bool = False, auto_metal_kpoints: bool = False, bandgap_tol: float = 0.0001, bandgap: float | None = None, prev_incar: str | dict | None = None, prev_kpoints: str | Kpoints | None = None, _valid_potcars: Sequence[str] | None = None)[source]

                                                                              Bases: InputGenerator, ABC

                                                                              Base class representing a set of VASP input parameters with a structure supplied as init parameters and initialized from a dict of settings. @@ -7120,7 +7282,7 @@

                                                                              Submodules
                                                                              -as_dict(verbosity: int = 2) dict[source]
                                                                              +as_dict(verbosity: int = 2) dict[source]
                                                                              Parameters:
                                                                              -auto_ispin: bool = False[source]
                                                                              +auto_ispin: bool = False[source]
                                                                              -auto_kspacing: bool = False[source]
                                                                              +auto_kspacing: bool = False[source]
                                                                              -auto_lreal: bool = False[source]
                                                                              +auto_lreal: bool = False[source]
                                                                              -auto_metal_kpoints: bool = False[source]
                                                                              +auto_metal_kpoints: bool = False[source]
                                                                              -bandgap: float | None = None[source]
                                                                              +bandgap: float | None = None[source]
                                                                              -bandgap_tol: float = 0.0001[source]
                                                                              +bandgap_tol: float = 0.0001[source]
                                                                              -calculate_ng(max_prime_factor: int = 7, must_inc_2: bool = True, custom_encut: float | None = None, custom_prec: str | None = None) tuple[source]
                                                                              +calculate_ng(max_prime_factor: int = 7, must_inc_2: bool = True, custom_encut: float | None = None, custom_prec: str | None = None) tuple[source]

                                                                              Calculate the NGX, NGY, and NGZ values using the information available in the INCAR and POTCAR This is meant to help with making initial guess for the FFT grid so we can interact with the Charge density API.

                                                                              @@ -7197,17 +7359,17 @@

                                                                              Submodules
                                                                              -config_dict: dict[source]
                                                                              +config_dict: dict[source]

                                                                              -constrain_total_magmom: bool = False[source]
                                                                              +constrain_total_magmom: bool = False[source]
                                                                              -estimate_nbands() int[source]
                                                                              +estimate_nbands() int[source]

                                                                              Estimate the number of bands that VASP will initialize a calculation with by default. Note that in practice this can depend on # of cores (if not set explicitly).

                                                                              @@ -7218,17 +7380,17 @@

                                                                              Submodules
                                                                              -files_to_transfer: dict[source]
                                                                              +files_to_transfer: dict[source]

                                                                              -force_gamma: bool = False[source]
                                                                              +force_gamma: bool = False[source]
                                                                              -static from_directory(directory: PathLike, optional_files: dict | None = None) VaspInput[source]
                                                                              +static from_directory(directory: PathLike, optional_files: dict | None = None) VaspInput[source]

                                                                              Load a set of VASP inputs from a directory.

                                                                              Note that only the standard INCAR, POSCAR, POTCAR and KPOINTS files are read unless optional_filenames is specified.

                                                                              @@ -7245,7 +7407,7 @@

                                                                              Submodules
                                                                              -classmethod from_prev_calc(prev_calc_dir: PathLike, **kwargs) Self[source]
                                                                              +classmethod from_prev_calc(prev_calc_dir: PathLike, **kwargs) Self[source]

                                                                              Generate a set of VASP input files for static calculations from a directory of previous VASP run.

                                                                              @@ -7263,7 +7425,7 @@

                                                                              Submodules
                                                                              -get_input_set(structure: Structure | None = None, prev_dir: PathLike | None = None, potcar_spec: bool = False) VaspInput[source]
                                                                              +get_input_set(structure: Structure | None = None, prev_dir: PathLike | None = None, potcar_spec: bool = False) VaspInput[source]

                                                                              Get a VASP input set.

                                                                              Note, if both structure and prev_dir are set, then the structure specified will be preferred over the final structure from the last VASP run.

                                                                              @@ -7291,7 +7453,7 @@

                                                                              Submodules
                                                                              -get_vasp_input(structure: Structure | None = None) Self[source]
                                                                              +get_vasp_input(structure: Structure | None = None) Self[source]

                                                                              Get a VaspInput object.

                                                                              Returns:
                                                                              @@ -7302,35 +7464,35 @@

                                                                              Submodules
                                                                              -property incar: Incar[source]
                                                                              +property incar: Incar[source]

                                                                              The INCAR.

                                                                              -property incar_updates: dict[source]
                                                                              +property incar_updates: dict[source]

                                                                              Updates to the INCAR config for this calculation type.

                                                                              -inherit_incar: bool | list[str] = False[source]
                                                                              +inherit_incar: bool | list[str] = False[source]
                                                                              -international_monoclinic: bool = True[source]
                                                                              +international_monoclinic: bool = True[source]
                                                                              -property kpoints: Kpoints | None[source]
                                                                              +property kpoints: Kpoints | None[source]

                                                                              The KPOINTS file.

                                                                              -property kpoints_updates: dict[source]
                                                                              +property kpoints_updates: dict[source]

                                                                              Updates to the kpoints configuration for this calculation type.

                                                                              Note, these updates will be ignored if the user has set user_kpoint_settings.

                                                                              @@ -7349,13 +7511,13 @@

                                                                              Submodules
                                                                              -property nelect: float[source]
                                                                              +property nelect: float[source]

                                                                              The default number of electrons for a given structure.

                                                                              -override_from_prev_calc(prev_calc_dir: PathLike = '.') Self[source]
                                                                              +override_from_prev_calc(prev_calc_dir: PathLike = '.') Self[source]

                                                                              Update the input set to include settings from a previous calculation.

                                                                              Parameters:
                                                                              @@ -7376,102 +7538,102 @@

                                                                              Submodules
                                                                              -property poscar: Poscar[source]
                                                                              +property poscar: Poscar[source]

                                                                              Poscar.

                                                                              -property potcar: Potcar[source]
                                                                              +property potcar: Potcar[source]

                                                                              The input set’s POTCAR.

                                                                              -property potcar_functional: UserPotcarFunctional[source]
                                                                              +property potcar_functional: UserPotcarFunctional[source]

                                                                              The functional used for POTCAR generation.

                                                                              -property potcar_symbols: list[str][source]
                                                                              +property potcar_symbols: list[str][source]

                                                                              List of POTCAR symbols.

                                                                              -prev_incar: str | dict | None = None[source]
                                                                              +prev_incar: str | dict | None = None[source]
                                                                              -prev_kpoints: str | Kpoints | None = None[source]
                                                                              +prev_kpoints: str | Kpoints | None = None[source]
                                                                              -reduce_structure: Literal['niggli', 'LLL'] | None = None[source]
                                                                              +reduce_structure: Literal['niggli', 'LLL'] | None = None[source]
                                                                              -sort_structure: bool = True[source]
                                                                              +sort_structure: bool = True[source]
                                                                              -standardize: bool = False[source]
                                                                              +standardize: bool = False[source]
                                                                              -property structure: Structure | None[source]
                                                                              +property structure: Structure | None[source]

                                                                              Structure.

                                                                              -sym_prec: float = 0.1[source]
                                                                              +sym_prec: float = 0.1[source]
                                                                              -use_structure_charge: bool = False[source]
                                                                              +use_structure_charge: bool = False[source]
                                                                              -user_incar_settings: dict[source]
                                                                              +user_incar_settings: dict[source]
                                                                              -user_kpoints_settings: dict[source]
                                                                              +user_kpoints_settings: dict[source]
                                                                              -user_potcar_functional: UserPotcarFunctional = None[source]
                                                                              +user_potcar_functional: UserPotcarFunctional = None[source]
                                                                              -user_potcar_settings: dict[source]
                                                                              +user_potcar_settings: dict[source]
                                                                              -validate_magmom: bool = True[source]
                                                                              +validate_magmom: bool = True[source]
                                                                              -vdw: str | None = None[source]
                                                                              +vdw: str | None = None[source]
                                                                              -write_input(output_dir: str, make_dir_if_not_present: bool = True, include_cif: bool | str = False, potcar_spec: bool = False, zip_output: bool | str = False) None[source]
                                                                              +write_input(output_dir: str, make_dir_if_not_present: bool = True, include_cif: bool | str = False, potcar_spec: bool = False, zip_output: bool | str = False) None[source]

                                                                              Write a set of VASP input to a directory.

                                                                              Parameters:
                                                                              @@ -7498,13 +7660,13 @@

                                                                              Submodules
                                                                              -auto_kspacing(bandgap: float | None, bandgap_tol: float) float[source]
                                                                              +auto_kspacing(bandgap: float | None, bandgap_tol: float) float[source]

                                                                              Set kspacing based on the bandgap.

                                                                              -batch_write_input(structures: Sequence[Structure], vasp_input_set=<class 'pymatgen.io.vasp.sets.MPRelaxSet'>, output_dir: PathLike = '.', make_dir_if_not_present: bool = True, subfolder: Callable | None = None, sanitize: bool = False, include_cif: bool = False, potcar_spec: bool = False, zip_output: bool = False, **kwargs)[source]
                                                                              +batch_write_input(structures: Sequence[Structure], vasp_input_set=<class 'pymatgen.io.vasp.sets.MPRelaxSet'>, output_dir: PathLike = '.', make_dir_if_not_present: bool = True, subfolder: Callable | None = None, sanitize: bool = False, include_cif: bool = False, potcar_spec: bool = False, zip_output: bool = False, **kwargs)[source]

                                                                              Batch write VASP input for a sequence of structures to output_dir, following the format output_dir/{group}/{formula}_{number}.

                                                                              @@ -7542,7 +7704,7 @@

                                                                              Submodules
                                                                              -get_structure_from_prev_run(vasprun: Vasprun, outcar: Outcar | None = None) Structure[source]
                                                                              +get_structure_from_prev_run(vasprun: Vasprun, outcar: Outcar | None = None) Structure[source]

                                                                              Process structure from previous run.

                                                                              Parameters:
                                                                              @@ -7566,7 +7728,7 @@

                                                                              Submodules
                                                                              -get_valid_magmom_struct(structure: Structure, inplace: bool = True, spin_mode: str = 'auto') Structure[source]
                                                                              +get_valid_magmom_struct(structure: Structure, inplace: bool = True, spin_mode: str = 'auto') Structure[source]

                                                                              Make sure that the structure has valid magmoms based on the kind of calculation.

                                                                              Fill in missing Magmom values.

                                                                              @@ -7593,7 +7755,7 @@

                                                                              Submodules
                                                                              -get_vasprun_outcar(path: PathLike, parse_dos: bool = True, parse_eigen: bool = True) tuple[Vasprun, Outcar][source]
                                                                              +get_vasprun_outcar(path: PathLike, parse_dos: bool = True, parse_eigen: bool = True) tuple[Vasprun, Outcar][source]

                                                                              Get a Vasprun and Outcar from a directory.

                                                                              Parameters:
                                                                              @@ -7611,7 +7773,7 @@

                                                                              Submodules
                                                                              -next_num_with_prime_factors(n: int, max_prime_factor: int, must_inc_2: bool = True) int[source]
                                                                              +next_num_with_prime_factors(n: int, max_prime_factor: int, must_inc_2: bool = True) int[source]

                                                                              Get the next number greater than or equal to n that only has the desired prime factors.

                                                                              Parameters:
                                                                              @@ -7632,13 +7794,13 @@

                                                                              Submodules
                                                                              -primes_less_than(max_val: int) list[int][source]
                                                                              +primes_less_than(max_val: int) list[int][source]

                                                                              Get the primes less than or equal to the max value.

                                                                              -standardize_structure(structure: Structure, sym_prec: float = 0.1, international_monoclinic: bool = True) Structure[source]
                                                                              +standardize_structure(structure: Structure, sym_prec: float = 0.1, international_monoclinic: bool = True) Structure[source]

                                                                              Get the symmetrically standardized structure.

                                                                              Parameters:
                                                                              diff --git a/docs/pymatgen.io.xtb.html b/docs/pymatgen.io.xtb.html index 8d29c2ad701..a22901951f0 100644 --- a/docs/pymatgen.io.xtb.html +++ b/docs/pymatgen.io.xtb.html @@ -1,23 +1,23 @@ + + - + - pymatgen.io.xtb package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.io.xtb package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                              - 2024.10.27 -
                                                                              @@ -100,7 +97,7 @@

                                                                              Submodules
                                                                              -class CRESTInput(molecule: Molecule, working_dir: str = '.', coords_filename: str | None = 'crest_in.xyz', constraints: dict[str, list[int] | float] | None = None)[source]
                                                                              +class CRESTInput(molecule: Molecule, working_dir: str = '.', coords_filename: str | None = 'crest_in.xyz', constraints: dict[str, list[int] | float] | None = None)[source]

                                                                              Bases: MSONable

                                                                              An object representing CREST input files. Because CREST is controlled through command line flags and external @@ -120,7 +117,7 @@

                                                                              Submodules
                                                                              -static constrains_template(molecule, reference_fnm, constraints) str[source]
                                                                              +static constrains_template(molecule, reference_fnm, constraints) str[source]
                                                                              Parameters:
                                                                              @@ -153,7 +150,7 @@

                                                                              Submodules
                                                                              -class CRESTOutput(output_filename, path='.')[source]
                                                                              +class CRESTOutput(output_filename, path='.')[source]

                                                                              Bases: MSONable

                                                                              Parse CREST output files.

                                                                              Assumes runtype is iMTD-GC [default].

                                                                              diff --git a/docs/pymatgen.optimization.html b/docs/pymatgen.optimization.html index 3123a65f4b6..f67a62472d6 100644 --- a/docs/pymatgen.optimization.html +++ b/docs/pymatgen.optimization.html @@ -1,23 +1,23 @@ + + - + - pymatgen.optimization package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.optimization package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                              - 2024.10.27 -
                                                                              @@ -100,7 +97,7 @@

                                                                              Submodules
                                                                              -class LinearAssignment(costs: np.ndarray, epsilon: float = 1e-13)[source]
                                                                              +class LinearAssignment(costs: np.ndarray, epsilon: float = 1e-13)[source]

                                                                              Bases: object

                                                                              This class finds the solution to the Linear Assignment Problem. It finds a minimum cost matching between two sets, given a cost @@ -121,13 +118,13 @@

                                                                              Submodules
                                                                              -min_cost[source]
                                                                              +min_cost[source]

                                                                              The minimum cost of the matching.

                                                                              -solution[source]
                                                                              +solution[source]

                                                                              The matching of the rows to columns. i.e solution = [1, 2, 0] would match row 0 to column 1, row 1 to column 2 and row 2 to column 0. Total cost would be c[0, 1] + c[1, 2] + c[2, 0].

                                                                              @@ -140,7 +137,7 @@

                                                                              Submodules

                                                                              pymatgen.optimization.neighbors module

                                                                              -find_points_in_spheres(all_coords, center_coords, r, pbc, lattice, tol=1e-08, min_r=1.0)[source]
                                                                              +find_points_in_spheres(all_coords, center_coords, r, pbc, lattice, tol=1e-08, min_r=1.0)[source]

                                                                              For each point in center_coords, get all the neighboring points in all_coords that are within the cutoff radius r. All the coordinates should be Cartesian.

                                                                              diff --git a/docs/pymatgen.phonon.html b/docs/pymatgen.phonon.html index 4d1645c1645..fc95d941545 100644 --- a/docs/pymatgen.phonon.html +++ b/docs/pymatgen.phonon.html @@ -1,23 +1,23 @@ + + - + - pymatgen.phonon package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.phonon package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                              - 2024.10.27 -
                                                                              @@ -268,7 +265,7 @@

                                                                              Submodules
                                                                              -class PhononBandStructure(qpoints: Sequence[Kpoint], frequencies: ArrayLike, lattice: Lattice, nac_frequencies: Sequence[Sequence] | None = None, eigendisplacements: ArrayLike = None, nac_eigendisplacements: Sequence[Sequence] | None = None, labels_dict: dict | None = None, coords_are_cartesian: bool = False, structure: Structure | None = None)[source]
                                                                              +class PhononBandStructure(qpoints: Sequence[Kpoint], frequencies: ArrayLike, lattice: Lattice, nac_frequencies: Sequence[Sequence] | None = None, eigendisplacements: ArrayLike = None, nac_eigendisplacements: Sequence[Sequence] | None = None, labels_dict: dict | None = None, coords_are_cartesian: bool = False, structure: Structure | None = None)[source]

                                                                              Bases: MSONable

                                                                              This is the most generic phonon band structure data possible it’s defined by a list of qpoints + frequencies for each of them. @@ -312,13 +309,13 @@

                                                                              Submodules
                                                                              -as_dict() dict[str, Any][source]
                                                                              +as_dict() dict[str, Any][source]

                                                                              MSONable dict.

                                                                              -asr_breaking(tol_eigendisplacements: float = 1e-05) ndarray | None[source]
                                                                              +asr_breaking(tol_eigendisplacements: float = 1e-05) ndarray | None[source]

                                                                              Get the breaking of the acoustic sum rule for the three acoustic modes, if Gamma is present. None otherwise. If eigendisplacements are available they are used to determine the acoustic @@ -330,7 +327,7 @@

                                                                              Submodules
                                                                              -classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                              +classmethod from_dict(dct: dict[str, Any]) Self[source]
                                                                              Parameters:

                                                                              dct (dict) – Dict representation of PhononBandStructure.

                                                                              @@ -343,13 +340,13 @@

                                                                              Submodules
                                                                              -get_gamma_point() Kpoint | None[source]
                                                                              +get_gamma_point() Kpoint | None[source]

                                                                              Get the Gamma q-point as a Kpoint object (or None if not found).

                                                                              -get_nac_eigendisplacements_along_dir(direction) ndarray | None[source]
                                                                              +get_nac_eigendisplacements_along_dir(direction) ndarray | None[source]

                                                                              Get the nac_eigendisplacements for the given direction (not necessarily a versor). None if the direction is not present or nac_eigendisplacements has not been calculated.

                                                                              @@ -365,7 +362,7 @@

                                                                              Submodules
                                                                              -get_nac_frequencies_along_dir(direction: Sequence) np.ndarray | None[source]
                                                                              +get_nac_frequencies_along_dir(direction: Sequence) np.ndarray | None[source]

                                                                              Get the nac_frequencies for the given direction (not necessarily a versor). None if the direction is not present or nac_frequencies has not been calculated.

                                                                              @@ -381,13 +378,13 @@

                                                                              Submodules
                                                                              -property has_eigendisplacements: bool[source]
                                                                              +property has_eigendisplacements: bool[source]

                                                                              True if eigendisplacements are present.

                                                                              -has_imaginary_freq(tol: float = 0.01) bool[source]
                                                                              +has_imaginary_freq(tol: float = 0.01) bool[source]

                                                                              True if imaginary frequencies are present anywhere in the band structure. Always True if has_imaginary_gamma_freq is True.

                                                                              @@ -399,7 +396,7 @@

                                                                              Submodules
                                                                              -has_imaginary_gamma_freq(tol: float = 0.01) bool[source]
                                                                              +has_imaginary_gamma_freq(tol: float = 0.01) bool[source]

                                                                              Check if there are imaginary modes at the gamma point and all close points.

                                                                              Parameters:
                                                                              @@ -410,26 +407,26 @@

                                                                              Submodules
                                                                              -property has_nac: bool[source]
                                                                              +property has_nac: bool[source]

                                                                              True if nac_frequencies are present (i.e. the band structure has been calculated taking into account Born-charge-derived non-analytical corrections at Gamma).

                                                                              -max_freq() tuple[Kpoint, float][source]
                                                                              +max_freq() tuple[Kpoint, float][source]

                                                                              Get the q-point where the maximum frequency is reached and its value.

                                                                              -min_freq() tuple[Kpoint, float][source]
                                                                              +min_freq() tuple[Kpoint, float][source]

                                                                              Get the q-point where the minimum frequency is reached and its value.

                                                                              -width(with_imaginary: bool = False) float[source]
                                                                              +width(with_imaginary: bool = False) float[source]

                                                                              Get the difference between the maximum and minimum frequencies anywhere in the band structure, not necessarily at identical same q-points. If with_imaginary is False, only positive frequencies are considered.

                                                                              @@ -439,7 +436,7 @@

                                                                              Submodules
                                                                              -class PhononBandStructureSymmLine(qpoints: Sequence[Kpoint], frequencies: ArrayLike, lattice: Lattice, has_nac: bool = False, eigendisplacements: ArrayLike = None, labels_dict: dict | None = None, coords_are_cartesian: bool = False, structure: Structure | None = None)[source]
                                                                              +class PhononBandStructureSymmLine(qpoints: Sequence[Kpoint], frequencies: ArrayLike, lattice: Lattice, has_nac: bool = False, eigendisplacements: ArrayLike = None, labels_dict: dict | None = None, coords_are_cartesian: bool = False, structure: Structure | None = None)[source]

                                                                              Bases: PhononBandStructure

                                                                              Store phonon band structures along selected (symmetry) lines in the Brillouin zone. We call the different symmetry lines (ex: \Gamma to Z) “branches”.

                                                                              @@ -473,26 +470,26 @@

                                                                              Submodules
                                                                              -as_dict() dict[source]
                                                                              +as_dict() dict[source]

                                                                              Get MSONable dict.

                                                                              -as_phononwebsite() dict[source]
                                                                              +as_phononwebsite() dict[source]

                                                                              Return a dictionary with the phononwebsite format: https://henriquemiranda.github.io/phononwebsite.

                                                                              -band_reorder() None[source]
                                                                              +band_reorder() None[source]

                                                                              Re-order the eigenvalues according to the similarity of the eigenvectors.

                                                                              -classmethod from_dict(dct: dict) Self[source]
                                                                              +classmethod from_dict(dct: dict) Self[source]
                                                                              Parameters:

                                                                              dct (dict) – Dict representation.

                                                                              @@ -505,7 +502,7 @@

                                                                              Submodules
                                                                              -get_branch(index: int) list[dict[str, str | int]][source]
                                                                              +get_branch(index: int) list[dict[str, str | int]][source]

                                                                              Get in what branch(es) is the qpoint. There can be several branches.

                                                                              Parameters:
                                                                              @@ -527,7 +524,7 @@

                                                                              Submodules
                                                                              -get_equivalent_qpoints(index: int) list[int][source]
                                                                              +get_equivalent_qpoints(index: int) list[int][source]

                                                                              Get the list of qpoint indices equivalent (meaning they are the same frac coords) to the given one.

                                                                              @@ -547,7 +544,7 @@

                                                                              Submodules
                                                                              -write_phononwebsite(filename: str | PathLike) None[source]
                                                                              +write_phononwebsite(filename: str | PathLike) None[source]

                                                                              Write a JSON file for the phononwebsite: https://henriquemiranda.github.io/phononwebsite.

                                                                              @@ -556,19 +553,19 @@

                                                                              Submodules
                                                                              -eigenvectors_from_displacements(disp: ndarray, masses: ndarray) ndarray[source]
                                                                              +eigenvectors_from_displacements(disp: ndarray, masses: ndarray) ndarray[source]

                                                                              Calculate the eigenvectors from the atomic displacements.

                                                                              -estimate_band_connection(prev_eigvecs, eigvecs, prev_band_order) list[int][source]
                                                                              +estimate_band_connection(prev_eigvecs, eigvecs, prev_band_order) list[int][source]

                                                                              A function to order the phonon eigenvectors taken from phonopy.

                                                                              -get_reasonable_repetitions(n_atoms: int) Tuple3Ints[source]
                                                                              +get_reasonable_repetitions(n_atoms: int) Tuple3Ints[source]

                                                                              Choose the number of repetitions in a supercell according to the number of atoms in the system.

                                                                              @@ -579,12 +576,12 @@

                                                                              Submodules
                                                                              -class CompletePhononDos(structure: Structure, total_dos, ph_doses: dict)[source]
                                                                              +class CompletePhononDos(structure: Structure, total_dos, ph_doses: dict)[source]

                                                                              Bases: PhononDos

                                                                              This wrapper class defines a total dos, and also provides a list of PDos.

                                                                              -pdos[source]
                                                                              +pdos[source]

                                                                              Dict of partial densities of the form {Site:Densities}. Densities are a dict of {Orbital:Values} where Values are a list of floats. Site is a pymatgen.core.sites.Site object.

                                                                              @@ -606,19 +603,19 @@

                                                                              Submodules
                                                                              -as_dict()[source]
                                                                              +as_dict()[source]

                                                                              JSON-serializable dict representation of CompletePhononDos.

                                                                              -classmethod from_dict(dct: dict) Self[source]
                                                                              +classmethod from_dict(dct: dict) Self[source]

                                                                              Get CompleteDos object from dict representation.

                                                                              -get_element_dos() dict[source]
                                                                              +get_element_dos() dict[source]

                                                                              Get element projected Dos.

                                                                              Returns:
                                                                              @@ -632,7 +629,7 @@

                                                                              Submodules
                                                                              -get_site_dos(site) PhononDos[source]
                                                                              +get_site_dos(site) PhononDos[source]

                                                                              Get the Dos for a site.

                                                                              Parameters:
                                                                              @@ -651,7 +648,7 @@

                                                                              Submodules
                                                                              -class PhononDos(frequencies: Sequence, densities: Sequence)[source]
                                                                              +class PhononDos(frequencies: Sequence, densities: Sequence)[source]

                                                                              Bases: MSONable

                                                                              Basic DOS object. All other DOS objects are extended versions of this object.

                                                                              @@ -664,13 +661,13 @@

                                                                              Submodules
                                                                              -as_dict() dict[source]
                                                                              +as_dict() dict[source]

                                                                              JSON-serializable dict representation of PhononDos.

                                                                              -cv(temp: float | None = None, structure: Structure | None = None, **kwargs) float[source]
                                                                              +cv(temp: float | None = None, structure: Structure | None = None, **kwargs) float[source]

                                                                              Constant volume specific heat C_v at temperature T obtained from the integration of the DOS. Only positive frequencies will be used. Result in J/(K*mol-c). A mol-c is the abbreviation of a mole-cell, that is, the number @@ -697,7 +694,7 @@

                                                                              Submodules
                                                                              -entropy(temp: float | None = None, structure: Structure | None = None, **kwargs) float[source]
                                                                              +entropy(temp: float | None = None, structure: Structure | None = None, **kwargs) float[source]

                                                                              Vibrational entropy at temperature T obtained from the integration of the DOS. Only positive frequencies will be used. Result in J/(K*mol-c). A mol-c is the abbreviation of a mole-cell, that is, the number @@ -724,7 +721,7 @@

                                                                              Submodules
                                                                              -static fp_to_dict(fp: PhononDosFingerprint) dict[source]
                                                                              +static fp_to_dict(fp: PhononDosFingerprint) dict[source]

                                                                              Convert a fingerprint into a dictionary.

                                                                              Parameters:
                                                                              @@ -741,13 +738,13 @@

                                                                              Submodules
                                                                              -classmethod from_dict(dct: dict[str, Sequence]) Self[source]
                                                                              +classmethod from_dict(dct: dict[str, Sequence]) Self[source]

                                                                              Get PhononDos object from dict representation of PhononDos.

                                                                              -get_dos_fp(binning: bool = True, min_f: float | None = None, max_f: float | None = None, n_bins: int = 256, normalize: bool = True) PhononDosFingerprint[source]
                                                                              +get_dos_fp(binning: bool = True, min_f: float | None = None, max_f: float | None = None, n_bins: int = 256, normalize: bool = True) PhononDosFingerprint[source]

                                                                              Generate the DOS fingerprint.

                                                                              Parameters:
                                                                              @@ -775,7 +772,7 @@

                                                                              Submodules
                                                                              -static get_dos_fp_similarity(fp1: PhononDosFingerprint, fp2: PhononDosFingerprint, col: int = 1, pt: int | str = 'All', normalize: bool = False, metric: Literal['tanimoto', 'wasserstein', 'cosine-sim'] = 'tanimoto') float[source]
                                                                              +static get_dos_fp_similarity(fp1: PhononDosFingerprint, fp2: PhononDosFingerprint, col: int = 1, pt: int | str = 'All', normalize: bool = False, metric: Literal['tanimoto', 'wasserstein', 'cosine-sim'] = 'tanimoto') float[source]

                                                                              Calculate the similarity index between two fingerprints.

                                                                              Parameters:
                                                                              @@ -806,7 +803,7 @@

                                                                              Submodules
                                                                              -get_interpolated_value(frequency) float[source]
                                                                              +get_interpolated_value(frequency) float[source]

                                                                              Get interpolated density for a particular frequency.

                                                                              Parameters:
                                                                              @@ -817,7 +814,7 @@

                                                                              Submodules
                                                                              -get_last_peak(threshold: float = 0.05) float[source]
                                                                              +get_last_peak(threshold: float = 0.05) float[source]

                                                                              Find the last peak in the phonon DOS defined as the highest frequency with a DOS value at least threshold * height of the overall highest DOS peak. A peak is any local maximum of the DOS as a function of frequency. @@ -842,7 +839,7 @@

                                                                              Submodules
                                                                              -get_smeared_densities(sigma: float) ndarray[source]
                                                                              +get_smeared_densities(sigma: float) ndarray[source]

                                                                              Get the densities, but with a Gaussian smearing of std dev sigma applied.

                                                                              @@ -861,7 +858,7 @@

                                                                              Submodules
                                                                              -helmholtz_free_energy(temp: float | None = None, structure: Structure | None = None, **kwargs) float[source]
                                                                              +helmholtz_free_energy(temp: float | None = None, structure: Structure | None = None, **kwargs) float[source]

                                                                              Phonon contribution to the Helmholtz free energy at temperature T obtained from the integration of the DOS. Only positive frequencies will be used. Result in J/mol-c. A mol-c is the abbreviation of a mole-cell, that is, the number @@ -888,13 +885,13 @@

                                                                              Submodules
                                                                              -ind_zero_freq()[source]
                                                                              +ind_zero_freq()[source]

                                                                              Index of the first point for which the frequencies are >= 0.

                                                                              -internal_energy(temp: float | None = None, structure: Structure | None = None, **kwargs) float[source]
                                                                              +internal_energy(temp: float | None = None, structure: Structure | None = None, **kwargs) float[source]

                                                                              Phonon contribution to the internal energy at temperature T obtained from the integration of the DOS. Only positive frequencies will be used. Result in J/mol-c. A mol-c is the abbreviation of a mole-cell, that is, the number @@ -921,7 +918,7 @@

                                                                              Submodules
                                                                              -mae(other: PhononDos, two_sided: bool = True) float[source]
                                                                              +mae(other: PhononDos, two_sided: bool = True) float[source]

                                                                              Mean absolute error between two DOSs.

                                                                              Parameters:
                                                                              @@ -942,7 +939,7 @@

                                                                              Submodules
                                                                              -r2_score(other: PhononDos) float[source]
                                                                              +r2_score(other: PhononDos) float[source]

                                                                              R^2 score between two DOSs.

                                                                              Parameters:
                                                                              @@ -959,7 +956,7 @@

                                                                              Submodules
                                                                              -zero_point_energy(structure: Structure | None = None) float[source]
                                                                              +zero_point_energy(structure: Structure | None = None) float[source]

                                                                              Zero point energy of the system. Only positive frequencies will be used. Result in J/mol-c. A mol-c is the abbreviation of a mole-cell, that is, the number of Avogadro times the atoms in a unit cell. To compare with experimental data the result @@ -980,7 +977,7 @@

                                                                              Submodules
                                                                              -class PhononDosFingerprint(frequencies: NDArray, densities: NDArray, n_bins: int, bin_width: float)[source]
                                                                              +class PhononDosFingerprint(frequencies: NDArray, densities: NDArray, n_bins: int, bin_width: float)[source]

                                                                              Bases: NamedTuple

                                                                              Represents a Phonon Density of States (DOS) fingerprint.

                                                                              This named tuple is used to store information related to the Density of States (DOS) @@ -998,25 +995,25 @@

                                                                              Submodules
                                                                              -bin_width: float[source]
                                                                              +bin_width: float[source]

                                                                              Alias for field number 3

                                                                              -densities: NDArray[source]
                                                                              +densities: NDArray[source]

                                                                              Alias for field number 1

                                                                              -frequencies: NDArray[source]
                                                                              +frequencies: NDArray[source]

                                                                              Alias for field number 0

                                                                              -n_bins: int[source]
                                                                              +n_bins: int[source]

                                                                              Alias for field number 2

                                                                              @@ -1028,7 +1025,7 @@

                                                                              Submodules
                                                                              -class GruneisenParameter(qpoints: ArrayLike, gruneisen: ArrayLike[ArrayLike], frequencies: ArrayLike[ArrayLike], multiplicities: Sequence | None = None, structure: Structure = None, lattice: Lattice = None)[source]
                                                                              +class GruneisenParameter(qpoints: ArrayLike, gruneisen: ArrayLike[ArrayLike], frequencies: ArrayLike[ArrayLike], multiplicities: Sequence | None = None, structure: Structure = None, lattice: Lattice = None)[source]

                                                                              Bases: MSONable

                                                                              Store the Gruneisen parameter for a single q-point on a regular grid.

                                                                              @@ -1046,14 +1043,14 @@

                                                                              Submodules
                                                                              -property acoustic_debye_temp: float[source]
                                                                              +property acoustic_debye_temp: float[source]

                                                                              Acoustic Debye temperature in K, i.e. the Debye temperature divided by n_sites**(1/3). Adapted from abipy.

                                                                              -average_gruneisen(t: float | None = None, squared: bool = True, limit_frequencies: Literal['debye', 'acoustic'] | None = None) float[source]
                                                                              +average_gruneisen(t: float | None = None, squared: bool = True, limit_frequencies: Literal['debye', 'acoustic'] | None = None) float[source]

                                                                              Calculate the average of the Gruneisen based on the values on the regular grid. If squared is True, the average will use the squared value of the Gruneisen and a squared root is performed on the final result. @@ -1079,13 +1076,13 @@

                                                                              Submodules
                                                                              -property debye_temp_limit: float[source]
                                                                              +property debye_temp_limit: float[source]

                                                                              Debye temperature in K. Adapted from apipy.

                                                                              -debye_temp_phonopy(freq_max_fit=None) float[source]
                                                                              +debye_temp_phonopy(freq_max_fit=None) float[source]

                                                                              Get Debye temperature in K as implemented in phonopy.

                                                                              Parameters:
                                                                              @@ -1100,19 +1097,19 @@

                                                                              Submodules
                                                                              -property phdos: PhononDos[source]
                                                                              +property phdos: PhononDos[source]

                                                                              The phonon DOS (re)constructed from the gruneisen.yaml file.

                                                                              -property tdos[source]
                                                                              +property tdos[source]

                                                                              The total DOS (re)constructed from the gruneisen.yaml file.

                                                                              -thermal_conductivity_slack(squared: bool = True, limit_frequencies: Literal['debye', 'acoustic'] | None = None, theta_d: float | None = None, t: float | None = None) float[source]
                                                                              +thermal_conductivity_slack(squared: bool = True, limit_frequencies: Literal['debye', 'acoustic'] | None = None, theta_d: float | None = None, t: float | None = None) float[source]

                                                                              Calculate the thermal conductivity at the acoustic Debye temperature with the Slack formula, using the average Gruneisen. Adapted from abipy.

                                                                              @@ -1141,7 +1138,7 @@

                                                                              Submodules
                                                                              -class GruneisenPhononBandStructure(qpoints: ArrayLike, frequencies: ArrayLike[ArrayLike], gruneisenparameters: ArrayLike, lattice: Lattice, eigendisplacements: ArrayLike[ArrayLike] = None, labels_dict: dict | None = None, coords_are_cartesian: bool = False, structure: Structure | None = None)[source]
                                                                              +class GruneisenPhononBandStructure(qpoints: ArrayLike, frequencies: ArrayLike[ArrayLike], gruneisenparameters: ArrayLike, lattice: Lattice, eigendisplacements: ArrayLike[ArrayLike] = None, labels_dict: dict | None = None, coords_are_cartesian: bool = False, structure: Structure | None = None)[source]

                                                                              Bases: PhononBandStructure

                                                                              This is the most generic phonon band structure data possible it’s defined by a list of qpoints + frequencies for each of them. @@ -1177,7 +1174,7 @@

                                                                              Submodules
                                                                              -as_dict() dict[source]
                                                                              +as_dict() dict[source]
                                                                              Returns:

                                                                              MSONable dict.

                                                                              @@ -1190,7 +1187,7 @@

                                                                              Submodules
                                                                              -classmethod from_dict(dct: dict) Self[source]
                                                                              +classmethod from_dict(dct: dict) Self[source]
                                                                              Parameters:

                                                                              dct (dict) – Dict representation.

                                                                              @@ -1208,7 +1205,7 @@

                                                                              Submodules
                                                                              -class GruneisenPhononBandStructureSymmLine(qpoints: ArrayLike, frequencies: ArrayLike[ArrayLike], gruneisenparameters: ArrayLike, lattice: Lattice, eigendisplacements: ArrayLike[ArrayLike] = None, labels_dict: dict | None = None, coords_are_cartesian: bool = False, structure: Structure | None = None)[source]
                                                                              +class GruneisenPhononBandStructureSymmLine(qpoints: ArrayLike, frequencies: ArrayLike[ArrayLike], gruneisenparameters: ArrayLike, lattice: Lattice, eigendisplacements: ArrayLike[ArrayLike] = None, labels_dict: dict | None = None, coords_are_cartesian: bool = False, structure: Structure | None = None)[source]

                                                                              Bases: GruneisenPhononBandStructure, PhononBandStructureSymmLine

                                                                              Store a GruneisenPhononBandStructureSymmLine together with Grueneisen parameters for every frequency.

                                                                              @@ -1241,7 +1238,7 @@

                                                                              Submodules
                                                                              -classmethod from_dict(dct: dict) Self[source]
                                                                              +classmethod from_dict(dct: dict) Self[source]
                                                                              Parameters:

                                                                              dct (dict) – Dict representation.

                                                                              @@ -1263,7 +1260,7 @@

                                                                              Submodules
                                                                              -class IRDielectricTensor(oscillator_strength: ArrayLike, ph_freqs_gamma: ArrayLike, epsilon_infinity: ArrayLike, structure: Structure)[source]
                                                                              +class IRDielectricTensor(oscillator_strength: ArrayLike, ph_freqs_gamma: ArrayLike, epsilon_infinity: ArrayLike, structure: Structure)[source]

                                                                              Bases: MSONable

                                                                              Handle the Ionic Dielectric Tensor The implementation is adapted from Abipy @@ -1281,19 +1278,19 @@

                                                                              Submodules
                                                                              -as_dict() dict[source]
                                                                              +as_dict() dict[source]

                                                                              JSON-serializable dict representation of IRDielectricTensor.

                                                                              -classmethod from_dict(dct: dict) Self[source]
                                                                              +classmethod from_dict(dct: dict) Self[source]

                                                                              Get IRDielectricTensor from dict representation.

                                                                              -get_ir_spectra(broad: list | float = 5e-05, emin: float = 0, emax: float | None = None, divs: int = 500) tuple[source]
                                                                              +get_ir_spectra(broad: list | float = 5e-05, emin: float = 0, emax: float | None = None, divs: int = 500) tuple[source]

                                                                              The IR spectra is obtained for the different directions.

                                                                              Parameters:
                                                                              @@ -1321,7 +1318,7 @@

                                                                              Submodules
                                                                              -get_plotter(components: Sequence = ('xx',), reim: str = 'reim', broad: list | float = 5e-05, emin: float = 0, emax: float | None = None, divs: int = 500, **kwargs) SpectrumPlotter[source]
                                                                              +get_plotter(components: Sequence = ('xx',), reim: str = 'reim', broad: list | float = 5e-05, emin: float = 0, emax: float | None = None, divs: int = 500, **kwargs) SpectrumPlotter[source]

                                                                              Return an instance of the Spectrum plotter containing the different requested components.

                                                                              Parameters:
                                                                              @@ -1341,7 +1338,7 @@

                                                                              Submodules
                                                                              -get_spectrum(component: Sequence | str, reim: str, broad: list | float = 5e-05, emin: float = 0, emax: float | None = None, divs: int = 500, label=None) Spectrum[source]
                                                                              +get_spectrum(component: Sequence | str, reim: str, broad: list | float = 5e-05, emin: float = 0, emax: float | None = None, divs: int = 500, label=None) Spectrum[source]

                                                                              component: either two indexes or a string like ‘xx’ to plot the (0,0) component reim: only “re” or “im” broad: a list of broadenings or a single broadening for the phonon peaks.

                                                                              @@ -1349,19 +1346,19 @@

                                                                              Submodules
                                                                              -property max_phfreq: float[source]
                                                                              +property max_phfreq: float[source]

                                                                              Maximum phonon frequency.

                                                                              -property nph_freqs: int[source]
                                                                              +property nph_freqs: int[source]

                                                                              Number of phonon frequencies.

                                                                              -plot(components: Sequence = ('xx',), reim: str = 'reim', show_phonon_frequencies: bool = True, xlim: float | None = None, ylim: float | None = None, **kwargs) Axes[source]
                                                                              +plot(components: Sequence = ('xx',), reim: str = 'reim', show_phonon_frequencies: bool = True, xlim: float | None = None, ylim: float | None = None, **kwargs) Axes[source]

                                                                              Helper function to generate the Spectrum plotter and directly plot the results.

                                                                              Parameters:
                                                                              @@ -1417,7 +1414,7 @@

                                                                              Submodules
                                                                              -write_json(filename: str | PathLike) None[source]
                                                                              +write_json(filename: str | PathLike) None[source]

                                                                              Save a JSON file with this data.

                                                                              @@ -1429,19 +1426,19 @@

                                                                              Submodules
                                                                              -class FreqUnits(factor: float, label: str)[source]
                                                                              +class FreqUnits(factor: float, label: str)[source]

                                                                              Bases: NamedTuple

                                                                              Conversion factor from THz to the required units and the label.

                                                                              Create new instance of FreqUnits(factor, label)

                                                                              -factor: float[source]
                                                                              +factor: float[source]

                                                                              Alias for field number 0

                                                                              -label: str[source]
                                                                              +label: str[source]

                                                                              Alias for field number 1

                                                                              @@ -1449,7 +1446,7 @@

                                                                              Submodules
                                                                              -class GruneisenPhononBSPlotter(bs: GruneisenPhononBandStructureSymmLine)[source]
                                                                              +class GruneisenPhononBSPlotter(bs: GruneisenPhononBandStructureSymmLine)[source]

                                                                              Bases: PhononBSPlotter

                                                                              Plot or get data to facilitate the plot of band structure objects.

                                                                              @@ -1459,7 +1456,7 @@

                                                                              Submodules
                                                                              -bs_plot_data() dict[str, Any][source]
                                                                              +bs_plot_data() dict[str, Any][source]

                                                                              Get the data nicely formatted for a plot.

                                                                              Returns:
                                                                              @@ -1479,7 +1476,7 @@

                                                                              Submodules
                                                                              -get_plot_gs(ylim: float | None = None, plot_ph_bs_with_gruneisen: bool = False, **kwargs) Axes[source]
                                                                              +get_plot_gs(ylim: float | None = None, plot_ph_bs_with_gruneisen: bool = False, **kwargs) Axes[source]

                                                                              Get a matplotlib object for the Gruneisen bandstructure plot.

                                                                              Parameters:
                                                                              @@ -1496,7 +1493,7 @@

                                                                              Submodules
                                                                              -plot_compare_gs(other_plotter: GruneisenPhononBSPlotter) Axes[source]
                                                                              +plot_compare_gs(other_plotter: GruneisenPhononBSPlotter) Axes[source]

                                                                              Plot two band structure for comparison. One is in red the other in blue. The two band structures need to be defined on the same symmetry lines! and the distance between symmetry lines is @@ -1520,7 +1517,7 @@

                                                                              Submodules
                                                                              -save_plot_gs(filename: str | PathLike, img_format: str = 'eps', ylim: float | None = None, plot_ph_bs_with_gruneisen: bool = False, **kwargs) None[source]
                                                                              +save_plot_gs(filename: str | PathLike, img_format: str = 'eps', ylim: float | None = None, plot_ph_bs_with_gruneisen: bool = False, **kwargs) None[source]

                                                                              Save matplotlib plot to a file.

                                                                              Parameters:
                                                                              @@ -1538,7 +1535,7 @@

                                                                              Submodules
                                                                              -show_gs(ylim: float | None = None, plot_ph_bs_with_gruneisen: bool = False, **kwargs) None[source]
                                                                              +show_gs(ylim: float | None = None, plot_ph_bs_with_gruneisen: bool = False, **kwargs) None[source]

                                                                              Show the plot using matplotlib.

                                                                              Parameters:
                                                                              @@ -1556,7 +1553,7 @@

                                                                              Submodules
                                                                              -class GruneisenPlotter(gruneisen: GruneisenParameter)[source]
                                                                              +class GruneisenPlotter(gruneisen: GruneisenParameter)[source]

                                                                              Bases: object

                                                                              Plot GruneisenParameter.

                                                                              Plot information from GruneisenParameter.

                                                                              @@ -1567,7 +1564,7 @@

                                                                              Submodules
                                                                              -get_plot(marker: str = 'o', markersize: float | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') Axes[source]
                                                                              +get_plot(marker: str = 'o', markersize: float | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') Axes[source]

                                                                              Will produce a plot.

                                                                              Parameters:
                                                                              @@ -1588,7 +1585,7 @@

                                                                              Submodules
                                                                              -save_plot(filename: str | PathLike, img_format: str = 'pdf', units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]
                                                                              +save_plot(filename: str | PathLike, img_format: str = 'pdf', units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]

                                                                              Will save the plot to a file.

                                                                              Parameters:
                                                                              @@ -1603,7 +1600,7 @@

                                                                              Submodules
                                                                              -show(units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]
                                                                              +show(units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]

                                                                              Will show the plot.

                                                                              Parameters:
                                                                              @@ -1616,7 +1613,7 @@

                                                                              Submodules
                                                                              -class PhononBSPlotter(bs: PhononBandStructureSymmLine, label: str | None = None)[source]
                                                                              +class PhononBSPlotter(bs: PhononBandStructureSymmLine, label: str | None = None)[source]

                                                                              Bases: object

                                                                              Plot or get data to facilitate the plot of band structure objects.

                                                                              @@ -1630,7 +1627,7 @@

                                                                              Submodules
                                                                              -bs_plot_data() dict[str, Any][source]
                                                                              +bs_plot_data() dict[str, Any][source]

                                                                              Get the data nicely formatted for a plot.

                                                                              Returns:
                                                                              @@ -1649,7 +1646,7 @@

                                                                              Submodules
                                                                              -get_plot(ylim: float | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz', **kwargs) Axes[source]
                                                                              +get_plot(ylim: float | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz', **kwargs) Axes[source]

                                                                              Get a matplotlib object for the bandstructure plot.

                                                                              Parameters:
                                                                              @@ -1666,7 +1663,7 @@

                                                                              Submodules
                                                                              -get_proj_plot(site_comb: str | list[list[int]] = 'element', ylim: tuple[None | float, None | float] | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz', rgb_labels: tuple[None | str] | None = None) Axes[source]
                                                                              +get_proj_plot(site_comb: str | list[list[int]] = 'element', ylim: tuple[None | float, None | float] | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz', rgb_labels: tuple[None | str] | None = None) Axes[source]

                                                                              Get a matplotlib object for the bandstructure plot projected along atomic sites.

                                                                              @@ -1689,7 +1686,7 @@

                                                                              Submodules
                                                                              -get_ticks() dict[str, list][source]
                                                                              +get_ticks() dict[str, list][source]

                                                                              Get all ticks and labels for a band structure plot.

                                                                              Returns:
                                                                              @@ -1704,19 +1701,19 @@

                                                                              Submodules
                                                                              -property n_bands: int[source]
                                                                              +property n_bands: int[source]

                                                                              Number of bands.

                                                                              -plot_brillouin() None[source]
                                                                              +plot_brillouin() None[source]

                                                                              Plot the Brillouin zone.

                                                                              -plot_compare(other_plotter: PhononBSPlotter | dict[str, PhononBSPlotter], units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz', self_label: str = 'self', colors: Sequence[str] | None = None, legend_kwargs: dict | None = None, on_incompatible: Literal['raise', 'warn', 'ignore'] = 'raise', other_kwargs: dict | None = None, **kwargs) Axes[source]
                                                                              +plot_compare(other_plotter: PhononBSPlotter | dict[str, PhononBSPlotter], units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz', self_label: str = 'self', colors: Sequence[str] | None = None, legend_kwargs: dict | None = None, on_incompatible: Literal['raise', 'warn', 'ignore'] = 'raise', other_kwargs: dict | None = None, **kwargs) Axes[source]

                                                                              Plot two band structure for comparison. self in blue, others in red, green, … The band structures need to be defined on the same symmetry lines! The distance between symmetry lines is determined by the band structure used to @@ -1749,7 +1746,7 @@

                                                                              Submodules
                                                                              -save_plot(filename: str | PathLike, ylim: float | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]
                                                                              +save_plot(filename: str | PathLike, ylim: float | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]

                                                                              Save matplotlib plot to a file.

                                                                              Parameters:
                                                                              @@ -1764,7 +1761,7 @@

                                                                              Submodules
                                                                              -show(ylim: float | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]
                                                                              +show(ylim: float | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]

                                                                              Show the plot using matplotlib.

                                                                              Parameters:
                                                                              @@ -1778,7 +1775,7 @@

                                                                              Submodules
                                                                              -show_proj(site_comb: str | list[list[int]] = 'element', ylim: tuple[None | float, None | float] | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz', rgb_labels: tuple[str] | None = None) None[source]
                                                                              +show_proj(site_comb: str | list[list[int]] = 'element', ylim: tuple[None | float, None | float] | None = None, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz', rgb_labels: tuple[str] | None = None) None[source]

                                                                              Show the projected plot using matplotlib.

                                                                              Parameters:
                                                                              @@ -1802,7 +1799,7 @@

                                                                              Submodules
                                                                              -class PhononDosPlotter(stack: bool = False, sigma: float | None = None)[source]
                                                                              +class PhononDosPlotter(stack: bool = False, sigma: float | None = None)[source]

                                                                              Bases: object

                                                                              Plot phonon DOSs. The interface is very flexible to accommodate the many different ways in which people want to view DOS. @@ -1826,7 +1823,7 @@

                                                                              Submodules
                                                                              -add_dos(label: str, dos: PhononDos, **kwargs: Any) None[source]
                                                                              +add_dos(label: str, dos: PhononDos, **kwargs: Any) None[source]

                                                                              Add a dos for plotting.

                                                                              Parameters:
                                                                              @@ -1841,7 +1838,7 @@

                                                                              Submodules
                                                                              -add_dos_dict(dos_dict: dict, key_sort_func=None) None[source]
                                                                              +add_dos_dict(dos_dict: dict, key_sort_func=None) None[source]

                                                                              Add a dictionary of doses, with an optional sorting function for the keys.

                                                                              @@ -1856,7 +1853,7 @@

                                                                              Submodules
                                                                              -get_dos_dict() dict[source]
                                                                              +get_dos_dict() dict[source]

                                                                              Get the added doses as a json-serializable dict. Note that if you have specified smearing for the DOS plot, the densities returned will be the smeared densities, not the original densities.

                                                                              @@ -1872,7 +1869,7 @@

                                                                              Submodules
                                                                              -get_plot(xlim: float | None = None, ylim: float | None = None, invert_axes: bool = False, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz', legend: dict | None = None, ax: Axes | None = None) Axes[source]
                                                                              +get_plot(xlim: float | None = None, ylim: float | None = None, invert_axes: bool = False, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz', legend: dict | None = None, ax: Axes | None = None) Axes[source]

                                                                              Get a matplotlib plot showing the DOS.

                                                                              Parameters:
                                                                              @@ -1893,7 +1890,7 @@

                                                                              Submodules
                                                                              -save_plot(filename: str | PathLike, img_format: str = 'eps', xlim: float | None = None, ylim: float | None = None, invert_axes: bool = False, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]
                                                                              +save_plot(filename: str | PathLike, img_format: str = 'eps', xlim: float | None = None, ylim: float | None = None, invert_axes: bool = False, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]

                                                                              Save matplotlib plot to a file.

                                                                              Parameters:
                                                                              @@ -1913,7 +1910,7 @@

                                                                              Submodules
                                                                              -show(xlim: float | None = None, ylim: None = None, invert_axes: bool = False, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]
                                                                              +show(xlim: float | None = None, ylim: None = None, invert_axes: bool = False, units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1'] = 'thz') None[source]

                                                                              Show the plot using matplotlib.

                                                                              Parameters:
                                                                              @@ -1933,7 +1930,7 @@

                                                                              Submodules
                                                                              -class ThermoPlotter(dos: PhononDos, structure: Structure = None)[source]
                                                                              +class ThermoPlotter(dos: PhononDos, structure: Structure = None)[source]

                                                                              Bases: object

                                                                              Plotter for thermodynamic properties obtained from phonon DOS. If the structure corresponding to the DOS, it will be used to extract the formula unit and provide @@ -1948,7 +1945,7 @@

                                                                              Submodules
                                                                              -plot_cv(tmin: float, tmax: float, ntemp: int, ylim: float | None = None, **kwargs) Figure[source]
                                                                              +plot_cv(tmin: float, tmax: float, ntemp: int, ylim: float | None = None, **kwargs) Figure[source]

                                                                              Plots the constant volume specific heat C_v in a temperature range.

                                                                              Parameters:
                                                                              @@ -2008,7 +2005,7 @@

                                                                              Submodules
                                                                              -plot_entropy(tmin: float, tmax: float, ntemp: int, ylim: float | None = None, **kwargs) Figure[source]
                                                                              +plot_entropy(tmin: float, tmax: float, ntemp: int, ylim: float | None = None, **kwargs) Figure[source]

                                                                              Plots the vibrational entrpy in a temperature range.

                                                                              Parameters:
                                                                              @@ -2068,7 +2065,7 @@

                                                                              Submodules
                                                                              -plot_helmholtz_free_energy(tmin: float, tmax: float, ntemp: int, ylim: float | None = None, **kwargs) Figure[source]
                                                                              +plot_helmholtz_free_energy(tmin: float, tmax: float, ntemp: int, ylim: float | None = None, **kwargs) Figure[source]

                                                                              Plots the vibrational contribution to the Helmoltz free energy in a temperature range.

                                                                              Parameters:
                                                                              @@ -2128,7 +2125,7 @@

                                                                              Submodules
                                                                              -plot_internal_energy(tmin: float, tmax: float, ntemp: int, ylim: float | None = None, **kwargs) Figure[source]
                                                                              +plot_internal_energy(tmin: float, tmax: float, ntemp: int, ylim: float | None = None, **kwargs) Figure[source]

                                                                              Plots the vibrational internal energy in a temperature range.

                                                                              Parameters:
                                                                              @@ -2188,7 +2185,7 @@

                                                                              Submodules
                                                                              -plot_thermodynamic_properties(tmin: float, tmax: float, ntemp: int, ylim: float | None = None, **kwargs) Figure[source]
                                                                              +plot_thermodynamic_properties(tmin: float, tmax: float, ntemp: int, ylim: float | None = None, **kwargs) Figure[source]

                                                                              Plots all the thermodynamic properties in a temperature range.

                                                                              Parameters:
                                                                              @@ -2250,7 +2247,7 @@

                                                                              Submodules
                                                                              -freq_units(units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1']) FreqUnits[source]
                                                                              +freq_units(units: Literal['thz', 'ev', 'mev', 'ha', 'cm-1', 'cm^-1']) FreqUnits[source]
                                                                              Parameters:

                                                                              units – str, accepted values: thz, ev, mev, ha, cm-1, cm^-1.

                                                                              @@ -2267,7 +2264,7 @@

                                                                              Submodules
                                                                              -class ThermalDisplacementMatrices(thermal_displacement_matrix_cart: ArrayLike[ArrayLike], structure: Structure, temperature: float | None, thermal_displacement_matrix_cif: ArrayLike[ArrayLike] = None)[source]
                                                                              +class ThermalDisplacementMatrices(thermal_displacement_matrix_cart: ArrayLike[ArrayLike], structure: Structure, temperature: float | None, thermal_displacement_matrix_cif: ArrayLike[ArrayLike] = None)[source]

                                                                              Bases: MSONable

                                                                              Handle thermal displacement matrices This class stores thermal displacement matrices in Ucart format.

                                                                              @@ -2292,7 +2289,7 @@

                                                                              Submodules
                                                                              -property B: ndarray[source]
                                                                              +property B: ndarray[source]

                                                                              Computation as described in R. W. Grosse-Kunstleve, P. D. Adams, J Appl Cryst 2002, 35, 477-480.

                                                                              Returns:
                                                                              @@ -2306,7 +2303,7 @@

                                                                              Submodules
                                                                              -property U1U2U3: list[source]
                                                                              +property U1U2U3: list[source]

                                                                              Computation as described in R. W. Grosse-Kunstleve, P. D. Adams, J Appl Cryst 2002, 35, 477-480.

                                                                              Returns:
                                                                              @@ -2320,7 +2317,7 @@

                                                                              Submodules
                                                                              -property Ucif: ndarray[source]
                                                                              +property Ucif: ndarray[source]

                                                                              Computation as described in R. W. Grosse-Kunstleve, P. D. Adams, J Appl Cryst 2002, 35, 477-480.

                                                                              Returns:
                                                                              @@ -2334,7 +2331,7 @@

                                                                              Submodules
                                                                              -property Ustar: ndarray[source]
                                                                              +property Ustar: ndarray[source]

                                                                              Computation as described in R. W. Grosse-Kunstleve, P. D. Adams, J Appl Cryst 2002, 35, 477-480.

                                                                              Returns:
                                                                              @@ -2348,7 +2345,7 @@

                                                                              Submodules
                                                                              -property beta: list[source]
                                                                              +property beta: list[source]

                                                                              Computation as described in R. W. Grosse-Kunstleve, P. D. Adams, J Appl Cryst 2002, 35, 477-480.

                                                                              Returns:
                                                                              @@ -2362,7 +2359,7 @@

                                                                              Submodules
                                                                              -compute_directionality_quality_criterion(other: ThermalDisplacementMatrices) list[dict[str, ArrayLike]][source]
                                                                              +compute_directionality_quality_criterion(other: ThermalDisplacementMatrices) list[dict[str, ArrayLike]][source]

                                                                              Will compute directionality of prolate displacement ellipsoids as described in https://doi.org/10.1039/C9CE00794F with the earlier implementation: https://github.com/damMroz/Angle/.

                                                                              @@ -2391,7 +2388,7 @@

                                                                              Submodules
                                                                              -classmethod from_Ucif(thermal_displacement_matrix_cif: ArrayLike[ArrayLike], structure: Structure, temperature: float | None = None) Self[source]
                                                                              +classmethod from_Ucif(thermal_displacement_matrix_cif: ArrayLike[ArrayLike], structure: Structure, temperature: float | None = None) Self[source]

                                                                              Starting from a numpy array, it will convert Ucif values into Ucart values and initialize the class.

                                                                              Parameters:
                                                                              @@ -2413,7 +2410,7 @@

                                                                              Submodules
                                                                              -static from_cif_P1(filename: str) list[ThermalDisplacementMatrices][source]
                                                                              +static from_cif_P1(filename: str) list[ThermalDisplacementMatrices][source]

                                                                              Reads a CIF with P1 symmetry including positions and ADPs. Currently, no check of symmetry is performed as CifParser methods cannot be easily reused.

                                                                              @@ -2428,7 +2425,7 @@

                                                                              Submodules
                                                                              -classmethod from_structure_with_site_properties_Ucif(structure: Structure, temperature: float | None = None) Self[source]
                                                                              +classmethod from_structure_with_site_properties_Ucif(structure: Structure, temperature: float | None = None) Self[source]

                                                                              Will create this object with the help of a structure with site properties.

                                                                              Parameters:
                                                                              @@ -2446,7 +2443,7 @@

                                                                              Submodules
                                                                              -static get_full_matrix(thermal_displacement: ArrayLike[ArrayLike]) np.ndarray[np.ndarray][source]
                                                                              +static get_full_matrix(thermal_displacement: ArrayLike[ArrayLike]) np.ndarray[np.ndarray][source]

                                                                              Transfers the reduced matrix to the full matrix (order of reduced matrix U11, U22, U33, U23, U13, U12).

                                                                              Parameters:
                                                                              @@ -2460,7 +2457,7 @@

                                                                              Submodules
                                                                              -static get_reduced_matrix(thermal_displacement: ArrayLike[ArrayLike]) np.ndarray[np.ndarray][source]
                                                                              +static get_reduced_matrix(thermal_displacement: ArrayLike[ArrayLike]) np.ndarray[np.ndarray][source]

                                                                              Transfers the full matrix to reduced matrix (order of reduced matrix U11, U22, U33, U23, U13, U12).

                                                                              Parameters:
                                                                              @@ -2474,13 +2471,13 @@

                                                                              Submodules
                                                                              -property ratio_prolate: ndarray[source]
                                                                              +property ratio_prolate: ndarray[source]

                                                                              This will compute ratio between largest and smallest eigenvalue of Ucart.

                                                                              -to_structure_with_site_properties_Ucif() Structure[source]
                                                                              +to_structure_with_site_properties_Ucif() Structure[source]

                                                                              Transfers this object into a structure with site properties (Ucif). This is useful for sorting the atoms in the structure including site properties. e.g. with code like this: @@ -2498,7 +2495,7 @@

                                                                              Submodules
                                                                              -visualize_directionality_quality_criterion(other: ThermalDisplacementMatrices, filename: str | PathLike = 'visualization.vesta', which_structure: Literal[0, 1] = 0) None[source]
                                                                              +visualize_directionality_quality_criterion(other: ThermalDisplacementMatrices, filename: str | PathLike = 'visualization.vesta', which_structure: Literal[0, 1] = 0) None[source]

                                                                              Will create a VESTA file for visualization of the directionality criterion.

                                                                              Parameters:
                                                                              @@ -2514,7 +2511,7 @@

                                                                              Submodules
                                                                              -write_cif(filename: str) None[source]
                                                                              +write_cif(filename: str) None[source]

                                                                              Write a CIF including thermal displacements.

                                                                              Parameters:
                                                                              diff --git a/docs/pymatgen.symmetry.html b/docs/pymatgen.symmetry.html index 75df88597eb..815f152778a 100644 --- a/docs/pymatgen.symmetry.html +++ b/docs/pymatgen.symmetry.html @@ -1,23 +1,23 @@ + + - + - pymatgen.symmetry package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.symmetry package — pymatgen 2024.11.13 documentation + + + + - - - - - + + + + + + @@ -34,9 +34,6 @@ -
                                                                              - 2024.10.27 -
                                                                              @@ -295,7 +292,7 @@

                                                                              Submodules
                                                                              -class PointGroupAnalyzer(mol: Molecule, tolerance: float = 0.3, eigen_tolerance: float = 0.01, matrix_tolerance: float = 0.1)[source]
                                                                              +class PointGroupAnalyzer(mol: Molecule, tolerance: float = 0.3, eigen_tolerance: float = 0.01, matrix_tolerance: float = 0.1)[source]

                                                                              Bases: object

                                                                              A class to analyze the point group of a molecule.

                                                                              The general outline of the algorithm is as follows:

                                                                              @@ -338,7 +335,7 @@

                                                                              Submodules
                                                                              -get_equivalent_atoms()[source]
                                                                              +get_equivalent_atoms()[source]

                                                                              Get sets of equivalent atoms with symmetry operations.

                                                                              Returns:
                                                                              @@ -361,13 +358,13 @@

                                                                              Submodules
                                                                              -get_pointgroup() PointGroupOperations[source]
                                                                              +get_pointgroup() PointGroupOperations[source]

                                                                              Get a PointGroup object for the molecule.

                                                                              -get_rotational_symmetry_number() int[source]
                                                                              +get_rotational_symmetry_number() int[source]

                                                                              Get rotational symmetry number.

                                                                              Returns:
                                                                              @@ -381,7 +378,7 @@

                                                                              Submodules
                                                                              -get_symmetry_operations() Sequence[SymmOp][source]
                                                                              +get_symmetry_operations() Sequence[SymmOp][source]

                                                                              Get symmetry operations.

                                                                              Returns:
                                                                              @@ -395,12 +392,12 @@

                                                                              Submodules
                                                                              -inversion_op = SymmOp(self.affine_matrix=array([[-1., -0., -0.,  0.],        [-0., -1., -0.,  0.],        [-0., -0., -1.,  0.],        [-0., -0., -0.,  1.]]))[source]
                                                                              +inversion_op = SymmOp(self.affine_matrix=array([[-1., -0., -0.,  0.],        [-0., -1., -0.,  0.],        [-0., -0., -1.,  0.],        [-0., -0., -0.,  1.]]))[source]

                                                                              -is_valid_op(symm_op: SymmOp) bool[source]
                                                                              +is_valid_op(symm_op: SymmOp) bool[source]

                                                                              Check if a particular symmetry operation is a valid symmetry operation for a molecule, i.e., the operation maps all atoms to another equivalent atom.

                                                                              @@ -418,7 +415,7 @@

                                                                              Submodules
                                                                              -symmetrize_molecule() dict[source]
                                                                              +symmetrize_molecule() dict[source]

                                                                              Get a symmetrized molecule.

                                                                              The equivalent atoms obtained via get_equivalent_atoms() @@ -453,12 +450,12 @@

                                                                              Submodules
                                                                              -class PointGroupOperations(sch_symbol: str, operations: Sequence[SymmOp], tol: float = 0.1)[source]
                                                                              +class PointGroupOperations(sch_symbol: str, operations: Sequence[SymmOp], tol: float = 0.1)[source]

                                                                              Bases: list

                                                                              Represents a point group, which is a sequence of symmetry operations.

                                                                              -sch_symbol[source]
                                                                              +sch_symbol[source]

                                                                              Schoenflies symbol of the point group.

                                                                              Type:
                                                                              @@ -483,7 +480,7 @@

                                                                              Submodules
                                                                              -class SpacegroupAnalyzer(structure: Structure, symprec: float | None = 0.01, angle_tolerance: float = 5)[source]
                                                                              +class SpacegroupAnalyzer(structure: Structure, symprec: float | None = 0.01, angle_tolerance: float = 5)[source]

                                                                              Bases: object

                                                                              Takes a pymatgen Structure object and a symprec.

                                                                              Uses spglib to perform various symmetry finding operations.

                                                                              @@ -504,7 +501,7 @@

                                                                              Submodules
                                                                              -find_primitive(keep_site_properties: bool = False) Structure[source]
                                                                              +find_primitive(keep_site_properties: bool = False) Structure[source]

                                                                              Find a primitive version of the unit cell.

                                                                              Parameters:
                                                                              @@ -527,7 +524,7 @@

                                                                              Submodules
                                                                              -get_conventional_standard_structure(international_monoclinic: bool = True, keep_site_properties: bool = False) Structure[source]
                                                                              +get_conventional_standard_structure(international_monoclinic: bool = True, keep_site_properties: bool = False) Structure[source]

                                                                              Get a structure with a conventional cell according to certain standards. The standards are defined in Setyawan, W., & Curtarolo, S. (2010). High-throughput electronic band structure calculations: Challenges and tools. Computational @@ -558,7 +555,7 @@

                                                                              Submodules
                                                                              -get_conventional_to_primitive_transformation_matrix(international_monoclinic: bool = True) NDArray[source]
                                                                              +get_conventional_to_primitive_transformation_matrix(international_monoclinic: bool = True) NDArray[source]

                                                                              Get the transformation matrix to transform a conventional unit cell to a primitive cell according to certain standards the standards are defined in Setyawan, W., & Curtarolo, S. (2010). High-throughput electronic band structure @@ -577,7 +574,7 @@

                                                                              Submodules
                                                                              -get_crystal_system() CrystalSystem[source]
                                                                              +get_crystal_system() CrystalSystem[source]

                                                                              Get the crystal system for the structure, e.g. (triclinic, orthorhombic, cubic, etc.).

                                                                              @@ -595,7 +592,7 @@

                                                                              Submodules
                                                                              -get_hall() str[source]
                                                                              +get_hall() str[source]

                                                                              Get Hall symbol for structure.

                                                                              Returns:
                                                                              @@ -609,7 +606,7 @@

                                                                              Submodules
                                                                              -get_ir_reciprocal_mesh(mesh: tuple[int, int, int] = (10, 10, 10), is_shift: tuple[float, float, float] = (0, 0, 0)) list[tuple[Kpoint, float]][source]
                                                                              +get_ir_reciprocal_mesh(mesh: tuple[int, int, int] = (10, 10, 10), is_shift: tuple[float, float, float] = (0, 0, 0)) list[tuple[Kpoint, float]][source]

                                                                              k-point mesh of the Brillouin zone generated taken into account symmetry. The method returns the irreducible kpoints of the mesh and their weights.

                                                                              @@ -633,7 +630,7 @@

                                                                              Submodules
                                                                              -get_ir_reciprocal_mesh_map(mesh: tuple[int, int, int] = (10, 10, 10), is_shift: tuple[float, float, float] = (0, 0, 0)) tuple[NDArray, NDArray][source]
                                                                              +get_ir_reciprocal_mesh_map(mesh: tuple[int, int, int] = (10, 10, 10), is_shift: tuple[float, float, float] = (0, 0, 0)) tuple[NDArray, NDArray][source]

                                                                              Same as ‘get_ir_reciprocal_mesh’ but the full grid together with the mapping that maps a reducible to an irreducible kpoint is returned.

                                                                              @@ -657,7 +654,7 @@

                                                                              Submodules
                                                                              -get_kpoint_weights(kpoints: Sequence[Kpoint], atol: float = 1e-05) list[float][source]
                                                                              +get_kpoint_weights(kpoints: Sequence[Kpoint], atol: float = 1e-05) list[float][source]

                                                                              Calculate the weights for a list of kpoints.

                                                                              Parameters:
                                                                              @@ -676,7 +673,7 @@

                                                                              Submodules
                                                                              -get_lattice_type() LatticeType[source]
                                                                              +get_lattice_type() LatticeType[source]

                                                                              Get the lattice for the structure, e.g. (triclinic, orthorhombic, cubic, etc.).This is the same as the crystal system with the exception of the hexagonal/rhombohedral lattice.

                                                                              @@ -695,7 +692,7 @@

                                                                              Submodules
                                                                              -get_point_group_operations(cartesian: bool = False) list[SymmOp][source]
                                                                              +get_point_group_operations(cartesian: bool = False) list[SymmOp][source]

                                                                              Return symmetry operations as a list of SymmOp objects. By default returns fractional coord symm ops. But Cartesian can be returned too.

                                                                              @@ -714,7 +711,7 @@

                                                                              Submodules
                                                                              -get_point_group_symbol() str[source]
                                                                              +get_point_group_symbol() str[source]

                                                                              Get the point group associated with the structure.

                                                                              Returns:
                                                                              @@ -728,7 +725,7 @@

                                                                              Submodules
                                                                              -get_primitive_standard_structure(international_monoclinic: bool = True, keep_site_properties: bool = False) Structure[source]
                                                                              +get_primitive_standard_structure(international_monoclinic: bool = True, keep_site_properties: bool = False) Structure[source]

                                                                              Get a structure with a primitive cell according to certain standards. The standards are defined in Setyawan, W., & Curtarolo, S. (2010). High-throughput electronic band structure calculations: Challenges and tools. Computational @@ -756,7 +753,7 @@

                                                                              Submodules
                                                                              -get_refined_structure(keep_site_properties: bool = False) Structure[source]
                                                                              +get_refined_structure(keep_site_properties: bool = False) Structure[source]

                                                                              Get the refined structure based on detected symmetry. The refined structure is a conventional cell setting with atoms moved to the expected symmetry positions.

                                                                              @@ -778,7 +775,7 @@

                                                                              Submodules
                                                                              -get_space_group_number() int[source]
                                                                              +get_space_group_number() int[source]

                                                                              Get the international spacegroup number (e.g., 62) for structure.

                                                                              Returns:
                                                                              @@ -792,7 +789,7 @@

                                                                              Submodules
                                                                              -get_space_group_operations() SpacegroupOperations[source]
                                                                              +get_space_group_operations() SpacegroupOperations[source]

                                                                              Get the SpacegroupOperations for the Structure.

                                                                              Returns:
                                                                              @@ -803,7 +800,7 @@

                                                                              Submodules
                                                                              -get_space_group_symbol() str[source]
                                                                              +get_space_group_symbol() str[source]

                                                                              Get the spacegroup symbol (e.g., Pnma) for structure.

                                                                              Returns:
                                                                              @@ -817,7 +814,7 @@

                                                                              Submodules
                                                                              -get_symmetrized_structure() SymmetrizedStructure[source]
                                                                              +get_symmetrized_structure() SymmetrizedStructure[source]

                                                                              Get a symmetrized structure. A symmetrized structure is one where the sites have been grouped into symmetrically equivalent groups.

                                                                              @@ -829,7 +826,7 @@

                                                                              Submodules
                                                                              -get_symmetry_dataset() SpglibDataset[source]
                                                                              +get_symmetry_dataset() SpglibDataset[source]

                                                                              Get the symmetry dataset as a SpglibDataset.

                                                                              Returns:
                                                                              @@ -858,7 +855,7 @@

                                                                              Submodules
                                                                              -get_symmetry_operations(cartesian: bool = False) list[SymmOp][source]
                                                                              +get_symmetry_operations(cartesian: bool = False) list[SymmOp][source]

                                                                              Return symmetry operations as a list of SymmOp objects. By default returns fractional coord sym_ops. But Cartesian can be returned too.

                                                                              @@ -873,7 +870,7 @@

                                                                              Submodules
                                                                              -is_laue() bool[source]
                                                                              +is_laue() bool[source]

                                                                              Check if the point group of the structure has Laue symmetry (centrosymmetry).

                                                                              @@ -881,7 +878,7 @@

                                                                              Submodules
                                                                              -class SpacegroupOperations(int_symbol: str, int_number: int, symmops: Sequence[SymmOp])[source]
                                                                              +class SpacegroupOperations(int_symbol: str, int_number: int, symmops: Sequence[SymmOp])[source]

                                                                              Bases: list

                                                                              Represents a space group, which is a collection of symmetry operations.

                                                                              @@ -896,7 +893,7 @@

                                                                              Submodules
                                                                              -are_symmetrically_equivalent(sites1: set[PeriodicSite], sites2: set[PeriodicSite], symm_prec: float = 0.001) bool[source]
                                                                              +are_symmetrically_equivalent(sites1: set[PeriodicSite], sites2: set[PeriodicSite], symm_prec: float = 0.001) bool[source]

                                                                              Given two sets of PeriodicSites, test if they are actually symmetrically equivalent under this space group. Useful, for example, if you want to test if selecting atoms 1 and 2 out of a set of 4 atoms are symmetrically the same as @@ -925,7 +922,7 @@

                                                                              Submodules
                                                                              -exception SymmetryUndeterminedError[source]
                                                                              +exception SymmetryUndeterminedError[source]

                                                                              Bases: ValueError

                                                                              An Exception for when symmetry cannot be determined. This might happen when, for example, atoms are very close together.

                                                                              @@ -933,7 +930,7 @@

                                                                              Submodules
                                                                              -cluster_sites(mol: Molecule, tol: float, give_only_index: bool = False) tuple[Site | None, dict][source]
                                                                              +cluster_sites(mol: Molecule, tol: float, give_only_index: bool = False) tuple[Site | None, dict][source]

                                                                              Cluster sites based on distance and species type.

                                                                              Parameters:
                                                                              @@ -960,7 +957,7 @@

                                                                              Submodules
                                                                              -generate_full_symmops(symmops: Sequence[SymmOp], tol: float) Sequence[SymmOp][source]
                                                                              +generate_full_symmops(symmops: Sequence[SymmOp], tol: float) Sequence[SymmOp][source]

                                                                              Recursive algorithm to permute through all possible combinations of the initially supplied symmetry operations to arrive at a complete set of operations mapping a single atom to all other equivalent atoms in the point group. This assumes that the @@ -983,7 +980,7 @@

                                                                              Submodules
                                                                              -iterative_symmetrize(mol: Molecule, max_n: int = 10, tolerance: float = 0.3, epsilon: float = 0.01) dict[Literal['sym_mol', 'eq_sets', 'sym_ops'], Molecule | dict][source]
                                                                              +iterative_symmetrize(mol: Molecule, max_n: int = 10, tolerance: float = 0.3, epsilon: float = 0.01) dict[Literal['sym_mol', 'eq_sets', 'sym_ops'], Molecule | dict][source]

                                                                              Get a symmetrized molecule.

                                                                              The equivalent atoms obtained via PointGroupAnalyzer.get_equivalent_atoms are rotated, mirrored… unto one position. @@ -1026,7 +1023,7 @@

                                                                              Submodules
                                                                              -class HighSymmKpath(structure, has_magmoms=False, magmom_axis=None, path_type='setyawan_curtarolo', symprec=0.01, angle_tolerance=5, atol=1e-05)[source]
                                                                              +class HighSymmKpath(structure, has_magmoms=False, magmom_axis=None, path_type='setyawan_curtarolo', symprec=0.01, angle_tolerance=5, atol=1e-05)[source]

                                                                              Bases: KPathBase

                                                                              This class generates path along high symmetry lines in the Brillouin zone according to different conventions. @@ -1071,7 +1068,7 @@

                                                                              Submodules
                                                                              -property equiv_labels[source]
                                                                              +property equiv_labels[source]

                                                                              The correspondence between the kpoint symbols in the Latimer and Munro convention, Setyawan and Curtarolo, and Hinuma conventions respectively. Only generated when path_type = ‘all’.

                                                                              @@ -1079,7 +1076,7 @@

                                                                              Submodules
                                                                              -static get_continuous_path(bandstructure)[source]
                                                                              +static get_continuous_path(bandstructure)[source]

                                                                              Obtain a continuous version of an inputted path using graph theory. This routine will attempt to add connections between nodes of odd-degree to ensure a Eulerian path can be formed. Initial @@ -1101,14 +1098,14 @@

                                                                              Submodules
                                                                              -property label_index[source]
                                                                              +property label_index[source]

                                                                              The correspondence between numbers and kpoint symbols for the combined kpath generated when path_type = ‘all’. None otherwise.

                                                                              -property path_lengths[source]
                                                                              +property path_lengths[source]

                                                                              List of lengths of the Latimer and Munro, Setyawan and Curtarolo, and Hinuma conventions in the combined HighSymmKpath object when path_type = ‘all’ respectively. None otherwise.

                                                                              @@ -1116,7 +1113,7 @@

                                                                              Submodules
                                                                              -property path_type[source]
                                                                              +property path_type[source]

                                                                              The type of kpath chosen.

                                                                              @@ -1130,12 +1127,12 @@

                                                                              Submodules
                                                                              -class PointGroup(**kwargs)[source]
                                                                              +class PointGroup(**kwargs)[source]

                                                                              Bases: SymmetryGroup

                                                                              A Point Group, with generators and symmetry operations.

                                                                              -symbol[source]
                                                                              +symbol[source]

                                                                              Full International or Hermann-Mauguin Symbol.

                                                                              Type:
                                                                              @@ -1146,7 +1143,7 @@

                                                                              Submodules
                                                                              -generators[source]
                                                                              +generators[source]

                                                                              List of generator matrices. Note that 3x3 matrices are used for Point Groups.

                                                                              Type:
                                                                              @@ -1157,7 +1154,7 @@

                                                                              Submodules
                                                                              -symmetry_ops[source]
                                                                              +symmetry_ops[source]

                                                                              Full set of symmetry operations as matrices.

                                                                              Type:
                                                                              @@ -1179,7 +1176,7 @@

                                                                              Submodules
                                                                              -classmethod from_space_group(sg_symbol: str) PointGroup[source]
                                                                              +classmethod from_space_group(sg_symbol: str) PointGroup[source]

                                                                              Instantiate one of the 32 crystal classes from a space group symbol in Hermann Mauguin notation (int symbol or full symbol). Please note that the axes of space group and crystal class may be different.

                                                                              @@ -1198,7 +1195,7 @@

                                                                              Submodules
                                                                              -get_orbit(p: ArrayLike, tol: float = 1e-05) list[np.ndarray][source]
                                                                              +get_orbit(p: ArrayLike, tol: float = 1e-05) list[np.ndarray][source]

                                                                              Get the orbit for a point.

                                                                              Parameters:
                                                                              @@ -1220,7 +1217,7 @@

                                                                              Submodules
                                                                              -is_subgroup(supergroup: PointGroup) bool[source]
                                                                              +is_subgroup(supergroup: PointGroup) bool[source]
                                                                              True if this group is a subgroup of the supplied group.

                                                                              Modification of SymmetryGroup method with a few more constraints.

                                                                              @@ -1240,7 +1237,7 @@

                                                                              Submodules
                                                                              -is_supergroup(subgroup: PointGroup) bool[source]
                                                                              +is_supergroup(subgroup: PointGroup) bool[source]
                                                                              True if this group is a subgroup of the supplied group.

                                                                              Modification of SymmetryGroup method with a few more constraints.

                                                                              @@ -1260,7 +1257,7 @@

                                                                              Submodules
                                                                              -property symmetry_ops: set[SymmOp][source]
                                                                              +property symmetry_ops: set[SymmOp][source]

                                                                              Returns: List of symmetry operations associated with the group.

                                                                              @@ -1269,12 +1266,12 @@

                                                                              Submodules
                                                                              -class SpaceGroup(**kwargs)[source]
                                                                              +class SpaceGroup(**kwargs)[source]

                                                                              Bases: SymmetryGroup

                                                                              A SpaceGroup.

                                                                              -symbol[source]
                                                                              +symbol[source]

                                                                              Full International or Hermann-Mauguin Symbol.

                                                                              Type:
                                                                              @@ -1285,7 +1282,7 @@

                                                                              Submodules
                                                                              -int_number[source]
                                                                              +int_number[source]

                                                                              International number.

                                                                              Type:
                                                                              @@ -1296,7 +1293,7 @@

                                                                              Submodules
                                                                              -generators[source]
                                                                              +generators[source]

                                                                              List of generator matrices. Note that 4x4 matrices are used for Space Groups.

                                                                              Type:
                                                                              @@ -1307,7 +1304,7 @@

                                                                              Submodules
                                                                              -order[source]
                                                                              +order[source]

                                                                              Order of Space Group.

                                                                              Type:
                                                                              @@ -1342,29 +1339,29 @@

                                                                              Submodules
                                                                              -SG_SYMBOLS: ClassVar[set[str]] = {'A-1', 'A112', 'A112/a', 'A112/m', 'A112/n', 'A11a', 'A11m', 'A11n', 'A12/a1', 'A12/m1', 'A12/n1', 'A121', 'A1a1', 'A1m1', 'A1n1', 'A2122', 'A21am', 'A21ma', 'A222', 'A2aa', 'A2mm', 'Aba2', 'Abaa', 'Abaa:2', 'Abm2', 'Abmm', 'Acaa', 'Acaa:2', 'Acmm', 'Ae2a', 'Ae2m', 'Aea2', 'Aea2(-a,c+1/4,b-1/4)', 'Aea2(a,b+1/4,c-1/4)', 'Aea2(b,-a+1/4,c-1/4)', 'Aea2(b,c+1/4,a-1/4)', 'Aeaa', 'Aeaa:1', 'Aeam', 'Aem2', 'Aem2(-a,c+1/4,b-1/4)', 'Aem2(a,b+1/4,c-1/4)', 'Aem2(b,-a+1/4,c-1/4)', 'Aem2(b,c+1/4,a-1/4)', 'Aema', 'Am2a', 'Am2m', 'Ama2', 'Ama2(-a+1/4,c+1/4,b-1/4)', 'Ama2(-a,c+1/4,b-1/4)', 'Ama2(a+1/4,b+1/4,c-1/4)', 'Ama2(a,b+1/4,c-1/4)', 'Ama2(b+1/4,-a+1/4,c-1/4)', 'Ama2(b+1/4,c+1/4,a-1/4)', 'Ama2(b,-a+1/4,c-1/4)', 'Ama2(b,c+1/4,a-1/4)', 'Amaa', 'Amam', 'Amm2', 'Amm2(-a,c+1/4,b-1/4)', 'Amm2(a,b+1/4,c-1/4)', 'Amm2(b,-a+1/4,c-1/4)', 'Amm2(b,c+1/4,a-1/4)', 'Amma', 'Ammm', 'B-1', 'B112', 'B112/b', 'B112/m', 'B112/n', 'B11b', 'B11m', 'B11n', 'B121/m1', 'B1211', 'B2/b11', 'B2/m11', 'B2/n11', 'B211', 'B2212', 'B222', 'B2eb', 'B2em', 'B2mb', 'B2mm', 'Bb11', 'Bb21m', 'Bb2b', 'Bbab', 'Bbab:2', 'Bbcb', 'Bbcb:2', 'Bbe2', 'Bbeb', 'Bbeb:1', 'Bbem', 'Bbm2', 'Bbmb', 'Bbmm', 'Bm11', 'Bm21b', 'Bm2m', 'Bmam', 'Bmcm', 'Bme2', 'Bmeb', 'Bmm2', 'Bmmb', 'Bmmm', 'Bn11', 'C-1', 'C1', 'C12/c1', 'C12/m1', 'C12/m1(-a-1/4,c+1/4,b)', 'C12/m1(a+2*c,a,b)', 'C12/m1(a+2*c-1/4,a+1/4,b)', 'C12/m1(a+c-1/4,b+1/4,c)', 'C12/m1(a,b,a+2*c)', 'C12/m1(a-1/4,b+1/4,a+2*c)', 'C12/m1(a-1/4,b+1/4,c)', 'C12/m1(b,a+2*c,a)', 'C12/m1(b-1/4,-a+1/4,c)', 'C12/m1(b-1/4,a+2*c+1/4,a)', 'C12/m1(b-1/4,c+1/4,a)', 'C12/m1(b-1/4,c+1/4,a+c)', 'C12/m1(c-1/4,a+1/4,b)', 'C12/m1(c-1/4,a+c+1/4,b)', 'C12/m1(c-1/4,b+1/4,-a)', 'C12/n1', 'C121', 'C121(-a-1/4,c-1/4,b)', 'C121(a+2*c,a,b)', 'C121(a+2*c-1/4,a-1/4,b)', 'C121(a+c-1/4,b-1/4,c)', 'C121(a,b,a+2*c)', 'C121(a-1/4,b-1/4,a+2*c)', 'C121(a-1/4,b-1/4,c)', 'C121(c-1/4,a+c-1/4,b)', 'C121(c-1/4,a-1/4,b)', 'C121(c-1/4,b-1/4,-a)', 'C1c1', 'C1c1(2*a+c,b,c)', 'C1m1', 'C1m1(-a-1/4,c-1/4,b)', 'C1m1(a+2*c,a,b)', 'C1m1(a+2*c-1/4,a-1/4,b)', 'C1m1(a+c-1/4,b-1/4,c)', 'C1m1(a,b,a+2*c)', 'C1m1(a-1/4,b-1/4,a+2*c)', 'C1m1(a-1/4,b-1/4,c)', 'C1m1(b,a+2*c,a)', 'C1m1(b-1/4,-a-1/4,c)', 'C1m1(b-1/4,a+2*c-1/4,a)', 'C1m1(b-1/4,c-1/4,a)', 'C1m1(b-1/4,c-1/4,a+c)', 'C1m1(c-1/4,a+c-1/4,b)', 'C1m1(c-1/4,a-1/4,b)', 'C1m1(c-1/4,b-1/4,-a)', 'C1n1', 'C2/c11', 'C2/m11', 'C2/n11', 'C211', 'C222', 'C2221', 'C222_1', 'C2cm', 'C2eb', 'C2me', 'C2mm', 'Cc11', 'Cc2e', 'Cc2m', 'Ccc2', 'Ccc2(a-1/4,b-1/4,c)', 'Ccc2(b-1/4,c-1/4,a)', 'Ccca', 'Ccca:2', 'Cccb', 'Cccb:2', 'Ccce', 'Ccce:1', 'Cccm', 'Cccm(a,b,c-1/4)', 'Cccm(a-1/4,b-1/4,c)', 'Cccm(b,c,a-1/4)', 'Cccm(b-1/4,c-1/4,a)', 'Cccm(c,a,b-1/4)', 'Cccm(c-1/4,a-1/4,b)', 'Ccm21', 'Ccme', 'Ccmm', 'Cm11', 'Cm2e', 'Cm2m', 'Cmc21', 'Cmc21(-a,c+1/4,b)', 'Cmc21(-a-1/4,c-1/4,b)', 'Cmc21(a,b+1/4,c)', 'Cmc21(a-1/4,b-1/4,c)', 'Cmc21(b,-a+1/4,c)', 'Cmc21(b,c+1/4,a)', 'Cmc21(b-1/4,-a-1/4,c)', 'Cmc21(b-1/4,c-1/4,a)', 'Cmc2_1', 'Cmce', 'Cmce(-a-1/4,c-1/4,b)', 'Cmce(a-1/4,b-1/4,c)', 'Cmce(b-1/4,-a-1/4,c)', 'Cmce(b-1/4,c-1/4,a)', 'Cmce(c-1/4,a-1/4,b)', 'Cmce(c-1/4,b-1/4,-a)', 'Cmcm', 'Cmcm(-a+1/2,c-1/4,b+1/4)', 'Cmcm(-a-1/4,c-1/4,b)', 'Cmcm(a+1/2,b-1/4,c+1/4)', 'Cmcm(a-1/4,b-1/4,c)', 'Cmcm(b+1/2,-a-1/4,c+1/4)', 'Cmcm(b+1/2,c-1/4,a+1/4)', 'Cmcm(b-1/4,-a-1/4,c)', 'Cmcm(b-1/4,c-1/4,a)', 'Cmcm(c+1/2,a-1/4,b+1/4)', 'Cmcm(c+1/2,b-1/4,-a+1/4)', 'Cmcm(c-1/4,a-1/4,b)', 'Cmcm(c-1/4,b-1/4,-a)', 'Cmm2', 'Cmm2(2*c,a,b)', 'Cmm2(a-1/4,b-1/4,c)', 'Cmm2(b-1/4,c-1/4,a)', 'Cmma', 'Cmmb', 'Cmme', 'Cmmm', 'Cmmm(a-1/4,b-1/4,c)', 'Cmmm(b-1/4,c-1/4,a)', 'Cmmm(c-1/4,a-1/4,b)', 'Cn11', 'F-43c', 'F-43m', 'F222', 'F23', 'F2dd', 'F2mm', 'F4132', 'F432', 'F4_132', 'Fd-3', 'Fd-3:1', 'Fd-3:2', 'Fd-3c', 'Fd-3c:1', 'Fd-3c:2', 'Fd-3m', 'Fd-3m:1', 'Fd-3m:2', 'Fd2d', 'Fdd2', 'Fddd', 'Fddd:1', 'Fddd:2', 'Fm-3', 'Fm-3(a-1/4,b-1/4,c-1/4)', 'Fm-3c', 'Fm-3c(a+1/4,b+1/4,c+1/4)', 'Fm-3m', 'Fm-3m(a-1/4,b-1/4,c-1/4)', 'Fm2m', 'Fmm2', 'Fmm2(a+1/4,b+1/4,c+1/2)', 'Fmm2(a+1/4,b,c+1/4)', 'Fmm2(a,b-1/4,c-1/4)', 'Fmm2(b+1/4,c+1/4,a+1/2)', 'Fmm2(b+1/4,c,a+1/4)', 'Fmm2(b,c-1/4,a-1/4)', 'Fmmm', 'Fmmm(a+1/2,b+1/4,c+1/4)', 'Fmmm(a+1/4,b+1/4,c)', 'Fmmm(a-1/4,b+1/2,c+1/4)', 'Fmmm(a-1/4,b-1/4,c-1/4)', 'I-1', 'I-4', 'I-42d', 'I-42m', 'I-43d', 'I-43m', 'I-4c2', 'I-4m2', 'I112', 'I112/a', 'I112/b', 'I112/m', 'I11a', 'I11b', 'I11m', 'I12/a1', 'I12/c1', 'I12/m1', 'I121', 'I1a1', 'I1c1', 'I1m1', 'I2/b11', 'I2/c11', 'I2/m11', 'I211', 'I212121', 'I213', 'I222', 'I23', 'I2_12_12_1', 'I2_13', 'I2cb', 'I2cm', 'I2mb', 'I2mm', 'I4', 'I4/m', 'I4/m(a+1/2,b,c)', 'I4/m(a+1/2,b,c-1/4)', 'I4/m(a+b+1/2,-a+b,c)', 'I4/m(a+b+1/2,-a+b,c-1/4)', 'I4/m(a+b,-a+b,c)', 'I4/m(a-1/4,b-1/4,c+1/4)', 'I4/mcm', 'I4/mcm(a+1/2,b,c)', 'I4/mcm(a+1/2,b,c+1/4)', 'I4/mcm(a+1/4,b-1/4,c+1/4)', 'I4/mcm(a+b+1/2,-a+b,c)', 'I4/mcm(a+b+1/2,-a+b,c+1/4)', 'I4/mcm(a+b,-a+b,c)', 'I4/mcm(a+b,-a+b,c+1/4)', 'I4/mcm(a,b,c+1/4)', 'I4/mcm(a-1/4,b-1/4,c+1/4)', 'I4/mmm', 'I4/mmm(a+1/2,b,c)', 'I4/mmm(a+1/2,b,c-1/4)', 'I4/mmm(a+1/4,b-1/4,c+1/4)', 'I4/mmm(a+b+1/2,-a+b,c)', 'I4/mmm(a+b+1/2,-a+b,c-1/4)', 'I4/mmm(a+b,-a+b,c)', 'I4/mmm(a-1/4,b-1/4,c+1/4)', 'I41', 'I41/a', 'I41/a:1', 'I41/a:2', 'I41/acd', 'I41/acd:1', 'I41/acd:2', 'I41/amd', 'I41/amd:1', 'I41/amd:2', 'I4122', 'I4132', 'I41cd', 'I41md', 'I422', 'I432', 'I4_1', 'I4_1/a', 'I4_1/acd', 'I4_1/amd', 'I4_122', 'I4_132', 'I4_1cd', 'I4_1md', 'I4cm', 'I4mm', 'Ia-3', 'Ia-3d', 'Ib11', 'Iba2', 'Iba2(a-1/4,b-1/4,c+1/4)', 'Iba2(b-1/4,c-1/4,a+1/4)', 'Ibam', 'Ibam(a+1/4,b-1/4,c+1/4)', 'Ibam(a,b,c+1/4)', 'Ibam(b+1/4,c-1/4,a+1/4)', 'Ibam(b,c,a+1/4)', 'Ibam(c+1/4,a-1/4,b+1/4)', 'Ibam(c,a,b+1/4)', 'Ibca', 'Ibm2', 'Ibmm', 'Ic11', 'Ic2a', 'Ic2m', 'Icab', 'Icma', 'Icmm', 'Im-3', 'Im-3(a-1/4,b-1/4,c-1/4)', 'Im-3m', 'Im-3m(a-1/4,b-1/4,c-1/4)', 'Im11', 'Im2a', 'Im2m', 'Ima2', 'Ima2(-a-1/4,c-1/4,b+1/4)', 'Ima2(a-1/4,b-1/4,c+1/4)', 'Ima2(b-1/4,-a-1/4,c+1/4)', 'Ima2(b-1/4,c-1/4,a+1/4)', 'Imam', 'Imcb', 'Imcm', 'Imm2', 'Imm2(a,b-1/4,c)', 'Imm2(a-1/4,b,c+1/4)', 'Imm2(b,c-1/4,a)', 'Imm2(b-1/4,c,a+1/4)', 'Imma', 'Immb', 'Immm', 'Immm(a+1/4,b-1/4,c+1/4)', 'Immm(a,b,c-1/4)', 'Immm(a,b-1/4,c)', 'Immm(a-1/4,b,c)', 'P-1', 'P-1(-a+b+c,a-b+c,a+b-c)', 'P-3', 'P-31c', 'P-31m', 'P-3c1', 'P-3m1', 'P-4', 'P-421c', 'P-421m', 'P-42_1c', 'P-42_1m', 'P-42c', 'P-42m', 'P-43m', 'P-43n', 'P-4b2', 'P-4c2', 'P-4m2', 'P-4n2', 'P-6', 'P-62c', 'P-62m', 'P-6c2', 'P-6m2', 'P1', 'P1(-a+b+c,a-b+c,a+b-c)', 'P1(-a+c,-b,a+c)', 'P1(-a,-b+c,b+c)', 'P1(b+c,a+c,a+b)', 'P112', 'P112/a', 'P112/b', 'P112/m', 'P112/n', 'P1121', 'P1121/a', 'P1121/b', 'P1121/m', 'P1121/n', 'P11a', 'P11b', 'P11m', 'P11n', 'P12/a1', 'P12/c1', 'P12/c1(2*a+c,b,c)', 'P12/c1(a,2*b,c)', 'P12/c1(b,c,2*a+c)', 'P12/c1(c,2*a+c,b)', 'P12/m1', 'P12/m1(2*a+c,b,c)', 'P12/m1(b,c,2*a+c)', 'P12/m1(c,2*a+c,b)', 'P12/n1', 'P121', 'P121(2*a+c,b,c)', 'P121(c,2*a+c,b)', 'P121/a1', 'P121/c1', 'P121/c1(2*a+c,b,c)', 'P121/c1(2*c,2*a+c,b)', 'P121/c1(b,c,2*a+c)', 'P121/c1(c,2*a+c,b)', 'P121/m1', 'P121/m1(b,c,2*a+c)', 'P121/m1(c,2*a+c,b)', 'P121/n1', 'P1211', 'P1211(a-1/4,b,c)', 'P1211(c,2*a+c,b)', 'P12_1/c1', 'P12_1/m1', 'P12_11', 'P1a1', 'P1c1', 'P1c1(2*a+c,b,c)', 'P1c1(b,c,2*a+c)', 'P1c1(c,2*a+c,b)', 'P1m1', 'P1m1(2*a+c,b,c)', 'P1m1(b,c,2*a+c)', 'P1m1(c,2*a+c,b)', 'P1n1', 'P2/b11', 'P2/c11', 'P2/m11', 'P2/n11', 'P21/b11', 'P21/c11', 'P21/m11', 'P21/n11', 'P211', 'P2111', 'P21212', 'P212121', 'P212121(originshiftx,y,z+1/4)', 'P2122', 'P21221', 'P213', 'P21ab', 'P21am', 'P21ca', 'P21cn', 'P21ma', 'P21mn', 'P21nb', 'P21nm', 'P2212', 'P22121', 'P222', 'P2221', 'P222_1', 'P23', 'P2_12_12', 'P2_12_12_1', 'P2_13', 'P2aa', 'P2an', 'P2cb', 'P2cm', 'P2mb', 'P2mm', 'P2na', 'P2nn', 'P3', 'P31', 'P3112', 'P312', 'P3121', 'P31c', 'P31m', 'P32', 'P321', 'P3212', 'P3221', 'P3_1', 'P3_112', 'P3_121', 'P3_2', 'P3_212', 'P3_221', 'P3c1', 'P3m1', 'P4', 'P4/m', 'P4/m(a+b,-a+b+1/2,c)', 'P4/m(a+b,-a+b,c)', 'P4/mbm', 'P4/mcc', 'P4/mcc(a+b,-a+b+1/2,c)', 'P4/mcc(a+b,-a+b,c)', 'P4/mcc(a+b,-a+b,c+1/4)', 'P4/mmm', 'P4/mmm(a+b,-a+b+1/2,c)', 'P4/mmm(a+b,-a+b,c)', 'P4/mnc', 'P4/n', 'P4/n:1', 'P4/n:2', 'P4/nbm', 'P4/nbm:1', 'P4/nbm:2', 'P4/ncc', 'P4/ncc:1', 'P4/ncc:2', 'P4/nmm', 'P4/nmm:1', 'P4/nmm:2', 'P4/nnc', 'P4/nnc:1', 'P4/nnc:2', 'P41', 'P41212', 'P4122', 'P4132', 'P42', 'P42/m', 'P42/m(a+b,-a+b+1/2,c)', 'P42/m(a+b,-a+b,c)', 'P42/m(a+b,-a+b,c-1/4)', 'P42/mbc', 'P42/mcm', 'P42/mcm(a+b,-a+b+1/2,c)', 'P42/mcm(a+b,-a+b,c)', 'P42/mcm(a+b,-a+b,c+1/4)', 'P42/mmc', 'P42/mmc(a+b,-a+b+1/2,c)', 'P42/mmc(a+b,-a+b,c)', 'P42/mmc(a+b,-a+b,c-1/4)', 'P42/mnm', 'P42/n', 'P42/n:1', 'P42/n:2', 'P42/nbc', 'P42/nbc:1', 'P42/nbc:2', 'P42/ncm', 'P42/ncm:1', 'P42/ncm:2', 'P42/nmc', 'P42/nmc:1', 'P42/nmc:2', 'P42/nnm', 'P42/nnm:1', 'P42/nnm:2', 'P4212', 'P422', 'P42212', 'P4222', 'P4232', 'P42_12', 'P42bc', 'P42cm', 'P42mc', 'P42nm', 'P43', 'P432', 'P43212', 'P4322', 'P4332', 'P4_1', 'P4_122', 'P4_12_12', 'P4_132', 'P4_2', 'P4_2/m', 'P4_2/mbc', 'P4_2/mcm', 'P4_2/mmc', 'P4_2/mnm', 'P4_2/n', 'P4_2/nbc', 'P4_2/ncm', 'P4_2/nmc', 'P4_2/nnm', 'P4_222', 'P4_22_12', 'P4_232', 'P4_2bc', 'P4_2cm', 'P4_2mc', 'P4_2nm', 'P4_3', 'P4_322', 'P4_32_12', 'P4_332', 'P4bm', 'P4bm(a,b,2*c)', 'P4cc', 'P4mm', 'P4nc', 'P6', 'P6/m', 'P6/m(2*a,2*b,2*c)', 'P6/m(2*a,2*b,c)', 'P6/mcc', 'P6/mcc(2*a,2*b,c)', 'P6/mmm', 'P6/mmm(2*a,2*b,2*c)', 'P6/mmm(2*a,2*b,c)', 'P61', 'P6122', 'P62', 'P622', 'P6222', 'P63', 'P63/m', 'P63/m(2*a,2*b,c)', 'P63/mcm', 'P63/mcm(2*a,2*b,c)', 'P63/mmc', 'P63/mmc(2*a,2*b,c)', 'P6322', 'P63cm', 'P63mc', 'P64', 'P6422', 'P65', 'P6522', 'P6_1', 'P6_122', 'P6_2', 'P6_222', 'P6_3', 'P6_3/m', 'P6_3/mcm', 'P6_3/mmc', 'P6_322', 'P6_3cm', 'P6_3mc', 'P6_4', 'P6_422', 'P6_5', 'P6_522', 'P6cc', 'P6mm', 'Pa-3', 'Pb11', 'Pb21a', 'Pb21m', 'Pb2b', 'Pb2n', 'Pba2', 'Pbaa', 'Pbab', 'Pbam', 'Pban', 'Pban:1', 'Pban:2', 'Pbc21', 'Pbca', 'Pbcb', 'Pbcm', 'Pbcn', 'Pbm2', 'Pbma', 'Pbmb', 'Pbmm', 'Pbmn', 'Pbn21', 'Pbna', 'Pbnb', 'Pbnm', 'Pbnn', 'Pc11', 'Pc21b', 'Pc21n', 'Pc2a', 'Pc2m', 'Pca21', 'Pca2_1', 'Pcaa', 'Pcab', 'Pcam', 'Pcan', 'Pcc2', 'Pcca', 'Pccb', 'Pccm', 'Pccn', 'Pcm21', 'Pcma', 'Pcmb', 'Pcmm', 'Pcmn', 'Pcn2', 'Pcna', 'Pcna:1', 'Pcna:2', 'Pcnb', 'Pcnm', 'Pcnn', 'Pm-3', 'Pm-3m', 'Pm-3n', 'Pm11', 'Pm21b', 'Pm21n', 'Pm2a', 'Pm2m', 'Pma2', 'Pmaa', 'Pmab', 'Pmam', 'Pman', 'Pmc21', 'Pmc21(2*a,b,c)', 'Pmc2_1', 'Pmca', 'Pmcb', 'Pmcm', 'Pmcn', 'Pmm2', 'Pmma', 'Pmma(2*b+1/4,c,a-1/3)', 'Pmma(2*b,c,a)', 'Pmmb', 'Pmmm', 'Pmmm(2*a,2*b,c)', 'Pmmn', 'Pmmn:1', 'Pmmn:2', 'Pmn21', 'Pmn2_1', 'Pmna', 'Pmnb', 'Pmnm', 'Pmnm:1', 'Pmnm:2', 'Pmnn', 'Pn-3', 'Pn-3:1', 'Pn-3:2', 'Pn-3m', 'Pn-3m:1', 'Pn-3m:2', 'Pn-3n', 'Pn-3n:1', 'Pn-3n:2', 'Pn11', 'Pn21a', 'Pn21m', 'Pn2b', 'Pn2n', 'Pna21', 'Pna2_1', 'Pnaa', 'Pnab', 'Pnam', 'Pnan', 'Pnc2', 'Pnca', 'Pncb', 'Pncb:1', 'Pncb:2', 'Pncm', 'Pncn', 'Pnm21', 'Pnma', 'Pnma(c,a-1/4,b)', 'Pnmb', 'Pnmm', 'Pnmm:1', 'Pnmm:2', 'Pnmn', 'Pnn2', 'Pnna', 'Pnnb', 'Pnnm', 'Pnnn', 'Pnnn:1', 'Pnnn:2', 'R-3', 'R-3:H', 'R-3:R', 'R-3c', 'R-3c:H', 'R-3c:R', 'R-3m', 'R-3m:H', 'R-3m:R', 'R12/c1', 'R3', 'R32', 'R32:H', 'R32:R', 'R3:H', 'R3:R', 'R3c', 'R3c:H', 'R3c:R', 'R3m', 'R3m:H', 'R3m:R'}[source]
                                                                              +SG_SYMBOLS: ClassVar[set[str]] = {'A-1', 'A112', 'A112/a', 'A112/m', 'A112/n', 'A11a', 'A11m', 'A11n', 'A12/a1', 'A12/m1', 'A12/n1', 'A121', 'A1a1', 'A1m1', 'A1n1', 'A2122', 'A21am', 'A21ma', 'A222', 'A2aa', 'A2mm', 'Aba2', 'Abaa', 'Abaa:2', 'Abm2', 'Abmm', 'Acaa', 'Acaa:2', 'Acmm', 'Ae2a', 'Ae2m', 'Aea2', 'Aea2(-a,c+1/4,b-1/4)', 'Aea2(a,b+1/4,c-1/4)', 'Aea2(b,-a+1/4,c-1/4)', 'Aea2(b,c+1/4,a-1/4)', 'Aeaa', 'Aeaa:1', 'Aeam', 'Aem2', 'Aem2(-a,c+1/4,b-1/4)', 'Aem2(a,b+1/4,c-1/4)', 'Aem2(b,-a+1/4,c-1/4)', 'Aem2(b,c+1/4,a-1/4)', 'Aema', 'Am2a', 'Am2m', 'Ama2', 'Ama2(-a+1/4,c+1/4,b-1/4)', 'Ama2(-a,c+1/4,b-1/4)', 'Ama2(a+1/4,b+1/4,c-1/4)', 'Ama2(a,b+1/4,c-1/4)', 'Ama2(b+1/4,-a+1/4,c-1/4)', 'Ama2(b+1/4,c+1/4,a-1/4)', 'Ama2(b,-a+1/4,c-1/4)', 'Ama2(b,c+1/4,a-1/4)', 'Amaa', 'Amam', 'Amm2', 'Amm2(-a,c+1/4,b-1/4)', 'Amm2(a,b+1/4,c-1/4)', 'Amm2(b,-a+1/4,c-1/4)', 'Amm2(b,c+1/4,a-1/4)', 'Amma', 'Ammm', 'B-1', 'B112', 'B112/b', 'B112/m', 'B112/n', 'B11b', 'B11m', 'B11n', 'B121/m1', 'B1211', 'B2/b11', 'B2/m11', 'B2/n11', 'B211', 'B2212', 'B222', 'B2eb', 'B2em', 'B2mb', 'B2mm', 'Bb11', 'Bb21m', 'Bb2b', 'Bbab', 'Bbab:2', 'Bbcb', 'Bbcb:2', 'Bbe2', 'Bbeb', 'Bbeb:1', 'Bbem', 'Bbm2', 'Bbmb', 'Bbmm', 'Bm11', 'Bm21b', 'Bm2m', 'Bmam', 'Bmcm', 'Bme2', 'Bmeb', 'Bmm2', 'Bmmb', 'Bmmm', 'Bn11', 'C-1', 'C1', 'C12/c1', 'C12/m1', 'C12/m1(-a-1/4,c+1/4,b)', 'C12/m1(a+2*c,a,b)', 'C12/m1(a+2*c-1/4,a+1/4,b)', 'C12/m1(a+c-1/4,b+1/4,c)', 'C12/m1(a,b,a+2*c)', 'C12/m1(a-1/4,b+1/4,a+2*c)', 'C12/m1(a-1/4,b+1/4,c)', 'C12/m1(b,a+2*c,a)', 'C12/m1(b-1/4,-a+1/4,c)', 'C12/m1(b-1/4,a+2*c+1/4,a)', 'C12/m1(b-1/4,c+1/4,a)', 'C12/m1(b-1/4,c+1/4,a+c)', 'C12/m1(c-1/4,a+1/4,b)', 'C12/m1(c-1/4,a+c+1/4,b)', 'C12/m1(c-1/4,b+1/4,-a)', 'C12/n1', 'C121', 'C121(-a-1/4,c-1/4,b)', 'C121(a+2*c,a,b)', 'C121(a+2*c-1/4,a-1/4,b)', 'C121(a+c-1/4,b-1/4,c)', 'C121(a,b,a+2*c)', 'C121(a-1/4,b-1/4,a+2*c)', 'C121(a-1/4,b-1/4,c)', 'C121(c-1/4,a+c-1/4,b)', 'C121(c-1/4,a-1/4,b)', 'C121(c-1/4,b-1/4,-a)', 'C1c1', 'C1c1(2*a+c,b,c)', 'C1m1', 'C1m1(-a-1/4,c-1/4,b)', 'C1m1(a+2*c,a,b)', 'C1m1(a+2*c-1/4,a-1/4,b)', 'C1m1(a+c-1/4,b-1/4,c)', 'C1m1(a,b,a+2*c)', 'C1m1(a-1/4,b-1/4,a+2*c)', 'C1m1(a-1/4,b-1/4,c)', 'C1m1(b,a+2*c,a)', 'C1m1(b-1/4,-a-1/4,c)', 'C1m1(b-1/4,a+2*c-1/4,a)', 'C1m1(b-1/4,c-1/4,a)', 'C1m1(b-1/4,c-1/4,a+c)', 'C1m1(c-1/4,a+c-1/4,b)', 'C1m1(c-1/4,a-1/4,b)', 'C1m1(c-1/4,b-1/4,-a)', 'C1n1', 'C2/c11', 'C2/m11', 'C2/n11', 'C211', 'C222', 'C2221', 'C222_1', 'C2cm', 'C2eb', 'C2me', 'C2mm', 'Cc11', 'Cc2e', 'Cc2m', 'Ccc2', 'Ccc2(a-1/4,b-1/4,c)', 'Ccc2(b-1/4,c-1/4,a)', 'Ccca', 'Ccca:2', 'Cccb', 'Cccb:2', 'Ccce', 'Ccce:1', 'Cccm', 'Cccm(a,b,c-1/4)', 'Cccm(a-1/4,b-1/4,c)', 'Cccm(b,c,a-1/4)', 'Cccm(b-1/4,c-1/4,a)', 'Cccm(c,a,b-1/4)', 'Cccm(c-1/4,a-1/4,b)', 'Ccm21', 'Ccme', 'Ccmm', 'Cm11', 'Cm2e', 'Cm2m', 'Cmc21', 'Cmc21(-a,c+1/4,b)', 'Cmc21(-a-1/4,c-1/4,b)', 'Cmc21(a,b+1/4,c)', 'Cmc21(a-1/4,b-1/4,c)', 'Cmc21(b,-a+1/4,c)', 'Cmc21(b,c+1/4,a)', 'Cmc21(b-1/4,-a-1/4,c)', 'Cmc21(b-1/4,c-1/4,a)', 'Cmc2_1', 'Cmce', 'Cmce(-a-1/4,c-1/4,b)', 'Cmce(a-1/4,b-1/4,c)', 'Cmce(b-1/4,-a-1/4,c)', 'Cmce(b-1/4,c-1/4,a)', 'Cmce(c-1/4,a-1/4,b)', 'Cmce(c-1/4,b-1/4,-a)', 'Cmcm', 'Cmcm(-a+1/2,c-1/4,b+1/4)', 'Cmcm(-a-1/4,c-1/4,b)', 'Cmcm(a+1/2,b-1/4,c+1/4)', 'Cmcm(a-1/4,b-1/4,c)', 'Cmcm(b+1/2,-a-1/4,c+1/4)', 'Cmcm(b+1/2,c-1/4,a+1/4)', 'Cmcm(b-1/4,-a-1/4,c)', 'Cmcm(b-1/4,c-1/4,a)', 'Cmcm(c+1/2,a-1/4,b+1/4)', 'Cmcm(c+1/2,b-1/4,-a+1/4)', 'Cmcm(c-1/4,a-1/4,b)', 'Cmcm(c-1/4,b-1/4,-a)', 'Cmm2', 'Cmm2(2*c,a,b)', 'Cmm2(a-1/4,b-1/4,c)', 'Cmm2(b-1/4,c-1/4,a)', 'Cmma', 'Cmmb', 'Cmme', 'Cmmm', 'Cmmm(a-1/4,b-1/4,c)', 'Cmmm(b-1/4,c-1/4,a)', 'Cmmm(c-1/4,a-1/4,b)', 'Cn11', 'F-43c', 'F-43m', 'F222', 'F23', 'F2dd', 'F2mm', 'F4132', 'F432', 'F4_132', 'Fd-3', 'Fd-3:1', 'Fd-3:2', 'Fd-3c', 'Fd-3c:1', 'Fd-3c:2', 'Fd-3m', 'Fd-3m:1', 'Fd-3m:2', 'Fd2d', 'Fdd2', 'Fddd', 'Fddd:1', 'Fddd:2', 'Fm-3', 'Fm-3(a-1/4,b-1/4,c-1/4)', 'Fm-3c', 'Fm-3c(a+1/4,b+1/4,c+1/4)', 'Fm-3m', 'Fm-3m(a-1/4,b-1/4,c-1/4)', 'Fm2m', 'Fmm2', 'Fmm2(a+1/4,b+1/4,c+1/2)', 'Fmm2(a+1/4,b,c+1/4)', 'Fmm2(a,b-1/4,c-1/4)', 'Fmm2(b+1/4,c+1/4,a+1/2)', 'Fmm2(b+1/4,c,a+1/4)', 'Fmm2(b,c-1/4,a-1/4)', 'Fmmm', 'Fmmm(a+1/2,b+1/4,c+1/4)', 'Fmmm(a+1/4,b+1/4,c)', 'Fmmm(a-1/4,b+1/2,c+1/4)', 'Fmmm(a-1/4,b-1/4,c-1/4)', 'I-1', 'I-4', 'I-42d', 'I-42m', 'I-43d', 'I-43m', 'I-4c2', 'I-4m2', 'I112', 'I112/a', 'I112/b', 'I112/m', 'I11a', 'I11b', 'I11m', 'I12/a1', 'I12/c1', 'I12/m1', 'I121', 'I1a1', 'I1c1', 'I1m1', 'I2/b11', 'I2/c11', 'I2/m11', 'I211', 'I212121', 'I213', 'I222', 'I23', 'I2_12_12_1', 'I2_13', 'I2cb', 'I2cm', 'I2mb', 'I2mm', 'I4', 'I4/m', 'I4/m(a+1/2,b,c)', 'I4/m(a+1/2,b,c-1/4)', 'I4/m(a+b+1/2,-a+b,c)', 'I4/m(a+b+1/2,-a+b,c-1/4)', 'I4/m(a+b,-a+b,c)', 'I4/m(a-1/4,b-1/4,c+1/4)', 'I4/mcm', 'I4/mcm(a+1/2,b,c)', 'I4/mcm(a+1/2,b,c+1/4)', 'I4/mcm(a+1/4,b-1/4,c+1/4)', 'I4/mcm(a+b+1/2,-a+b,c)', 'I4/mcm(a+b+1/2,-a+b,c+1/4)', 'I4/mcm(a+b,-a+b,c)', 'I4/mcm(a+b,-a+b,c+1/4)', 'I4/mcm(a,b,c+1/4)', 'I4/mcm(a-1/4,b-1/4,c+1/4)', 'I4/mmm', 'I4/mmm(a+1/2,b,c)', 'I4/mmm(a+1/2,b,c-1/4)', 'I4/mmm(a+1/4,b-1/4,c+1/4)', 'I4/mmm(a+b+1/2,-a+b,c)', 'I4/mmm(a+b+1/2,-a+b,c-1/4)', 'I4/mmm(a+b,-a+b,c)', 'I4/mmm(a-1/4,b-1/4,c+1/4)', 'I41', 'I41/a', 'I41/a:1', 'I41/a:2', 'I41/acd', 'I41/acd:1', 'I41/acd:2', 'I41/amd', 'I41/amd:1', 'I41/amd:2', 'I4122', 'I4132', 'I41cd', 'I41md', 'I422', 'I432', 'I4_1', 'I4_1/a', 'I4_1/acd', 'I4_1/amd', 'I4_122', 'I4_132', 'I4_1cd', 'I4_1md', 'I4cm', 'I4mm', 'Ia-3', 'Ia-3d', 'Ib11', 'Iba2', 'Iba2(a-1/4,b-1/4,c+1/4)', 'Iba2(b-1/4,c-1/4,a+1/4)', 'Ibam', 'Ibam(a+1/4,b-1/4,c+1/4)', 'Ibam(a,b,c+1/4)', 'Ibam(b+1/4,c-1/4,a+1/4)', 'Ibam(b,c,a+1/4)', 'Ibam(c+1/4,a-1/4,b+1/4)', 'Ibam(c,a,b+1/4)', 'Ibca', 'Ibm2', 'Ibmm', 'Ic11', 'Ic2a', 'Ic2m', 'Icab', 'Icma', 'Icmm', 'Im-3', 'Im-3(a-1/4,b-1/4,c-1/4)', 'Im-3m', 'Im-3m(a-1/4,b-1/4,c-1/4)', 'Im11', 'Im2a', 'Im2m', 'Ima2', 'Ima2(-a-1/4,c-1/4,b+1/4)', 'Ima2(a-1/4,b-1/4,c+1/4)', 'Ima2(b-1/4,-a-1/4,c+1/4)', 'Ima2(b-1/4,c-1/4,a+1/4)', 'Imam', 'Imcb', 'Imcm', 'Imm2', 'Imm2(a,b-1/4,c)', 'Imm2(a-1/4,b,c+1/4)', 'Imm2(b,c-1/4,a)', 'Imm2(b-1/4,c,a+1/4)', 'Imma', 'Immb', 'Immm', 'Immm(a+1/4,b-1/4,c+1/4)', 'Immm(a,b,c-1/4)', 'Immm(a,b-1/4,c)', 'Immm(a-1/4,b,c)', 'P-1', 'P-1(-a+b+c,a-b+c,a+b-c)', 'P-3', 'P-31c', 'P-31m', 'P-3c1', 'P-3m1', 'P-4', 'P-421c', 'P-421m', 'P-42_1c', 'P-42_1m', 'P-42c', 'P-42m', 'P-43m', 'P-43n', 'P-4b2', 'P-4c2', 'P-4m2', 'P-4n2', 'P-6', 'P-62c', 'P-62m', 'P-6c2', 'P-6m2', 'P1', 'P1(-a+b+c,a-b+c,a+b-c)', 'P1(-a+c,-b,a+c)', 'P1(-a,-b+c,b+c)', 'P1(b+c,a+c,a+b)', 'P112', 'P112/a', 'P112/b', 'P112/m', 'P112/n', 'P1121', 'P1121/a', 'P1121/b', 'P1121/m', 'P1121/n', 'P11a', 'P11b', 'P11m', 'P11n', 'P12/a1', 'P12/c1', 'P12/c1(2*a+c,b,c)', 'P12/c1(a,2*b,c)', 'P12/c1(b,c,2*a+c)', 'P12/c1(c,2*a+c,b)', 'P12/m1', 'P12/m1(2*a+c,b,c)', 'P12/m1(b,c,2*a+c)', 'P12/m1(c,2*a+c,b)', 'P12/n1', 'P121', 'P121(2*a+c,b,c)', 'P121(c,2*a+c,b)', 'P121/a1', 'P121/c1', 'P121/c1(2*a+c,b,c)', 'P121/c1(2*c,2*a+c,b)', 'P121/c1(b,c,2*a+c)', 'P121/c1(c,2*a+c,b)', 'P121/m1', 'P121/m1(b,c,2*a+c)', 'P121/m1(c,2*a+c,b)', 'P121/n1', 'P1211', 'P1211(a-1/4,b,c)', 'P1211(c,2*a+c,b)', 'P12_1/c1', 'P12_1/m1', 'P12_11', 'P1a1', 'P1c1', 'P1c1(2*a+c,b,c)', 'P1c1(b,c,2*a+c)', 'P1c1(c,2*a+c,b)', 'P1m1', 'P1m1(2*a+c,b,c)', 'P1m1(b,c,2*a+c)', 'P1m1(c,2*a+c,b)', 'P1n1', 'P2/b11', 'P2/c11', 'P2/m11', 'P2/n11', 'P21/b11', 'P21/c11', 'P21/m11', 'P21/n11', 'P211', 'P2111', 'P21212', 'P212121', 'P212121(originshiftx,y,z+1/4)', 'P2122', 'P21221', 'P213', 'P21ab', 'P21am', 'P21ca', 'P21cn', 'P21ma', 'P21mn', 'P21nb', 'P21nm', 'P2212', 'P22121', 'P222', 'P2221', 'P222_1', 'P23', 'P2_12_12', 'P2_12_12_1', 'P2_13', 'P2aa', 'P2an', 'P2cb', 'P2cm', 'P2mb', 'P2mm', 'P2na', 'P2nn', 'P3', 'P31', 'P3112', 'P312', 'P3121', 'P31c', 'P31m', 'P32', 'P321', 'P3212', 'P3221', 'P3_1', 'P3_112', 'P3_121', 'P3_2', 'P3_212', 'P3_221', 'P3c1', 'P3m1', 'P4', 'P4/m', 'P4/m(a+b,-a+b+1/2,c)', 'P4/m(a+b,-a+b,c)', 'P4/mbm', 'P4/mcc', 'P4/mcc(a+b,-a+b+1/2,c)', 'P4/mcc(a+b,-a+b,c)', 'P4/mcc(a+b,-a+b,c+1/4)', 'P4/mmm', 'P4/mmm(a+b,-a+b+1/2,c)', 'P4/mmm(a+b,-a+b,c)', 'P4/mnc', 'P4/n', 'P4/n:1', 'P4/n:2', 'P4/nbm', 'P4/nbm:1', 'P4/nbm:2', 'P4/ncc', 'P4/ncc:1', 'P4/ncc:2', 'P4/nmm', 'P4/nmm:1', 'P4/nmm:2', 'P4/nnc', 'P4/nnc:1', 'P4/nnc:2', 'P41', 'P41212', 'P4122', 'P4132', 'P42', 'P42/m', 'P42/m(a+b,-a+b+1/2,c)', 'P42/m(a+b,-a+b,c)', 'P42/m(a+b,-a+b,c-1/4)', 'P42/mbc', 'P42/mcm', 'P42/mcm(a+b,-a+b+1/2,c)', 'P42/mcm(a+b,-a+b,c)', 'P42/mcm(a+b,-a+b,c+1/4)', 'P42/mmc', 'P42/mmc(a+b,-a+b+1/2,c)', 'P42/mmc(a+b,-a+b,c)', 'P42/mmc(a+b,-a+b,c-1/4)', 'P42/mnm', 'P42/n', 'P42/n:1', 'P42/n:2', 'P42/nbc', 'P42/nbc:1', 'P42/nbc:2', 'P42/ncm', 'P42/ncm:1', 'P42/ncm:2', 'P42/nmc', 'P42/nmc:1', 'P42/nmc:2', 'P42/nnm', 'P42/nnm:1', 'P42/nnm:2', 'P4212', 'P422', 'P42212', 'P4222', 'P4232', 'P42_12', 'P42bc', 'P42cm', 'P42mc', 'P42nm', 'P43', 'P432', 'P43212', 'P4322', 'P4332', 'P4_1', 'P4_122', 'P4_12_12', 'P4_132', 'P4_2', 'P4_2/m', 'P4_2/mbc', 'P4_2/mcm', 'P4_2/mmc', 'P4_2/mnm', 'P4_2/n', 'P4_2/nbc', 'P4_2/ncm', 'P4_2/nmc', 'P4_2/nnm', 'P4_222', 'P4_22_12', 'P4_232', 'P4_2bc', 'P4_2cm', 'P4_2mc', 'P4_2nm', 'P4_3', 'P4_322', 'P4_32_12', 'P4_332', 'P4bm', 'P4bm(a,b,2*c)', 'P4cc', 'P4mm', 'P4nc', 'P6', 'P6/m', 'P6/m(2*a,2*b,2*c)', 'P6/m(2*a,2*b,c)', 'P6/mcc', 'P6/mcc(2*a,2*b,c)', 'P6/mmm', 'P6/mmm(2*a,2*b,2*c)', 'P6/mmm(2*a,2*b,c)', 'P61', 'P6122', 'P62', 'P622', 'P6222', 'P63', 'P63/m', 'P63/m(2*a,2*b,c)', 'P63/mcm', 'P63/mcm(2*a,2*b,c)', 'P63/mmc', 'P63/mmc(2*a,2*b,c)', 'P6322', 'P63cm', 'P63mc', 'P64', 'P6422', 'P65', 'P6522', 'P6_1', 'P6_122', 'P6_2', 'P6_222', 'P6_3', 'P6_3/m', 'P6_3/mcm', 'P6_3/mmc', 'P6_322', 'P6_3cm', 'P6_3mc', 'P6_4', 'P6_422', 'P6_5', 'P6_522', 'P6cc', 'P6mm', 'Pa-3', 'Pb11', 'Pb21a', 'Pb21m', 'Pb2b', 'Pb2n', 'Pba2', 'Pbaa', 'Pbab', 'Pbam', 'Pban', 'Pban:1', 'Pban:2', 'Pbc21', 'Pbca', 'Pbcb', 'Pbcm', 'Pbcn', 'Pbm2', 'Pbma', 'Pbmb', 'Pbmm', 'Pbmn', 'Pbn21', 'Pbna', 'Pbnb', 'Pbnm', 'Pbnn', 'Pc11', 'Pc21b', 'Pc21n', 'Pc2a', 'Pc2m', 'Pca21', 'Pca2_1', 'Pcaa', 'Pcab', 'Pcam', 'Pcan', 'Pcc2', 'Pcca', 'Pccb', 'Pccm', 'Pccn', 'Pcm21', 'Pcma', 'Pcmb', 'Pcmm', 'Pcmn', 'Pcn2', 'Pcna', 'Pcna:1', 'Pcna:2', 'Pcnb', 'Pcnm', 'Pcnn', 'Pm-3', 'Pm-3m', 'Pm-3n', 'Pm11', 'Pm21b', 'Pm21n', 'Pm2a', 'Pm2m', 'Pma2', 'Pmaa', 'Pmab', 'Pmam', 'Pman', 'Pmc21', 'Pmc21(2*a,b,c)', 'Pmc2_1', 'Pmca', 'Pmcb', 'Pmcm', 'Pmcn', 'Pmm2', 'Pmma', 'Pmma(2*b+1/4,c,a-1/3)', 'Pmma(2*b,c,a)', 'Pmmb', 'Pmmm', 'Pmmm(2*a,2*b,c)', 'Pmmn', 'Pmmn:1', 'Pmmn:2', 'Pmn21', 'Pmn2_1', 'Pmna', 'Pmnb', 'Pmnm', 'Pmnm:1', 'Pmnm:2', 'Pmnn', 'Pn-3', 'Pn-3:1', 'Pn-3:2', 'Pn-3m', 'Pn-3m:1', 'Pn-3m:2', 'Pn-3n', 'Pn-3n:1', 'Pn-3n:2', 'Pn11', 'Pn21a', 'Pn21m', 'Pn2b', 'Pn2n', 'Pna21', 'Pna2_1', 'Pnaa', 'Pnab', 'Pnam', 'Pnan', 'Pnc2', 'Pnca', 'Pncb', 'Pncb:1', 'Pncb:2', 'Pncm', 'Pncn', 'Pnm21', 'Pnma', 'Pnma(c,a-1/4,b)', 'Pnmb', 'Pnmm', 'Pnmm:1', 'Pnmm:2', 'Pnmn', 'Pnn2', 'Pnna', 'Pnnb', 'Pnnm', 'Pnnn', 'Pnnn:1', 'Pnnn:2', 'R-3', 'R-3:H', 'R-3:R', 'R-3c', 'R-3c:H', 'R-3c:R', 'R-3m', 'R-3m:H', 'R-3m:R', 'R12/c1', 'R3', 'R32', 'R32:H', 'R32:R', 'R3:H', 'R3:R', 'R3c', 'R3c:H', 'R3c:R', 'R3m', 'R3m:H', 'R3m:R'}[source]

                                                                              -SYMM_OPS = [{'hall': ' P 1', 'hermann_mauguin': 'P1', 'hermann_mauguin_u': 'P1', 'ncsym': ['x,y,z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'P1', 'symops': ['x,y,z'], 'universal_h_m': 'P1'}, {'hall': '-P 1', 'hermann_mauguin': 'P-1', 'hermann_mauguin_u': 'P-1', 'ncsym': ['x,y,z', '-x,-y,-z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'Ci^1', 'short_h_m': 'P-1', 'symops': ['x,y,z', '-x,-y,-z'], 'universal_h_m': 'P-1'}, {'hall': ' P 2y', 'hermann_mauguin': 'P121', 'hermann_mauguin_u': 'P121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 3, 'point_group': '2', 'schoenflies': 'C2^1', 'short_h_m': 'P2', 'symops': ['x,y,z', '-x,y,-z'], 'universal_h_m': 'P121'}, {'hall': ' P 2', 'hermann_mauguin': 'P112', 'hermann_mauguin_u': 'P112', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 3, 'point_group': '2', 'schoenflies': 'C2^1', 'short_h_m': 'P2', 'symops': ['x,y,z', '-x,-y,z'], 'universal_h_m': 'P112'}, {'hall': ' P 2x', 'hermann_mauguin': 'P211', 'hermann_mauguin_u': 'P211', 'ncsym': ['x,y,z', 'x,-y,-z'], 'number': 3, 'point_group': '2', 'schoenflies': 'C2^1', 'short_h_m': 'P2', 'symops': ['x,y,z', 'x,-y,-z'], 'universal_h_m': 'P211'}, {'hall': ' P 2yb', 'hermann_mauguin': 'P1211', 'hermann_mauguin_u': 'P12_11', 'ncsym': ['x,y,z', '-x,y+1/2,-z'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'P2_1', 'symops': ['x,y,z', '-x,y+1/2,-z'], 'universal_h_m': 'P1211'}, {'hall': ' P 2c', 'hermann_mauguin': 'P1121', 'hermann_mauguin_u': 'P112_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'P2_1', 'symops': ['x,y,z', '-x,-y,z+1/2'], 'universal_h_m': 'P1121'}, {'hall': ' P 2xa', 'hermann_mauguin': 'P2111', 'hermann_mauguin_u': 'P2_111', 'ncsym': ['x,y,z', 'x+1/2,-y,-z'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'P2_1', 'symops': ['x,y,z', 'x+1/2,-y,-z'], 'universal_h_m': 'P2111'}, {'hall': ' C 2y', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,y,-z', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'C121'}, {'hall': ' A 2y', 'hermann_mauguin': 'A121', 'hermann_mauguin_u': 'A121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'A2', 'symops': ['x,y,z', '-x,y,-z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'A121'}, {'hall': ' I 2y', 'hermann_mauguin': 'I121', 'hermann_mauguin_u': 'I121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'I2', 'symops': ['x,y,z', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'I121'}, {'hall': ' A 2', 'hermann_mauguin': 'A112', 'hermann_mauguin_u': 'A112', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'A2', 'symops': ['x,y,z', '-x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2'], 'universal_h_m': 'A112'}, {'hall': ' B 2', 'hermann_mauguin': 'B112', 'hermann_mauguin_u': 'B112', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'B2', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2'], 'universal_h_m': 'B112'}, {'hall': ' I 2', 'hermann_mauguin': 'I112', 'hermann_mauguin_u': 'I112', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'I2', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'I112'}, {'hall': ' B 2x', 'hermann_mauguin': 'B211', 'hermann_mauguin_u': 'B211', 'ncsym': ['x,y,z', 'x,-y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'B2', 'symops': ['x,y,z', 'x,-y,-z', 'x+1/2,y,z+1/2', 'x+1/2,-y,-z+1/2'], 'universal_h_m': 'B211'}, {'hall': ' C 2x', 'hermann_mauguin': 'C211', 'hermann_mauguin_u': 'C211', 'ncsym': ['x,y,z', 'x,-y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', 'x,-y,-z', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,-z'], 'universal_h_m': 'C211'}, {'hall': ' I 2x', 'hermann_mauguin': 'I211', 'hermann_mauguin_u': 'I211', 'ncsym': ['x,y,z', 'x,-y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'I2', 'symops': ['x,y,z', 'x,-y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2'], 'universal_h_m': 'I211'}, {'hall': ' P -2y', 'hermann_mauguin': 'P1m1', 'hermann_mauguin_u': 'P1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', 'x,-y,z'], 'universal_h_m': 'P1m1'}, {'hall': ' P -2', 'hermann_mauguin': 'P11m', 'hermann_mauguin_u': 'P11m', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', 'x,y,-z'], 'universal_h_m': 'P11m'}, {'hall': ' P -2x', 'hermann_mauguin': 'Pm11', 'hermann_mauguin_u': 'Pm11', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', '-x,y,z'], 'universal_h_m': 'Pm11'}, {'hall': ' P -2yc', 'hermann_mauguin': 'P1c1', 'hermann_mauguin_u': 'P1c1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pc', 'symops': ['x,y,z', 'x,-y,z+1/2'], 'universal_h_m': 'P1c1'}, {'hall': ' P -2yac', 'hermann_mauguin': 'P1n1', 'hermann_mauguin_u': 'P1n1', 'ncsym': ['x,y,z', 'x+1/2,-y,z+1/2'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pn', 'symops': ['x,y,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P1n1'}, {'hall': ' P -2ya', 'hermann_mauguin': 'P1a1', 'hermann_mauguin_u': 'P1a1', 'ncsym': ['x,y,z', 'x+1/2,-y,z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pa', 'symops': ['x,y,z', 'x+1/2,-y,z'], 'universal_h_m': 'P1a1'}, {'hall': ' P -2a', 'hermann_mauguin': 'P11a', 'hermann_mauguin_u': 'P11a', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pa', 'symops': ['x,y,z', 'x+1/2,y,-z'], 'universal_h_m': 'P11a'}, {'hall': ' P -2ab', 'hermann_mauguin': 'P11n', 'hermann_mauguin_u': 'P11n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pn', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'P11n'}, {'hall': ' P -2b', 'hermann_mauguin': 'P11b', 'hermann_mauguin_u': 'P11b', 'ncsym': ['x,y,z', 'x,y+1/2,-z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pb', 'symops': ['x,y,z', 'x,y+1/2,-z'], 'universal_h_m': 'P11b'}, {'hall': ' P -2xb', 'hermann_mauguin': 'Pb11', 'hermann_mauguin_u': 'Pb11', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pb', 'symops': ['x,y,z', '-x,y+1/2,z'], 'universal_h_m': 'Pb11'}, {'hall': ' P -2xbc', 'hermann_mauguin': 'Pn11', 'hermann_mauguin_u': 'Pn11', 'ncsym': ['x,y,z', '-x,y+1/2,z+1/2'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pn', 'symops': ['x,y,z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Pn11'}, {'hall': ' P -2xc', 'hermann_mauguin': 'Pc11', 'hermann_mauguin_u': 'Pc11', 'ncsym': ['x,y,z', '-x,y,z+1/2'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pc', 'symops': ['x,y,z', '-x,y,z+1/2'], 'universal_h_m': 'Pc11'}, {'hall': ' C -2y', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'C1m1'}, {'hall': ' A -2y', 'hermann_mauguin': 'A1m1', 'hermann_mauguin_u': 'A1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Am', 'symops': ['x,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'A1m1'}, {'hall': ' I -2y', 'hermann_mauguin': 'I1m1', 'hermann_mauguin_u': 'I1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Im', 'symops': ['x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'I1m1'}, {'hall': ' A -2', 'hermann_mauguin': 'A11m', 'hermann_mauguin_u': 'A11m', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Am', 'symops': ['x,y,z', 'x,y,-z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'A11m'}, {'hall': ' B -2', 'hermann_mauguin': 'B11m', 'hermann_mauguin_u': 'B11m', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Bm', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2'], 'universal_h_m': 'B11m'}, {'hall': ' I -2', 'hermann_mauguin': 'I11m', 'hermann_mauguin_u': 'I11m', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Im', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'I11m'}, {'hall': ' B -2x', 'hermann_mauguin': 'Bm11', 'hermann_mauguin_u': 'Bm11', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Bm', 'symops': ['x,y,z', '-x,y,z', 'x+1/2,y,z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'Bm11'}, {'hall': ' C -2x', 'hermann_mauguin': 'Cm11', 'hermann_mauguin_u': 'Cm11', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x,y,z', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'Cm11'}, {'hall': ' I -2x', 'hermann_mauguin': 'Im11', 'hermann_mauguin_u': 'Im11', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Im', 'symops': ['x,y,z', '-x,y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Im11'}, {'hall': ' C -2yc', 'hermann_mauguin': 'C1c1', 'hermann_mauguin_u': 'C1c1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Cc', 'symops': ['x,y,z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'C1c1'}, {'hall': ' A -2yab', 'hermann_mauguin': 'A1n1', 'hermann_mauguin_u': 'A1n1', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'An', 'symops': ['x,y,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', 'x+1/2,-y+1,z+1/2'], 'universal_h_m': 'A1n1'}, {'hall': ' I -2ya', 'hermann_mauguin': 'I1a1', 'hermann_mauguin_u': 'I1a1', 'ncsym': ['x,y,z', 'x+1/2,-y,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ia', 'symops': ['x,y,z', 'x+1/2,-y,z', 'x+1/2,y+1/2,z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'I1a1'}, {'hall': ' A -2ya', 'hermann_mauguin': 'A1a1', 'hermann_mauguin_u': 'A1a1', 'ncsym': ['x,y,z', 'x+1/2,-y,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Aa', 'symops': ['x,y,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'A1a1'}, {'hall': ' C -2yac', 'hermann_mauguin': 'C1n1', 'hermann_mauguin_u': 'C1n1', 'ncsym': ['x,y,z', 'x+1/2,-y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Cn', 'symops': ['x,y,z', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'C1n1'}, {'hall': ' I -2yc', 'hermann_mauguin': 'I1c1', 'hermann_mauguin_u': 'I1c1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ic', 'symops': ['x,y,z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1'], 'universal_h_m': 'I1c1'}, {'hall': ' A -2a', 'hermann_mauguin': 'A11a', 'hermann_mauguin_u': 'A11a', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Aa', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'A11a'}, {'hall': ' B -2ab', 'hermann_mauguin': 'B11n', 'hermann_mauguin_u': 'B11n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Bn', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', 'x+1/2,y,z+1/2', 'x+1,y+1/2,-z+1/2'], 'universal_h_m': 'B11n'}, {'hall': ' I -2b', 'hermann_mauguin': 'I11b', 'hermann_mauguin_u': 'I11b', 'ncsym': ['x,y,z', 'x,y+1/2,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ib', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1,-z+1/2'], 'universal_h_m': 'I11b'}, {'hall': ' B -2b', 'hermann_mauguin': 'B11b', 'hermann_mauguin_u': 'B11b', 'ncsym': ['x,y,z', 'x,y+1/2,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Bb', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'B11b'}, {'hall': ' A -2ab', 'hermann_mauguin': 'A11n', 'hermann_mauguin_u': 'A11n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'An', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', 'x,y+1/2,z+1/2', 'x+1/2,y+1,-z+1/2'], 'universal_h_m': 'A11n'}, {'hall': ' I -2a', 'hermann_mauguin': 'I11a', 'hermann_mauguin_u': 'I11a', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ia', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1,y+1/2,-z+1/2'], 'universal_h_m': 'I11a'}, {'hall': ' B -2xb', 'hermann_mauguin': 'Bb11', 'hermann_mauguin_u': 'Bb11', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Bb', 'symops': ['x,y,z', '-x,y+1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Bb11'}, {'hall': ' C -2xac', 'hermann_mauguin': 'Cn11', 'hermann_mauguin_u': 'Cn11', 'ncsym': ['x,y,z', '-x+1/2,y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Cn', 'symops': ['x,y,z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x+1,y+1/2,z+1/2'], 'universal_h_m': 'Cn11'}, {'hall': ' I -2xc', 'hermann_mauguin': 'Ic11', 'hermann_mauguin_u': 'Ic11', 'ncsym': ['x,y,z', '-x,y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ic', 'symops': ['x,y,z', '-x,y,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,z+1'], 'universal_h_m': 'Ic11'}, {'hall': ' C -2xc', 'hermann_mauguin': 'Cc11', 'hermann_mauguin_u': 'Cc11', 'ncsym': ['x,y,z', '-x,y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Cc', 'symops': ['x,y,z', '-x,y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Cc11'}, {'hall': ' B -2xab', 'hermann_mauguin': 'Bn11', 'hermann_mauguin_u': 'Bn11', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Bn', 'symops': ['x,y,z', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x+1,y+1/2,z+1/2'], 'universal_h_m': 'Bn11'}, {'hall': ' I -2xb', 'hermann_mauguin': 'Ib11', 'hermann_mauguin_u': 'Ib11', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ib', 'symops': ['x,y,z', '-x,y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1,z+1/2'], 'universal_h_m': 'Ib11'}, {'hall': '-P 2y', 'hermann_mauguin': 'P12/m1', 'hermann_mauguin_u': 'P12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'universal_h_m': 'P12/m1'}, {'hall': '-P 2', 'hermann_mauguin': 'P112/m', 'hermann_mauguin_u': 'P112/m', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'universal_h_m': 'P112/m'}, {'hall': '-P 2x', 'hermann_mauguin': 'P2/m11', 'hermann_mauguin_u': 'P2/m11', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'universal_h_m': 'P2/m11'}, {'hall': '-P 2yb', 'hermann_mauguin': 'P121/m1', 'hermann_mauguin_u': 'P12_1/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y-1/2,z'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'P2_1/m', 'symops': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y-1/2,z'], 'universal_h_m': 'P121/m1'}, {'hall': '-P 2c', 'hermann_mauguin': 'P1121/m', 'hermann_mauguin_u': 'P112_1/m', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z-1/2'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'P2_1/m', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z-1/2'], 'universal_h_m': 'P1121/m'}, {'hall': '-P 2xa', 'hermann_mauguin': 'P21/m11', 'hermann_mauguin_u': 'P2_1/m11', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x-1/2,y,z'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'P2_1/m', 'symops': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x-1/2,y,z'], 'universal_h_m': 'P21/m11'}, {'hall': '-C 2y', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'C12/m1'}, {'hall': '-A 2y', 'hermann_mauguin': 'A12/m1', 'hermann_mauguin_u': 'A12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'A2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'A12/m1'}, {'hall': '-I 2y', 'hermann_mauguin': 'I12/m1', 'hermann_mauguin_u': 'I12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'I2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'I12/m1'}, {'hall': '-A 2', 'hermann_mauguin': 'A112/m', 'hermann_mauguin_u': 'A112/m', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'A2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'A112/m'}, {'hall': '-B 2', 'hermann_mauguin': 'B112/m', 'hermann_mauguin_u': 'B112/m', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'B2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2'], 'universal_h_m': 'B112/m'}, {'hall': '-I 2', 'hermann_mauguin': 'I112/m', 'hermann_mauguin_u': 'I112/m', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'I2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'I112/m'}, {'hall': '-B 2x', 'hermann_mauguin': 'B2/m11', 'hermann_mauguin_u': 'B2/m11', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'B2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z', 'x+1/2,y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'B2/m11'}, {'hall': '-C 2x', 'hermann_mauguin': 'C2/m11', 'hermann_mauguin_u': 'C2/m11', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'C2/m11'}, {'hall': '-I 2x', 'hermann_mauguin': 'I2/m11', 'hermann_mauguin_u': 'I2/m11', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'I2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'I2/m11'}, {'hall': '-P 2yc', 'hermann_mauguin': 'P12/c1', 'hermann_mauguin_u': 'P12/c1', 'ncsym': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2'], 'universal_h_m': 'P12/c1'}, {'hall': '-P 2yac', 'hermann_mauguin': 'P12/n1', 'hermann_mauguin_u': 'P12/n1', 'ncsym': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,-y,z-1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/n', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'P12/n1'}, {'hall': '-P 2ya', 'hermann_mauguin': 'P12/a1', 'hermann_mauguin_u': 'P12/a1', 'ncsym': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/a', 'symops': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z'], 'universal_h_m': 'P12/a1'}, {'hall': '-P 2a', 'hermann_mauguin': 'P112/a', 'hermann_mauguin_u': 'P112/a', 'ncsym': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/a', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z'], 'universal_h_m': 'P112/a'}, {'hall': '-P 2ab', 'hermann_mauguin': 'P112/n', 'hermann_mauguin_u': 'P112/n', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/n', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z'], 'universal_h_m': 'P112/n'}, {'hall': '-P 2b', 'hermann_mauguin': 'P112/b', 'hermann_mauguin_u': 'P112/b', 'ncsym': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/b', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z'], 'universal_h_m': 'P112/b'}, {'hall': '-P 2xb', 'hermann_mauguin': 'P2/b11', 'hermann_mauguin_u': 'P2/b11', 'ncsym': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/b', 'symops': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z'], 'universal_h_m': 'P2/b11'}, {'hall': '-P 2xbc', 'hermann_mauguin': 'P2/n11', 'hermann_mauguin_u': 'P2/n11', 'ncsym': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x,-y,-z', '-x,y-1/2,z-1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/n', 'symops': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x,-y,-z', '-x,y-1/2,z-1/2'], 'universal_h_m': 'P2/n11'}, {'hall': '-P 2xc', 'hermann_mauguin': 'P2/c11', 'hermann_mauguin_u': 'P2/c11', 'ncsym': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2'], 'universal_h_m': 'P2/c11'}, {'hall': '-P 2ybc', 'hermann_mauguin': 'P121/c1', 'hermann_mauguin_u': 'P12_1/c1', 'ncsym': ['x,y,z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,-y-1/2,z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'P121/c1'}, {'hall': '-P 2yn', 'hermann_mauguin': 'P121/n1', 'hermann_mauguin_u': 'P12_1/n1', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,-y-1/2,z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/n', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'P121/n1'}, {'hall': '-P 2yab', 'hermann_mauguin': 'P121/a1', 'hermann_mauguin_u': 'P12_1/a1', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,-y-1/2,z'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/a', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'P121/a1'}, {'hall': '-P 2ac', 'hermann_mauguin': 'P1121/a', 'hermann_mauguin_u': 'P112_1/a', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/a', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2'], 'universal_h_m': 'P1121/a'}, {'hall': '-P 2n', 'hermann_mauguin': 'P1121/n', 'hermann_mauguin_u': 'P112_1/n', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/n', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2'], 'universal_h_m': 'P1121/n'}, {'hall': '-P 2bc', 'hermann_mauguin': 'P1121/b', 'hermann_mauguin_u': 'P112_1/b', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/b', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2'], 'universal_h_m': 'P1121/b'}, {'hall': '-P 2xab', 'hermann_mauguin': 'P21/b11', 'hermann_mauguin_u': 'P2_1/b11', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x-1/2,y-1/2,z'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/b', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x-1/2,y-1/2,z'], 'universal_h_m': 'P21/b11'}, {'hall': '-P 2xn', 'hermann_mauguin': 'P21/n11', 'hermann_mauguin_u': 'P2_1/n11', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z', '-x-1/2,y-1/2,z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/n', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z', '-x-1/2,y-1/2,z-1/2'], 'universal_h_m': 'P21/n11'}, {'hall': '-P 2xac', 'hermann_mauguin': 'P21/c11', 'hermann_mauguin_u': 'P2_1/c11', 'ncsym': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x,-y,-z', '-x-1/2,y,z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x,-y,-z', '-x-1/2,y,z-1/2'], 'universal_h_m': 'P21/c11'}, {'hall': '-C 2yc', 'hermann_mauguin': 'C12/c1', 'hermann_mauguin_u': 'C12/c1', 'ncsym': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'C2/c', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z-1/2'], 'universal_h_m': 'C12/c1'}, {'hall': '-A 2yab', 'hermann_mauguin': 'A12/n1', 'hermann_mauguin_u': 'A12/n1', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,-y-1/2,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'A2/n', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,-y-1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,-y,z+1/2'], 'universal_h_m': 'A12/n1'}, {'hall': '-I 2ya', 'hermann_mauguin': 'I12/a1', 'hermann_mauguin_u': 'I12/a1', 'ncsym': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/a', 'symops': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'I12/a1'}, {'hall': '-A 2ya', 'hermann_mauguin': 'A12/a1', 'hermann_mauguin_u': 'A12/a1', 'ncsym': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'A2/a', 'symops': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,-y+1/2,z+1/2'], 'universal_h_m': 'A12/a1'}, {'hall': '-C 2yac', 'hermann_mauguin': 'C12/n1', 'hermann_mauguin_u': 'C12/n1', 'ncsym': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,-y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'C2/n', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,-y+1/2,z-1/2'], 'universal_h_m': 'C12/n1'}, {'hall': '-I 2yc', 'hermann_mauguin': 'I12/c1', 'hermann_mauguin_u': 'I12/c1', 'ncsym': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/c', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'I12/c1'}, {'hall': '-A 2a', 'hermann_mauguin': 'A112/a', 'hermann_mauguin_u': 'A112/a', 'ncsym': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'A2/a', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y+1/2,-z+1/2'], 'universal_h_m': 'A112/a'}, {'hall': '-B 2ab', 'hermann_mauguin': 'B112/n', 'hermann_mauguin_u': 'B112/n', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'B2/n', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z', 'x+1/2,y,z+1/2', '-x+1,-y+1/2,z+1/2', '-x+1/2,-y,-z+1/2', 'x,y-1/2,-z+1/2'], 'universal_h_m': 'B112/n'}, {'hall': '-I 2b', 'hermann_mauguin': 'I112/b', 'hermann_mauguin_u': 'I112/b', 'ncsym': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/b', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2'], 'universal_h_m': 'I112/b'}, {'hall': '-B 2b', 'hermann_mauguin': 'B112/b', 'hermann_mauguin_u': 'B112/b', 'ncsym': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'B2/b', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y-1/2,-z+1/2'], 'universal_h_m': 'B112/b'}, {'hall': '-A 2ab', 'hermann_mauguin': 'A112/n', 'hermann_mauguin_u': 'A112/n', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'A2/n', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y,-z+1/2'], 'universal_h_m': 'A112/n'}, {'hall': '-I 2a', 'hermann_mauguin': 'I112/a', 'hermann_mauguin_u': 'I112/a', 'ncsym': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/a', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z', 'x+1/2,y+1/2,z+1/2', '-x+1,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'I112/a'}, {'hall': '-B 2xb', 'hermann_mauguin': 'B2/b11', 'hermann_mauguin_u': 'B2/b11', 'ncsym': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'B2/b', 'symops': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z', 'x+1/2,y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+1/2,y-1/2,z+1/2'], 'universal_h_m': 'B2/b11'}, {'hall': '-C 2xac', 'hermann_mauguin': 'C2/n11', 'hermann_mauguin_u': 'C2/n11', 'ncsym': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x,-y,-z', '-x-1/2,y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'C2/n', 'symops': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x,-y,-z', '-x-1/2,y,z-1/2', 'x+1/2,y+1/2,z', 'x+1,-y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', '-x,y+1/2,z-1/2'], 'universal_h_m': 'C2/n11'}, {'hall': '-I 2xc', 'hermann_mauguin': 'I2/c11', 'hermann_mauguin_u': 'I2/c11', 'ncsym': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/c', 'symops': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,z'], 'universal_h_m': 'I2/c11'}, {'hall': '-C 2xc', 'hermann_mauguin': 'C2/c11', 'hermann_mauguin_u': 'C2/c11', 'ncsym': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'C2/c', 'symops': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,z-1/2'], 'universal_h_m': 'C2/c11'}, {'hall': '-B 2xab', 'hermann_mauguin': 'B2/n11', 'hermann_mauguin_u': 'B2/n11', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x-1/2,y-1/2,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'B2/n', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x-1/2,y-1/2,z', 'x+1/2,y,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', '-x,y-1/2,z+1/2'], 'universal_h_m': 'B2/n11'}, {'hall': '-I 2xb', 'hermann_mauguin': 'I2/b11', 'hermann_mauguin_u': 'I2/b11', 'ncsym': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/b', 'symops': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'I2/b11'}, {'hall': ' P 2 2', 'hermann_mauguin': 'P222', 'hermann_mauguin_u': 'P222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 16, 'point_group': '222', 'schoenflies': 'D2^1', 'short_h_m': 'P222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'universal_h_m': 'P222'}, {'hall': ' P 2c 2', 'hermann_mauguin': 'P2221', 'hermann_mauguin_u': 'P222_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2'], 'number': 17, 'point_group': '222', 'schoenflies': 'D2^2', 'short_h_m': 'P222_1', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2'], 'universal_h_m': 'P2221'}, {'hall': ' P 2a 2a', 'hermann_mauguin': 'P2122', 'hermann_mauguin_u': 'P2_122', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z'], 'number': 17, 'point_group': '222', 'schoenflies': 'D2^2', 'short_h_m': 'P2_122', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z'], 'universal_h_m': 'P2122'}, {'hall': ' P 2 2b', 'hermann_mauguin': 'P2212', 'hermann_mauguin_u': 'P22_12', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z'], 'number': 17, 'point_group': '222', 'schoenflies': 'D2^2', 'short_h_m': 'P22_12', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z'], 'universal_h_m': 'P2212'}, {'hall': ' P 2 2ab', 'hermann_mauguin': 'P21212', 'hermann_mauguin_u': 'P2_12_12', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z'], 'number': 18, 'point_group': '222', 'schoenflies': 'D2^3', 'short_h_m': 'P2_12_12', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'P21212'}, {'hall': ' P 2bc 2', 'hermann_mauguin': 'P22121', 'hermann_mauguin_u': 'P22_12_1', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2'], 'number': 18, 'point_group': '222', 'schoenflies': 'D2^3', 'short_h_m': 'P22_12_1', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'P22121'}, {'hall': ' P 2ac 2ac', 'hermann_mauguin': 'P21221', 'hermann_mauguin_u': 'P2_122_1', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z'], 'number': 18, 'point_group': '222', 'schoenflies': 'D2^3', 'short_h_m': 'P2_122_1', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z'], 'universal_h_m': 'P21221'}, {'hall': ' P 2ac 2ab', 'hermann_mauguin': 'P212121', 'hermann_mauguin_u': 'P2_12_12_1', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2'], 'number': 19, 'point_group': '222', 'schoenflies': 'D2^4', 'short_h_m': 'P2_12_12_1', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'P212121'}, {'hall': ' C 2c 2', 'hermann_mauguin': 'C2221', 'hermann_mauguin_u': 'C222_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2'], 'number': 20, 'point_group': '222', 'schoenflies': 'D2^5', 'short_h_m': 'C222_1', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'C2221'}, {'hall': ' A 2a 2a', 'hermann_mauguin': 'A2122', 'hermann_mauguin_u': 'A2_122', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z'], 'number': 20, 'point_group': '222', 'schoenflies': 'D2^5', 'short_h_m': 'A2_122', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'A2122'}, {'hall': ' B 2 2b', 'hermann_mauguin': 'B2212', 'hermann_mauguin_u': 'B22_12', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z'], 'number': 20, 'point_group': '222', 'schoenflies': 'D2^5', 'short_h_m': 'B22_12', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'B2212'}, {'hall': ' C 2 2', 'hermann_mauguin': 'C222', 'hermann_mauguin_u': 'C222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 21, 'point_group': '222', 'schoenflies': 'D2^6', 'short_h_m': 'C222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'C222'}, {'hall': ' A 2 2', 'hermann_mauguin': 'A222', 'hermann_mauguin_u': 'A222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 21, 'point_group': '222', 'schoenflies': 'D2^6', 'short_h_m': 'A222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'A222'}, {'hall': ' B 2 2', 'hermann_mauguin': 'B222', 'hermann_mauguin_u': 'B222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 21, 'point_group': '222', 'schoenflies': 'D2^6', 'short_h_m': 'B222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2'], 'universal_h_m': 'B222'}, {'hall': ' F 2 2', 'hermann_mauguin': 'F222', 'hermann_mauguin_u': 'F222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 22, 'point_group': '222', 'schoenflies': 'D2^7', 'short_h_m': 'F222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'F222'}, {'hall': ' I 2 2', 'hermann_mauguin': 'I222', 'hermann_mauguin_u': 'I222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 23, 'point_group': '222', 'schoenflies': 'D2^8', 'short_h_m': 'I222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'I222'}, {'hall': ' I 2b 2c', 'hermann_mauguin': 'I212121', 'hermann_mauguin_u': 'I2_12_12_1', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2'], 'number': 24, 'point_group': '222', 'schoenflies': 'D2^9', 'short_h_m': 'I2_12_12_1', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1,-z+1'], 'universal_h_m': 'I212121'}, {'hall': ' P 2 -2', 'hermann_mauguin': 'Pmm2', 'hermann_mauguin_u': 'Pmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 25, 'point_group': 'mm2', 'schoenflies': 'C2v^1', 'short_h_m': 'Pmm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'universal_h_m': 'Pmm2'}, {'hall': ' P -2 2', 'hermann_mauguin': 'P2mm', 'hermann_mauguin_u': 'P2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 25, 'point_group': 'mm2', 'schoenflies': 'C2v^1', 'short_h_m': 'P2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'universal_h_m': 'P2mm'}, {'hall': ' P -2 -2', 'hermann_mauguin': 'Pm2m', 'hermann_mauguin_u': 'Pm2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 25, 'point_group': 'mm2', 'schoenflies': 'C2v^1', 'short_h_m': 'Pm2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'universal_h_m': 'Pm2m'}, {'hall': ' P 2c -2', 'hermann_mauguin': 'Pmc21', 'hermann_mauguin_u': 'Pmc2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'Pmc2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'universal_h_m': 'Pmc21'}, {'hall': ' P 2c -2c', 'hermann_mauguin': 'Pcm21', 'hermann_mauguin_u': 'Pcm2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'Pcm2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'universal_h_m': 'Pcm21'}, {'hall': ' P -2a 2a', 'hermann_mauguin': 'P21ma', 'hermann_mauguin_u': 'P2_1ma', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,-y,-z', 'x,-y,z'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'P2_1ma', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,-y,-z', 'x,-y,z'], 'universal_h_m': 'P21ma'}, {'hall': ' P -2 2a', 'hermann_mauguin': 'P21am', 'hermann_mauguin_u': 'P2_1am', 'ncsym': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z', 'x+1/2,-y,z'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'P2_1am', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z', 'x+1/2,-y,z'], 'universal_h_m': 'P21am'}, {'hall': ' P -2 -2b', 'hermann_mauguin': 'Pb21m', 'hermann_mauguin_u': 'Pb2_1m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'Pb2_1m', 'symops': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'universal_h_m': 'Pb21m'}, {'hall': ' P -2b -2', 'hermann_mauguin': 'Pm21b', 'hermann_mauguin_u': 'Pm2_1b', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'Pm2_1b', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'universal_h_m': 'Pm21b'}, {'hall': ' P 2 -2c', 'hermann_mauguin': 'Pcc2', 'hermann_mauguin_u': 'Pcc2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'number': 27, 'point_group': 'mm2', 'schoenflies': 'C2v^3', 'short_h_m': 'Pcc2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Pcc2'}, {'hall': ' P -2a 2', 'hermann_mauguin': 'P2aa', 'hermann_mauguin_u': 'P2aa', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'number': 27, 'point_group': 'mm2', 'schoenflies': 'C2v^3', 'short_h_m': 'P2aa', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'universal_h_m': 'P2aa'}, {'hall': ' P -2b -2b', 'hermann_mauguin': 'Pb2b', 'hermann_mauguin_u': 'Pb2b', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'number': 27, 'point_group': 'mm2', 'schoenflies': 'C2v^3', 'short_h_m': 'Pb2b', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'universal_h_m': 'Pb2b'}, {'hall': ' P 2 -2a', 'hermann_mauguin': 'Pma2', 'hermann_mauguin_u': 'Pma2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'Pma2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'universal_h_m': 'Pma2'}, {'hall': ' P 2 -2b', 'hermann_mauguin': 'Pbm2', 'hermann_mauguin_u': 'Pbm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'Pbm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z'], 'universal_h_m': 'Pbm2'}, {'hall': ' P -2b 2', 'hermann_mauguin': 'P2mb', 'hermann_mauguin_u': 'P2mb', 'ncsym': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'P2mb', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z'], 'universal_h_m': 'P2mb'}, {'hall': ' P -2c 2', 'hermann_mauguin': 'P2cm', 'hermann_mauguin_u': 'P2cm', 'ncsym': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'P2cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2'], 'universal_h_m': 'P2cm'}, {'hall': ' P -2c -2c', 'hermann_mauguin': 'Pc2m', 'hermann_mauguin_u': 'Pc2m', 'ncsym': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'Pc2m', 'symops': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z'], 'universal_h_m': 'Pc2m'}, {'hall': ' P -2a -2a', 'hermann_mauguin': 'Pm2a', 'hermann_mauguin_u': 'Pm2a', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'Pm2a', 'symops': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z'], 'universal_h_m': 'Pm2a'}, {'hall': ' P 2c -2ac', 'hermann_mauguin': 'Pca21', 'hermann_mauguin_u': 'Pca2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'Pca2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'universal_h_m': 'Pca21'}, {'hall': ' P 2c -2b', 'hermann_mauguin': 'Pbc21', 'hermann_mauguin_u': 'Pbc2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y+1/2,z', 'x,-y+1/2,z+1/2'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'Pbc2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,y+1/2,z', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Pbc21'}, {'hall': ' P -2b 2a', 'hermann_mauguin': 'P21ab', 'hermann_mauguin_u': 'P2_1ab', 'ncsym': ['x,y,z', 'x,y+1/2,-z', 'x+1/2,-y,-z', 'x+1/2,-y+1/2,z'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'P2_1ab', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x+1/2,-y,-z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P21ab'}, {'hall': ' P -2ac 2a', 'hermann_mauguin': 'P21ca', 'hermann_mauguin_u': 'P2_1ca', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', 'x+1/2,-y,-z', 'x,-y,z+1/2'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'P2_1ca', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', 'x+1/2,-y,-z', 'x,-y,z+1/2'], 'universal_h_m': 'P21ca'}, {'hall': ' P -2bc -2c', 'hermann_mauguin': 'Pc21b', 'hermann_mauguin_u': 'Pc2_1b', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', '-x,y+1/2,-z'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'Pc2_1b', 'symops': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', '-x,y+1/2,-z'], 'universal_h_m': 'Pc21b'}, {'hall': ' P -2a -2ab', 'hermann_mauguin': 'Pb21a', 'hermann_mauguin_u': 'Pb2_1a', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y+1/2,z', '-x,y+1/2,-z'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'Pb2_1a', 'symops': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y+1/2,z', '-x,y+1/2,-z'], 'universal_h_m': 'Pb21a'}, {'hall': ' P 2 -2bc', 'hermann_mauguin': 'Pnc2', 'hermann_mauguin_u': 'Pnc2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'Pnc2', 'symops': ['x,y,z', '-x,-y,z', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Pnc2'}, {'hall': ' P 2 -2ac', 'hermann_mauguin': 'Pcn2', 'hermann_mauguin_u': 'Pcn2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'Pcn2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Pcn2'}, {'hall': ' P -2ac 2', 'hermann_mauguin': 'P2na', 'hermann_mauguin_u': 'P2na', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', 'x,-y,-z', 'x+1/2,-y,z+1/2'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'P2na', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', 'x,-y,-z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P2na'}, {'hall': ' P -2ab 2', 'hermann_mauguin': 'P2an', 'hermann_mauguin_u': 'P2an', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', 'x,-y,-z', 'x+1/2,-y+1/2,z'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'P2an', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', 'x,-y,-z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P2an'}, {'hall': ' P -2ab -2ab', 'hermann_mauguin': 'Pb2n', 'hermann_mauguin_u': 'Pb2n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x,y,-z'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'Pb2n', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x,y,-z'], 'universal_h_m': 'Pb2n'}, {'hall': ' P -2bc -2bc', 'hermann_mauguin': 'Pn2b', 'hermann_mauguin_u': 'Pn2b', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-x,y,-z'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'Pn2b', 'symops': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-x,y,-z'], 'universal_h_m': 'Pn2b'}, {'hall': ' P 2ac -2', 'hermann_mauguin': 'Pmn21', 'hermann_mauguin_u': 'Pmn2_1', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'Pmn2_1', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,y,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Pmn21'}, {'hall': ' P 2bc -2bc', 'hermann_mauguin': 'Pnm21', 'hermann_mauguin_u': 'Pnm2_1', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'Pnm2_1', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z'], 'universal_h_m': 'Pnm21'}, {'hall': ' P -2ab 2ab', 'hermann_mauguin': 'P21mn', 'hermann_mauguin_u': 'P2_1mn', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,-z', 'x,-y,z'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'P2_1mn', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,-z', 'x,-y,z'], 'universal_h_m': 'P21mn'}, {'hall': ' P -2 2ac', 'hermann_mauguin': 'P21nm', 'hermann_mauguin_u': 'P2_1nm', 'ncsym': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'P2_1nm', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P21nm'}, {'hall': ' P -2 -2bc', 'hermann_mauguin': 'Pn21m', 'hermann_mauguin_u': 'Pn2_1m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'Pn2_1m', 'symops': ['x,y,z', 'x,y,-z', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'Pn21m'}, {'hall': ' P -2ab -2', 'hermann_mauguin': 'Pm21n', 'hermann_mauguin_u': 'Pm2_1n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x,y,z', '-x+1/2,y+1/2,-z'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'Pm2_1n', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', '-x,y,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Pm21n'}, {'hall': ' P 2 -2ab', 'hermann_mauguin': 'Pba2', 'hermann_mauguin_u': 'Pba2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 32, 'point_group': 'mm2', 'schoenflies': 'C2v^8', 'short_h_m': 'Pba2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Pba2'}, {'hall': ' P -2bc 2', 'hermann_mauguin': 'P2cb', 'hermann_mauguin_u': 'P2cb', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', 'x,-y,-z', 'x,-y+1/2,z+1/2'], 'number': 32, 'point_group': 'mm2', 'schoenflies': 'C2v^8', 'short_h_m': 'P2cb', 'symops': ['x,y,z', 'x,y+1/2,-z+1/2', 'x,-y,-z', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'P2cb'}, {'hall': ' P -2ac -2ac', 'hermann_mauguin': 'Pc2a', 'hermann_mauguin_u': 'Pc2a', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x,y,-z'], 'number': 32, 'point_group': 'mm2', 'schoenflies': 'C2v^8', 'short_h_m': 'Pc2a', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x,y,-z'], 'universal_h_m': 'Pc2a'}, {'hall': ' P 2c -2n', 'hermann_mauguin': 'Pna21', 'hermann_mauguin_u': 'Pna2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'Pna2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Pna21'}, {'hall': ' P 2c -2ab', 'hermann_mauguin': 'Pbn21', 'hermann_mauguin_u': 'Pbn2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'Pbn2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Pbn21'}, {'hall': ' P -2bc 2a', 'hermann_mauguin': 'P21nb', 'hermann_mauguin_u': 'P2_1nb', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,-y,-z', 'x+1/2,-y+1/2,z+1/2'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'P2_1nb', 'symops': ['x,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,-y,-z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P21nb'}, {'hall': ' P -2n 2a', 'hermann_mauguin': 'P21cn', 'hermann_mauguin_u': 'P2_1cn', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y,-z', 'x,-y+1/2,z+1/2'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'P2_1cn', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y,-z', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'P21cn'}, {'hall': ' P -2n -2ac', 'hermann_mauguin': 'Pc21n', 'hermann_mauguin_u': 'Pc2_1n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', '-x,y+1/2,-z'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'Pc2_1n', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', '-x,y+1/2,-z'], 'universal_h_m': 'Pc21n'}, {'hall': ' P -2ac -2n', 'hermann_mauguin': 'Pn21a', 'hermann_mauguin_u': 'Pn2_1a', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'Pn2_1a', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z'], 'universal_h_m': 'Pn21a'}, {'hall': ' P 2 -2n', 'hermann_mauguin': 'Pnn2', 'hermann_mauguin_u': 'Pnn2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 34, 'point_group': 'mm2', 'schoenflies': 'C2v^10', 'short_h_m': 'Pnn2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Pnn2'}, {'hall': ' P -2n 2', 'hermann_mauguin': 'P2nn', 'hermann_mauguin_u': 'P2nn', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', 'x,-y,-z', 'x+1/2,-y+1/2,z+1/2'], 'number': 34, 'point_group': 'mm2', 'schoenflies': 'C2v^10', 'short_h_m': 'P2nn', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', 'x,-y,-z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P2nn'}, {'hall': ' P -2n -2n', 'hermann_mauguin': 'Pn2n', 'hermann_mauguin_u': 'Pn2n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y,-z'], 'number': 34, 'point_group': 'mm2', 'schoenflies': 'C2v^10', 'short_h_m': 'Pn2n', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y,-z'], 'universal_h_m': 'Pn2n'}, {'hall': ' C 2 -2', 'hermann_mauguin': 'Cmm2', 'hermann_mauguin_u': 'Cmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'Cmm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Cmm2'}, {'hall': ' A -2 2', 'hermann_mauguin': 'A2mm', 'hermann_mauguin_u': 'A2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'A2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'A2mm'}, {'hall': ' B -2 -2', 'hermann_mauguin': 'Bm2m', 'hermann_mauguin_u': 'Bm2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'Bm2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2'], 'universal_h_m': 'Bm2m'}, {'hall': ' C 2c -2', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Cmc21'}, {'hall': ' C 2c -2c', 'hermann_mauguin': 'Ccm21', 'hermann_mauguin_u': 'Ccm2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Ccm2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Ccm21'}, {'hall': ' A -2a 2a', 'hermann_mauguin': 'A21ma', 'hermann_mauguin_u': 'A2_1ma', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,-y,-z', 'x,-y,z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'A2_1ma', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,-y,-z', 'x,-y,z', 'x,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'A21ma'}, {'hall': ' A -2 2a', 'hermann_mauguin': 'A21am', 'hermann_mauguin_u': 'A2_1am', 'ncsym': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z', 'x+1/2,-y,z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'A2_1am', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'A21am'}, {'hall': ' B -2 -2b', 'hermann_mauguin': 'Bb21m', 'hermann_mauguin_u': 'Bb2_1m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Bb2_1m', 'symops': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Bb21m'}, {'hall': ' B -2b -2', 'hermann_mauguin': 'Bm21b', 'hermann_mauguin_u': 'Bm2_1b', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Bm2_1b', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z', 'x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Bm21b'}, {'hall': ' C 2 -2c', 'hermann_mauguin': 'Ccc2', 'hermann_mauguin_u': 'Ccc2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'number': 37, 'point_group': 'mm2', 'schoenflies': 'C2v^13', 'short_h_m': 'Ccc2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Ccc2'}, {'hall': ' A -2a 2', 'hermann_mauguin': 'A2aa', 'hermann_mauguin_u': 'A2aa', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'number': 37, 'point_group': 'mm2', 'schoenflies': 'C2v^13', 'short_h_m': 'A2aa', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'A2aa'}, {'hall': ' B -2b -2b', 'hermann_mauguin': 'Bb2b', 'hermann_mauguin_u': 'Bb2b', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'number': 37, 'point_group': 'mm2', 'schoenflies': 'C2v^13', 'short_h_m': 'Bb2b', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z', 'x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x+1/2,y,-z+1/2'], 'universal_h_m': 'Bb2b'}, {'hall': ' A 2 -2', 'hermann_mauguin': 'Amm2', 'hermann_mauguin_u': 'Amm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Amm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Amm2'}, {'hall': ' B 2 -2', 'hermann_mauguin': 'Bmm2', 'hermann_mauguin_u': 'Bmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Bmm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Bmm2'}, {'hall': ' B -2 2', 'hermann_mauguin': 'B2mm', 'hermann_mauguin_u': 'B2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'B2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2', 'x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'B2mm'}, {'hall': ' C -2 2', 'hermann_mauguin': 'C2mm', 'hermann_mauguin_u': 'C2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'C2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'C2mm'}, {'hall': ' C -2 -2', 'hermann_mauguin': 'Cm2m', 'hermann_mauguin_u': 'Cm2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Cm2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Cm2m'}, {'hall': ' A -2 -2', 'hermann_mauguin': 'Am2m', 'hermann_mauguin_u': 'Am2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Am2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'Am2m'}, {'hall': ' A 2 -2b', 'hermann_mauguin': 'Aem2', 'hermann_mauguin_u': 'Aem2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Aem2', 'symops': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,y+1,z+1/2', 'x,-y+1,z+1/2'], 'universal_h_m': 'Aem2'}, {'hall': ' B 2 -2a', 'hermann_mauguin': 'Bme2', 'hermann_mauguin_u': 'Bme2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Bme2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1,y,z+1/2', 'x+1,-y,z+1/2'], 'universal_h_m': 'Bme2'}, {'hall': ' B -2a 2', 'hermann_mauguin': 'B2em', 'hermann_mauguin_u': 'B2em', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'B2em', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z', 'x+1/2,y,z+1/2', 'x+1,y,-z+1/2', 'x+1/2,-y,-z+1/2', 'x+1,-y,z+1/2'], 'universal_h_m': 'B2em'}, {'hall': ' C -2a 2', 'hermann_mauguin': 'C2me', 'hermann_mauguin_u': 'C2me', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'C2me', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z', 'x+1/2,y+1/2,z', 'x+1,y+1/2,-z', 'x+1/2,-y+1/2,-z', 'x+1,-y+1/2,z'], 'universal_h_m': 'C2me'}, {'hall': ' C -2a -2a', 'hermann_mauguin': 'Cm2e', 'hermann_mauguin_u': 'Cm2e', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Cm2e', 'symops': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z', 'x+1/2,y+1/2,z', 'x+1,y+1/2,-z', '-x+1,y+1/2,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Cm2e'}, {'hall': ' A -2b -2b', 'hermann_mauguin': 'Ae2m', 'hermann_mauguin_u': 'Ae2m', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Ae2m', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z', 'x,y+1/2,z+1/2', 'x,y+1,-z+1/2', '-x,y+1,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'Ae2m'}, {'hall': ' A 2 -2a', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Ama2'}, {'hall': ' B 2 -2b', 'hermann_mauguin': 'Bbm2', 'hermann_mauguin_u': 'Bbm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Bbm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Bbm2'}, {'hall': ' B -2b 2', 'hermann_mauguin': 'B2mb', 'hermann_mauguin_u': 'B2mb', 'ncsym': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'B2mb', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z', 'x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y,-z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'B2mb'}, {'hall': ' C -2c 2', 'hermann_mauguin': 'C2cm', 'hermann_mauguin_u': 'C2cm', 'ncsym': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'C2cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'C2cm'}, {'hall': ' C -2c -2c', 'hermann_mauguin': 'Cc2m', 'hermann_mauguin_u': 'Cc2m', 'ncsym': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Cc2m', 'symops': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Cc2m'}, {'hall': ' A -2a -2a', 'hermann_mauguin': 'Am2a', 'hermann_mauguin_u': 'Am2a', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Am2a', 'symops': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z', 'x,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'Am2a'}, {'hall': ' A 2 -2ab', 'hermann_mauguin': 'Aea2', 'hermann_mauguin_u': 'Aea2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Aea2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x+1/2,y+1,z+1/2', 'x+1/2,-y+1,z+1/2'], 'universal_h_m': 'Aea2'}, {'hall': ' B 2 -2ab', 'hermann_mauguin': 'Bbe2', 'hermann_mauguin_u': 'Bbe2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Bbe2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1,y+1/2,z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'Bbe2'}, {'hall': ' B -2ab 2', 'hermann_mauguin': 'B2eb', 'hermann_mauguin_u': 'B2eb', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', 'x,-y,-z', 'x+1/2,-y+1/2,z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'B2eb', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', 'x,-y,-z', 'x+1/2,-y+1/2,z', 'x+1/2,y,z+1/2', 'x+1,y+1/2,-z+1/2', 'x+1/2,-y,-z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'B2eb'}, {'hall': ' C -2ac 2', 'hermann_mauguin': 'C2eb', 'hermann_mauguin_u': 'C2eb', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', 'x,-y,-z', 'x+1/2,-y,z+1/2'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'C2eb', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', 'x,-y,-z', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'C2eb'}, {'hall': ' C -2ac -2ac', 'hermann_mauguin': 'Cc2e', 'hermann_mauguin_u': 'Cc2e', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x,y,-z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Cc2e', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x,y,-z', 'x+1/2,y+1/2,z', 'x+1,y+1/2,-z+1/2', '-x+1,y+1/2,z+1/2', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Cc2e'}, {'hall': ' A -2ab -2ab', 'hermann_mauguin': 'Ae2a', 'hermann_mauguin_u': 'Ae2a', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x,y,-z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Ae2a', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x,y,-z', 'x,y+1/2,z+1/2', 'x+1/2,y+1,-z+1/2', '-x+1/2,y+1,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'Ae2a'}, {'hall': ' F 2 -2', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Fmm2'}, {'hall': ' F -2 2', 'hermann_mauguin': 'F2mm', 'hermann_mauguin_u': 'F2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'F2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2', 'x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'F2mm'}, {'hall': ' F -2 -2', 'hermann_mauguin': 'Fm2m', 'hermann_mauguin_u': 'Fm2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fm2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Fm2m'}, {'hall': ' F 2 -2d', 'hermann_mauguin': 'Fdd2', 'hermann_mauguin_u': 'Fdd2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/4,y+1/4,z+1/4', 'x+3/4,-y+3/4,z+1/4'], 'number': 43, 'point_group': 'mm2', 'schoenflies': 'C2v^19', 'short_h_m': 'Fdd2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/4,y+1/4,z+1/4', 'x+3/4,-y+3/4,z+1/4', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x+1/4,y+3/4,z+3/4', 'x+3/4,-y+5/4,z+3/4', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+3/4,y+1/4,z+3/4', 'x+5/4,-y+3/4,z+3/4', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+3/4,y+3/4,z+1/4', 'x+5/4,-y+5/4,z+1/4'], 'universal_h_m': 'Fdd2'}, {'hall': ' F -2d 2', 'hermann_mauguin': 'F2dd', 'hermann_mauguin_u': 'F2dd', 'ncsym': ['x,y,z', 'x+1/4,y+1/4,-z+1/4', 'x,-y,-z', 'x+1/4,-y+1/4,z+1/4'], 'number': 43, 'point_group': 'mm2', 'schoenflies': 'C2v^19', 'short_h_m': 'F2dd', 'symops': ['x,y,z', 'x+1/4,y+1/4,-z+1/4', 'x,-y,-z', 'x+1/4,-y+1/4,z+1/4', 'x,y+1/2,z+1/2', 'x+1/4,y+3/4,-z+3/4', 'x,-y+1/2,-z+1/2', 'x+1/4,-y+3/4,z+3/4', 'x+1/2,y,z+1/2', 'x+3/4,y+1/4,-z+3/4', 'x+1/2,-y,-z+1/2', 'x+3/4,-y+1/4,z+3/4', 'x+1/2,y+1/2,z', 'x+3/4,y+3/4,-z+1/4', 'x+1/2,-y+1/2,-z', 'x+3/4,-y+3/4,z+1/4'], 'universal_h_m': 'F2dd'}, {'hall': ' F -2d -2d', 'hermann_mauguin': 'Fd2d', 'hermann_mauguin_u': 'Fd2d', 'ncsym': ['x,y,z', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', '-x+1/2,y+1/2,-z'], 'number': 43, 'point_group': 'mm2', 'schoenflies': 'C2v^19', 'short_h_m': 'Fd2d', 'symops': ['x,y,z', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', '-x+1/2,y+1/2,-z', 'x,y+1/2,z+1/2', 'x+1/4,y+3/4,-z+3/4', '-x+1/4,y+3/4,z+3/4', '-x+1/2,y+1,-z+1/2', 'x+1/2,y,z+1/2', 'x+3/4,y+1/4,-z+3/4', '-x+3/4,y+1/4,z+3/4', '-x+1,y+1/2,-z+1/2', 'x+1/2,y+1/2,z', 'x+3/4,y+3/4,-z+1/4', '-x+3/4,y+3/4,z+1/4', '-x+1,y+1,-z'], 'universal_h_m': 'Fd2d'}, {'hall': ' I 2 -2', 'hermann_mauguin': 'Imm2', 'hermann_mauguin_u': 'Imm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Imm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Imm2'}, {'hall': ' I -2 2', 'hermann_mauguin': 'I2mm', 'hermann_mauguin_u': 'I2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'I2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'I2mm'}, {'hall': ' I -2 -2', 'hermann_mauguin': 'Im2m', 'hermann_mauguin_u': 'Im2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Im2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Im2m'}, {'hall': ' I 2 -2c', 'hermann_mauguin': 'Iba2', 'hermann_mauguin_u': 'Iba2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'number': 45, 'point_group': 'mm2', 'schoenflies': 'C2v^21', 'short_h_m': 'Iba2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1', 'x+1/2,-y+1/2,z+1'], 'universal_h_m': 'Iba2'}, {'hall': ' I -2a 2', 'hermann_mauguin': 'I2cb', 'hermann_mauguin_u': 'I2cb', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'number': 45, 'point_group': 'mm2', 'schoenflies': 'C2v^21', 'short_h_m': 'I2cb', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z', 'x+1/2,y+1/2,z+1/2', 'x+1,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'I2cb'}, {'hall': ' I -2b -2b', 'hermann_mauguin': 'Ic2a', 'hermann_mauguin_u': 'Ic2a', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'number': 45, 'point_group': 'mm2', 'schoenflies': 'C2v^21', 'short_h_m': 'Ic2a', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1,-z+1/2', '-x+1/2,y+1,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Ic2a'}, {'hall': ' I 2 -2a', 'hermann_mauguin': 'Ima2', 'hermann_mauguin_u': 'Ima2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ima2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1,y+1/2,z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'Ima2'}, {'hall': ' I 2 -2b', 'hermann_mauguin': 'Ibm2', 'hermann_mauguin_u': 'Ibm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ibm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1,z+1/2', 'x+1/2,-y+1,z+1/2'], 'universal_h_m': 'Ibm2'}, {'hall': ' I -2b 2', 'hermann_mauguin': 'I2mb', 'hermann_mauguin_u': 'I2mb', 'ncsym': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'I2mb', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1,z+1/2'], 'universal_h_m': 'I2mb'}, {'hall': ' I -2c 2', 'hermann_mauguin': 'I2cm', 'hermann_mauguin_u': 'I2cm', 'ncsym': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'I2cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1', 'x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1'], 'universal_h_m': 'I2cm'}, {'hall': ' I -2c -2c', 'hermann_mauguin': 'Ic2m', 'hermann_mauguin_u': 'Ic2m', 'ncsym': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ic2m', 'symops': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1', '-x+1/2,y+1/2,z+1', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Ic2m'}, {'hall': ' I -2a -2a', 'hermann_mauguin': 'Im2a', 'hermann_mauguin_u': 'Im2a', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Im2a', 'symops': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1,y+1/2,-z+1/2', '-x+1,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Im2a'}, {'hall': '-P 2 2', 'hermann_mauguin': 'Pmmm', 'hermann_mauguin_u': 'Pmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 47, 'point_group': 'mmm', 'schoenflies': 'D2h^1', 'short_h_m': 'Pmmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'universal_h_m': 'Pmmm'}, {'hall': ' P 2 2 -1n', 'hermann_mauguin': 'Pnnn', 'hermann_mauguin_u': 'Pnnn', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 48, 'point_group': 'mmm', 'schoenflies': 'D2h^2', 'short_h_m': 'Pnnn', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Pnnn:1'}, {'hall': '-P 2ab 2bc', 'hermann_mauguin': 'Pnnn', 'hermann_mauguin_u': 'Pnnn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y,z-1/2'], 'number': 48, 'point_group': 'mmm', 'schoenflies': 'D2h^2', 'short_h_m': 'Pnnn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pnnn:2'}, {'hall': '-P 2 2c', 'hermann_mauguin': 'Pccm', 'hermann_mauguin_u': 'Pccm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2'], 'number': 49, 'point_group': 'mmm', 'schoenflies': 'D2h^3', 'short_h_m': 'Pccm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2'], 'universal_h_m': 'Pccm'}, {'hall': '-P 2a 2', 'hermann_mauguin': 'Pmaa', 'hermann_mauguin_u': 'Pmaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'number': 49, 'point_group': 'mmm', 'schoenflies': 'D2h^3', 'short_h_m': 'Pmaa', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'universal_h_m': 'Pmaa'}, {'hall': '-P 2b 2b', 'hermann_mauguin': 'Pbmb', 'hermann_mauguin_u': 'Pbmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z'], 'number': 49, 'point_group': 'mmm', 'schoenflies': 'D2h^3', 'short_h_m': 'Pbmb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z'], 'universal_h_m': 'Pbmb'}, {'hall': ' P 2 2 -1ab', 'hermann_mauguin': 'Pban', 'hermann_mauguin_u': 'Pban', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pban', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Pban:1'}, {'hall': '-P 2ab 2b', 'hermann_mauguin': 'Pban', 'hermann_mauguin_u': 'Pban', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pban', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z'], 'universal_h_m': 'Pban:2'}, {'hall': ' P 2 2 -1bc', 'hermann_mauguin': 'Pncb', 'hermann_mauguin_u': 'Pncb', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pncb', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Pncb:1'}, {'hall': '-P 2b 2bc', 'hermann_mauguin': 'Pncb', 'hermann_mauguin_u': 'Pncb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z-1/2', 'x,-y,z-1/2'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pncb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z-1/2', 'x,-y,z-1/2'], 'universal_h_m': 'Pncb:2'}, {'hall': ' P 2 2 -1ac', 'hermann_mauguin': 'Pcna', 'hermann_mauguin_u': 'Pcna', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pcna', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Pcna:1'}, {'hall': '-P 2a 2c', 'hermann_mauguin': 'Pcna', 'hermann_mauguin_u': 'Pcna', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z-1/2', 'x-1/2,-y,z-1/2'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pcna', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z-1/2', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pcna:2'}, {'hall': '-P 2a 2a', 'hermann_mauguin': 'Pmma', 'hermann_mauguin_u': 'Pmma', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmma', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z'], 'universal_h_m': 'Pmma'}, {'hall': '-P 2b 2', 'hermann_mauguin': 'Pmmb', 'hermann_mauguin_u': 'Pmmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmmb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z'], 'universal_h_m': 'Pmmb'}, {'hall': '-P 2 2b', 'hermann_mauguin': 'Pbmm', 'hermann_mauguin_u': 'Pbmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pbmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z'], 'universal_h_m': 'Pbmm'}, {'hall': '-P 2c 2c', 'hermann_mauguin': 'Pcmm', 'hermann_mauguin_u': 'Pcmm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pcmm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z'], 'universal_h_m': 'Pcmm'}, {'hall': '-P 2c 2', 'hermann_mauguin': 'Pmcm', 'hermann_mauguin_u': 'Pmcm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmcm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2'], 'universal_h_m': 'Pmcm'}, {'hall': '-P 2 2a', 'hermann_mauguin': 'Pmam', 'hermann_mauguin_u': 'Pmam', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmam', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z'], 'universal_h_m': 'Pmam'}, {'hall': '-P 2a 2bc', 'hermann_mauguin': 'Pnna', 'hermann_mauguin_u': 'Pnna', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pnna', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pnna'}, {'hall': '-P 2b 2n', 'hermann_mauguin': 'Pnnb', 'hermann_mauguin_u': 'Pnnb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y,z-1/2'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pnnb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pnnb'}, {'hall': '-P 2n 2b', 'hermann_mauguin': 'Pbnn', 'hermann_mauguin_u': 'Pbnn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y-1/2,z', 'x-1/2,-y,z-1/2'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pbnn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y-1/2,z', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pbnn'}, {'hall': '-P 2ab 2c', 'hermann_mauguin': 'Pcnn', 'hermann_mauguin_u': 'Pcnn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pcnn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pcnn'}, {'hall': '-P 2ab 2n', 'hermann_mauguin': 'Pncn', 'hermann_mauguin_u': 'Pncn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z-1/2', 'x,-y,z-1/2'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pncn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z-1/2', 'x,-y,z-1/2'], 'universal_h_m': 'Pncn'}, {'hall': '-P 2n 2bc', 'hermann_mauguin': 'Pnan', 'hermann_mauguin_u': 'Pnan', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y-1/2,z-1/2', 'x-1/2,-y,z'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pnan', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y-1/2,z-1/2', 'x-1/2,-y,z'], 'universal_h_m': 'Pnan'}, {'hall': '-P 2ac 2', 'hermann_mauguin': 'Pmna', 'hermann_mauguin_u': 'Pmna', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z', 'x-1/2,-y,z-1/2'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pmna', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pmna'}, {'hall': '-P 2bc 2bc', 'hermann_mauguin': 'Pnmb', 'hermann_mauguin_u': 'Pnmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y-1/2,z-1/2', 'x,-y,z'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pnmb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y-1/2,z-1/2', 'x,-y,z'], 'universal_h_m': 'Pnmb'}, {'hall': '-P 2ab 2ab', 'hermann_mauguin': 'Pbmn', 'hermann_mauguin_u': 'Pbmn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z', 'x,-y,z'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pbmn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z', 'x,-y,z'], 'universal_h_m': 'Pbmn'}, {'hall': '-P 2 2ac', 'hermann_mauguin': 'Pcnm', 'hermann_mauguin_u': 'Pcnm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z-1/2', 'x-1/2,-y,z-1/2'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pcnm', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z-1/2', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pcnm'}, {'hall': '-P 2 2bc', 'hermann_mauguin': 'Pncm', 'hermann_mauguin_u': 'Pncm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z-1/2', 'x,-y-1/2,z-1/2'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pncm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z-1/2', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pncm'}, {'hall': '-P 2ab 2', 'hermann_mauguin': 'Pman', 'hermann_mauguin_u': 'Pman', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z', 'x-1/2,-y-1/2,z'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pman', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pman'}, {'hall': '-P 2a 2ac', 'hermann_mauguin': 'Pcca', 'hermann_mauguin_u': 'Pcca', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z-1/2', 'x,-y,z-1/2'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pcca', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z-1/2', 'x,-y,z-1/2'], 'universal_h_m': 'Pcca'}, {'hall': '-P 2b 2c', 'hermann_mauguin': 'Pccb', 'hermann_mauguin_u': 'Pccb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pccb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pccb'}, {'hall': '-P 2a 2b', 'hermann_mauguin': 'Pbaa', 'hermann_mauguin_u': 'Pbaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pbaa', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pbaa'}, {'hall': '-P 2ac 2c', 'hermann_mauguin': 'Pcaa', 'hermann_mauguin_u': 'Pcaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z-1/2', 'x-1/2,-y,z'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pcaa', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z-1/2', 'x-1/2,-y,z'], 'universal_h_m': 'Pcaa'}, {'hall': '-P 2bc 2b', 'hermann_mauguin': 'Pbcb', 'hermann_mauguin_u': 'Pbcb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y-1/2,z', 'x,-y,z-1/2'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pbcb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y-1/2,z', 'x,-y,z-1/2'], 'universal_h_m': 'Pbcb'}, {'hall': '-P 2b 2ab', 'hermann_mauguin': 'Pbab', 'hermann_mauguin_u': 'Pbab', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y,z'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pbab', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y,z'], 'universal_h_m': 'Pbab'}, {'hall': '-P 2 2ab', 'hermann_mauguin': 'Pbam', 'hermann_mauguin_u': 'Pbam', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 55, 'point_group': 'mmm', 'schoenflies': 'D2h^9', 'short_h_m': 'Pbam', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pbam'}, {'hall': '-P 2bc 2', 'hermann_mauguin': 'Pmcb', 'hermann_mauguin_u': 'Pmcb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y,z', 'x,-y-1/2,z-1/2'], 'number': 55, 'point_group': 'mmm', 'schoenflies': 'D2h^9', 'short_h_m': 'Pmcb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y,z', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pmcb'}, {'hall': '-P 2ac 2ac', 'hermann_mauguin': 'Pcma', 'hermann_mauguin_u': 'Pcma', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y,z'], 'number': 55, 'point_group': 'mmm', 'schoenflies': 'D2h^9', 'short_h_m': 'Pcma', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y,z'], 'universal_h_m': 'Pcma'}, {'hall': '-P 2ab 2ac', 'hermann_mauguin': 'Pccn', 'hermann_mauguin_u': 'Pccn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y,z-1/2', 'x,-y-1/2,z-1/2'], 'number': 56, 'point_group': 'mmm', 'schoenflies': 'D2h^10', 'short_h_m': 'Pccn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y,z-1/2', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pccn'}, {'hall': '-P 2ac 2bc', 'hermann_mauguin': 'Pnaa', 'hermann_mauguin_u': 'Pnaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y-1/2,z-1/2', 'x-1/2,-y-1/2,z'], 'number': 56, 'point_group': 'mmm', 'schoenflies': 'D2h^10', 'short_h_m': 'Pnaa', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y-1/2,z-1/2', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pnaa'}, {'hall': '-P 2bc 2ab', 'hermann_mauguin': 'Pbnb', 'hermann_mauguin_u': 'Pbnb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y-1/2,z', 'x-1/2,-y,z-1/2'], 'number': 56, 'point_group': 'mmm', 'schoenflies': 'D2h^10', 'short_h_m': 'Pbnb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y-1/2,z', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pbnb'}, {'hall': '-P 2c 2b', 'hermann_mauguin': 'Pbcm', 'hermann_mauguin_u': 'Pbcm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y+1/2,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y-1/2,z', 'x,-y-1/2,z-1/2'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pbcm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y+1/2,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y-1/2,z', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pbcm'}, {'hall': '-P 2c 2ac', 'hermann_mauguin': 'Pcam', 'hermann_mauguin_u': 'Pcam', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y,z-1/2', 'x-1/2,-y,z'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pcam', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y,z-1/2', 'x-1/2,-y,z'], 'universal_h_m': 'Pcam'}, {'hall': '-P 2ac 2a', 'hermann_mauguin': 'Pmca', 'hermann_mauguin_u': 'Pmca', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z', 'x,-y,z-1/2'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pmca', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z', 'x,-y,z-1/2'], 'universal_h_m': 'Pmca'}, {'hall': '-P 2b 2a', 'hermann_mauguin': 'Pmab', 'hermann_mauguin_u': 'Pmab', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y,z', 'x-1/2,-y-1/2,z'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pmab', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y,z', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pmab'}, {'hall': '-P 2a 2ab', 'hermann_mauguin': 'Pbma', 'hermann_mauguin_u': 'Pbma', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y-1/2,z', 'x,-y-1/2,z'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pbma', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y-1/2,z', 'x,-y-1/2,z'], 'universal_h_m': 'Pbma'}, {'hall': '-P 2bc 2c', 'hermann_mauguin': 'Pcmb', 'hermann_mauguin_u': 'Pcmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y,z-1/2', 'x,-y-1/2,z'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pcmb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y,z-1/2', 'x,-y-1/2,z'], 'universal_h_m': 'Pcmb'}, {'hall': '-P 2 2n', 'hermann_mauguin': 'Pnnm', 'hermann_mauguin_u': 'Pnnm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'number': 58, 'point_group': 'mmm', 'schoenflies': 'D2h^12', 'short_h_m': 'Pnnm', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pnnm'}, {'hall': '-P 2n 2', 'hermann_mauguin': 'Pmnn', 'hermann_mauguin_u': 'Pmnn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y,z', 'x-1/2,-y-1/2,z-1/2'], 'number': 58, 'point_group': 'mmm', 'schoenflies': 'D2h^12', 'short_h_m': 'Pmnn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y,z', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pmnn'}, {'hall': '-P 2n 2n', 'hermann_mauguin': 'Pnmn', 'hermann_mauguin_u': 'Pnmn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x,-y,z'], 'number': 58, 'point_group': 'mmm', 'schoenflies': 'D2h^12', 'short_h_m': 'Pnmn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x,-y,z'], 'universal_h_m': 'Pnmn'}, {'hall': ' P 2 2ab -1ab', 'hermann_mauguin': 'Pmmn', 'hermann_mauguin_u': 'Pmmn', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y,z', 'x,-y,z'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pmmn', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y,z', 'x,-y,z'], 'universal_h_m': 'Pmmn:1'}, {'hall': '-P 2ab 2a', 'hermann_mauguin': 'Pmmn', 'hermann_mauguin_u': 'Pmmn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y,z', 'x,-y-1/2,z'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pmmn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y,z', 'x,-y-1/2,z'], 'universal_h_m': 'Pmmn:2'}, {'hall': ' P 2bc 2 -1bc', 'hermann_mauguin': 'Pnmm', 'hermann_mauguin_u': 'Pnmm', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pnmm', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y+1/2,z+1/2', 'x,-y,z'], 'universal_h_m': 'Pnmm:1'}, {'hall': '-P 2c 2bc', 'hermann_mauguin': 'Pnmm', 'hermann_mauguin_u': 'Pnmm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y-1/2,z-1/2', 'x,-y-1/2,z'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pnmm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y-1/2,z-1/2', 'x,-y-1/2,z'], 'universal_h_m': 'Pnmm:2'}, {'hall': ' P 2ac 2ac -1ac', 'hermann_mauguin': 'Pmnm', 'hermann_mauguin_u': 'Pmnm', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pmnm', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', '-x,y,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Pmnm:1'}, {'hall': '-P 2c 2a', 'hermann_mauguin': 'Pmnm', 'hermann_mauguin_u': 'Pmnm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y,z', 'x-1/2,-y,z-1/2'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pmnm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y,z', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pmnm:2'}, {'hall': '-P 2n 2ab', 'hermann_mauguin': 'Pbcn', 'hermann_mauguin_u': 'Pbcn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y,z-1/2'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pbcn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y,z-1/2'], 'universal_h_m': 'Pbcn'}, {'hall': '-P 2n 2c', 'hermann_mauguin': 'Pcan', 'hermann_mauguin_u': 'Pcan', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y,z-1/2', 'x-1/2,-y-1/2,z'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pcan', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y,z-1/2', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pcan'}, {'hall': '-P 2a 2n', 'hermann_mauguin': 'Pnca', 'hermann_mauguin_u': 'Pnca', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y-1/2,z-1/2', 'x,-y-1/2,z-1/2'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pnca', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y-1/2,z-1/2', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pnca'}, {'hall': '-P 2bc 2n', 'hermann_mauguin': 'Pnab', 'hermann_mauguin_u': 'Pnab', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y,z'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pnab', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y,z'], 'universal_h_m': 'Pnab'}, {'hall': '-P 2ac 2b', 'hermann_mauguin': 'Pbna', 'hermann_mauguin_u': 'Pbna', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y-1/2,z', 'x-1/2,-y-1/2,z-1/2'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pbna', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y-1/2,z', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pbna'}, {'hall': '-P 2b 2ac', 'hermann_mauguin': 'Pcnb', 'hermann_mauguin_u': 'Pcnb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pcnb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pcnb'}, {'hall': '-P 2ac 2ab', 'hermann_mauguin': 'Pbca', 'hermann_mauguin_u': 'Pbca', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y-1/2,z-1/2'], 'number': 61, 'point_group': 'mmm', 'schoenflies': 'D2h^15', 'short_h_m': 'Pbca', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pbca'}, {'hall': '-P 2bc 2ac', 'hermann_mauguin': 'Pcab', 'hermann_mauguin_u': 'Pcab', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y,z-1/2', 'x-1/2,-y-1/2,z'], 'number': 61, 'point_group': 'mmm', 'schoenflies': 'D2h^15', 'short_h_m': 'Pcab', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y,z-1/2', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pcab'}, {'hall': '-P 2ac 2n', 'hermann_mauguin': 'Pnma', 'hermann_mauguin_u': 'Pnma', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x,-y-1/2,z'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pnma', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x,-y-1/2,z'], 'universal_h_m': 'Pnma'}, {'hall': '-P 2bc 2a', 'hermann_mauguin': 'Pmnb', 'hermann_mauguin_u': 'Pmnb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y,z', 'x-1/2,-y-1/2,z-1/2'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pmnb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y,z', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pmnb'}, {'hall': '-P 2c 2ab', 'hermann_mauguin': 'Pbnm', 'hermann_mauguin_u': 'Pbnm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z-1/2'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pbnm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pbnm'}, {'hall': '-P 2n 2ac', 'hermann_mauguin': 'Pcmn', 'hermann_mauguin_u': 'Pcmn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y-1/2,z'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pcmn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y-1/2,z'], 'universal_h_m': 'Pcmn'}, {'hall': '-P 2n 2a', 'hermann_mauguin': 'Pmcn', 'hermann_mauguin_u': 'Pmcn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y,z', 'x,-y-1/2,z-1/2'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pmcn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y,z', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pmcn'}, {'hall': '-P 2c 2n', 'hermann_mauguin': 'Pnam', 'hermann_mauguin_u': 'Pnam', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y-1/2,z'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pnam', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pnam'}, {'hall': '-C 2c 2', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z-1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z-1/2'], 'universal_h_m': 'Cmcm'}, {'hall': '-C 2c 2c', 'hermann_mauguin': 'Ccmm', 'hermann_mauguin_u': 'Ccmm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Ccmm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z-1/2', '-x+1/2,y+1/2,z-1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Ccmm'}, {'hall': '-A 2a 2a', 'hermann_mauguin': 'Amma', 'hermann_mauguin_u': 'Amma', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Amma', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y+1/2,-z+1/2', '-x-1/2,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Amma'}, {'hall': '-A 2 2a', 'hermann_mauguin': 'Amam', 'hermann_mauguin_u': 'Amam', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Amam', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x-1/2,y+1/2,z+1/2', 'x-1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Amam'}, {'hall': '-B 2 2b', 'hermann_mauguin': 'Bbmm', 'hermann_mauguin_u': 'Bbmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Bbmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y-1/2,z+1/2', 'x+1/2,-y-1/2,z+1/2'], 'universal_h_m': 'Bbmm'}, {'hall': '-B 2b 2', 'hermann_mauguin': 'Bmmb', 'hermann_mauguin_u': 'Bmmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Bmmb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y-1/2,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y-1/2,z+1/2'], 'universal_h_m': 'Bmmb'}, {'hall': '-C 2ac 2', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z', 'x-1/2,-y,z-1/2'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z', 'x-1/2,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z-1/2', '-x+1/2,y+1/2,z', 'x,-y+1/2,z-1/2'], 'universal_h_m': 'Cmce'}, {'hall': '-C 2ac 2ac', 'hermann_mauguin': 'Ccme', 'hermann_mauguin_u': 'Ccme', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Ccme', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z-1/2', '-x,y+1/2,z-1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Ccme'}, {'hall': '-A 2ab 2ab', 'hermann_mauguin': 'Aema', 'hermann_mauguin_u': 'Aema', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z', 'x,-y,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Aema', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y,-z+1/2', '-x-1/2,y,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Aema'}, {'hall': '-A 2 2ab', 'hermann_mauguin': 'Aeam', 'hermann_mauguin_u': 'Aeam', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Aeam', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x+1/2,y+1,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x-1/2,y,z+1/2', 'x-1/2,-y,z+1/2'], 'universal_h_m': 'Aeam'}, {'hall': '-B 2 2ab', 'hermann_mauguin': 'Bbem', 'hermann_mauguin_u': 'Bbem', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Bbem', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x,y-1/2,z+1/2', 'x,-y-1/2,z+1/2'], 'universal_h_m': 'Bbem'}, {'hall': '-B 2ab 2', 'hermann_mauguin': 'Bmeb', 'hermann_mauguin_u': 'Bmeb', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z', 'x-1/2,-y-1/2,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Bmeb', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z', 'x-1/2,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,y-1/2,-z+1/2', '-x+1/2,y,z+1/2', 'x,-y-1/2,z+1/2'], 'universal_h_m': 'Bmeb'}, {'hall': '-C 2 2', 'hermann_mauguin': 'Cmmm', 'hermann_mauguin_u': 'Cmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Cmmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Cmmm'}, {'hall': '-A 2 2', 'hermann_mauguin': 'Ammm', 'hermann_mauguin_u': 'Ammm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Ammm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Ammm'}, {'hall': '-B 2 2', 'hermann_mauguin': 'Bmmm', 'hermann_mauguin_u': 'Bmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Bmmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Bmmm'}, {'hall': '-C 2 2c', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z-1/2', 'x+1/2,-y+1/2,z-1/2'], 'universal_h_m': 'Cccm'}, {'hall': '-A 2a 2', 'hermann_mauguin': 'Amaa', 'hermann_mauguin_u': 'Amaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Amaa', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x-1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Amaa'}, {'hall': '-B 2b 2b', 'hermann_mauguin': 'Bbmb', 'hermann_mauguin_u': 'Bbmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Bbmb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y-1/2,-z+1/2', '-x+1/2,y-1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Bbmb'}, {'hall': '-C 2a 2', 'hermann_mauguin': 'Cmma', 'hermann_mauguin_u': 'Cmma', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Cmma', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z', 'x,-y+1/2,z'], 'universal_h_m': 'Cmma'}, {'hall': '-C 2a 2a', 'hermann_mauguin': 'Cmmb', 'hermann_mauguin_u': 'Cmmb', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Cmmb', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z', 'x+1,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Cmmb'}, {'hall': '-A 2b 2b', 'hermann_mauguin': 'Abmm', 'hermann_mauguin_u': 'Abmm', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Abmm', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1,z+1/2', 'x,-y+1,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x,y,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Abmm'}, {'hall': '-A 2 2b', 'hermann_mauguin': 'Acmm', 'hermann_mauguin_u': 'Acmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Acmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1,-z+1/2', '-x,y+1,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Acmm'}, {'hall': '-B 2 2a', 'hermann_mauguin': 'Bmcm', 'hermann_mauguin_u': 'Bmcm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Bmcm', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1,-y,-z+1/2', '-x+1,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x,y,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Bmcm'}, {'hall': '-B 2a 2', 'hermann_mauguin': 'Bmam', 'hermann_mauguin_u': 'Bmam', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Bmam', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z', 'x+1/2,y,z+1/2', '-x+1,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Bmam'}, {'hall': ' C 2 2 -1ac', 'hermann_mauguin': 'Ccce', 'hermann_mauguin_u': 'Ccce', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Ccce', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1,-y+1/2,-z+1/2', 'x+1,y+1/2,-z+1/2', '-x+1,y+1/2,z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'Ccce:1'}, {'hall': '-C 2a 2ac', 'hermann_mauguin': 'Ccca', 'hermann_mauguin_u': 'Ccca', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z-1/2', 'x,-y,z-1/2'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Ccca', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z-1/2', 'x,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z', 'x+1,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z', '-x,y+1/2,z-1/2', 'x+1/2,-y+1/2,z-1/2'], 'universal_h_m': 'Ccca:2'}, {'hall': '-C 2a 2c', 'hermann_mauguin': 'Cccb', 'hermann_mauguin_u': 'Cccb', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z-1/2', 'x-1/2,-y,z-1/2'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Cccb', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z-1/2', 'x-1/2,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z-1/2', 'x,-y+1/2,z-1/2'], 'universal_h_m': 'Cccb:2'}, {'hall': ' A 2 2 -1ab', 'hermann_mauguin': 'Aeaa', 'hermann_mauguin_u': 'Aeaa', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Aeaa', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x+1/2,-y+1,-z+1/2', 'x+1/2,y+1,-z+1/2', '-x+1/2,y+1,z+1/2', 'x+1/2,-y+1,z+1/2'], 'universal_h_m': 'Aeaa:1'}, {'hall': '-A 2a 2b', 'hermann_mauguin': 'Abaa', 'hermann_mauguin_u': 'Abaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Abaa', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1,-z+1/2', '-x+1/2,y+1,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y+1/2,-z+1/2', '-x,y,z+1/2', 'x-1/2,-y,z+1/2'], 'universal_h_m': 'Abaa:2'}, {'hall': '-A 2ab 2b', 'hermann_mauguin': 'Acaa', 'hermann_mauguin_u': 'Acaa', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Acaa', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x,-y+1,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y,-z+1/2', '-x,y,z+1/2', 'x-1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Acaa:2'}, {'hall': ' B 2 2 -1ab', 'hermann_mauguin': 'Bbeb', 'hermann_mauguin_u': 'Bbeb', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Bbeb', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1,-y+1/2,-z+1/2', 'x+1,y+1/2,-z+1/2', '-x+1,y+1/2,z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'Bbeb:1'}, {'hall': '-B 2ab 2b', 'hermann_mauguin': 'Bbcb', 'hermann_mauguin_u': 'Bbcb', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Bbcb', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z', 'x+1/2,y,z+1/2', '-x+1,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,y-1/2,-z+1/2', '-x+1/2,y-1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Bbcb:2'}, {'hall': '-B 2b 2ab', 'hermann_mauguin': 'Bbab', 'hermann_mauguin_u': 'Bbab', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Bbab', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y-1/2,-z+1/2', '-x,y-1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Bbab:2'}, {'hall': '-F 2 2', 'hermann_mauguin': 'Fmmm', 'hermann_mauguin_u': 'Fmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 69, 'point_group': 'mmm', 'schoenflies': 'D2h^23', 'short_h_m': 'Fmmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Fmmm'}, {'hall': ' F 2 2 -1d', 'hermann_mauguin': 'Fddd', 'hermann_mauguin_u': 'Fddd', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/4,-y+1/4,-z+1/4', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', 'x+1/4,-y+1/4,z+1/4'], 'number': 70, 'point_group': 'mmm', 'schoenflies': 'D2h^24', 'short_h_m': 'Fddd', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/4,-y+1/4,-z+1/4', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', 'x+1/4,-y+1/4,z+1/4', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x+1/4,-y+3/4,-z+3/4', 'x+1/4,y+3/4,-z+3/4', '-x+1/4,y+3/4,z+3/4', 'x+1/4,-y+3/4,z+3/4', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+3/4,-y+1/4,-z+3/4', 'x+3/4,y+1/4,-z+3/4', '-x+3/4,y+1/4,z+3/4', 'x+3/4,-y+1/4,z+3/4', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+3/4,-y+3/4,-z+1/4', 'x+3/4,y+3/4,-z+1/4', '-x+3/4,y+3/4,z+1/4', 'x+3/4,-y+3/4,z+1/4'], 'universal_h_m': 'Fddd:1'}, {'hall': '-F 2uv 2vw', 'hermann_mauguin': 'Fddd', 'hermann_mauguin_u': 'Fddd', 'ncsym': ['x,y,z', '-x+1/4,-y+1/4,z', 'x,-y+1/4,-z+1/4', '-x+1/4,y,-z+1/4', '-x,-y,-z', 'x-1/4,y-1/4,-z', '-x,y-1/4,z-1/4', 'x-1/4,-y,z-1/4'], 'number': 70, 'point_group': 'mmm', 'schoenflies': 'D2h^24', 'short_h_m': 'Fddd', 'symops': ['x,y,z', '-x+1/4,-y+1/4,z', 'x,-y+1/4,-z+1/4', '-x+1/4,y,-z+1/4', '-x,-y,-z', 'x-1/4,y-1/4,-z', '-x,y-1/4,z-1/4', 'x-1/4,-y,z-1/4', 'x,y+1/2,z+1/2', '-x+1/4,-y+3/4,z+1/2', 'x,-y+3/4,-z+3/4', '-x+1/4,y+1/2,-z+3/4', '-x,-y+1/2,-z+1/2', 'x-1/4,y+1/4,-z+1/2', '-x,y+1/4,z+1/4', 'x-1/4,-y+1/2,z+1/4', 'x+1/2,y,z+1/2', '-x+3/4,-y+1/4,z+1/2', 'x+1/2,-y+1/4,-z+3/4', '-x+3/4,y,-z+3/4', '-x+1/2,-y,-z+1/2', 'x+1/4,y-1/4,-z+1/2', '-x+1/2,y-1/4,z+1/4', 'x+1/4,-y,z+1/4', 'x+1/2,y+1/2,z', '-x+3/4,-y+3/4,z', 'x+1/2,-y+3/4,-z+1/4', '-x+3/4,y+1/2,-z+1/4', '-x+1/2,-y+1/2,-z', 'x+1/4,y+1/4,-z', '-x+1/2,y+1/4,z-1/4', 'x+1/4,-y+1/2,z-1/4'], 'universal_h_m': 'Fddd:2'}, {'hall': '-I 2 2', 'hermann_mauguin': 'Immm', 'hermann_mauguin_u': 'Immm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 71, 'point_group': 'mmm', 'schoenflies': 'D2h^25', 'short_h_m': 'Immm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Immm'}, {'hall': '-I 2 2c', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1/2,-z+1', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Ibam'}, {'hall': '-I 2a 2', 'hermann_mauguin': 'Imcb', 'hermann_mauguin_u': 'Imcb', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Imcb', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Imcb'}, {'hall': '-I 2b 2b', 'hermann_mauguin': 'Icma', 'hermann_mauguin_u': 'Icma', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Icma', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Icma'}, {'hall': '-I 2b 2c', 'hermann_mauguin': 'Ibca', 'hermann_mauguin_u': 'Ibca', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2'], 'number': 73, 'point_group': 'mmm', 'schoenflies': 'D2h^27', 'short_h_m': 'Ibca', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1,-z+1', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Ibca'}, {'hall': '-I 2a 2b', 'hermann_mauguin': 'Icab', 'hermann_mauguin_u': 'Icab', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 73, 'point_group': 'mmm', 'schoenflies': 'D2h^27', 'short_h_m': 'Icab', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1,-y+1/2,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x+1,y+1,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Icab'}, {'hall': '-I 2b 2', 'hermann_mauguin': 'Imma', 'hermann_mauguin_u': 'Imma', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Imma', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Imma'}, {'hall': '-I 2a 2a', 'hermann_mauguin': 'Immb', 'hermann_mauguin_u': 'Immb', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Immb', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1,-y+1/2,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Immb'}, {'hall': '-I 2c 2c', 'hermann_mauguin': 'Ibmm', 'hermann_mauguin_u': 'Ibmm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Ibmm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Ibmm'}, {'hall': '-I 2 2b', 'hermann_mauguin': 'Icmm', 'hermann_mauguin_u': 'Icmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Icmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x+1/2,y+1,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Icmm'}, {'hall': '-I 2 2a', 'hermann_mauguin': 'Imcm', 'hermann_mauguin_u': 'Imcm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Imcm', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Imcm'}, {'hall': '-I 2c 2', 'hermann_mauguin': 'Imam', 'hermann_mauguin_u': 'Imam', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Imam', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Imam'}, {'hall': ' P 4', 'hermann_mauguin': 'P4', 'hermann_mauguin_u': 'P4', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z'], 'number': 75, 'point_group': '4', 'schoenflies': 'C4^1', 'short_h_m': 'P4', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z'], 'universal_h_m': 'P4'}, {'hall': ' P 4w', 'hermann_mauguin': 'P41', 'hermann_mauguin_u': 'P4_1', 'ncsym': ['x,y,z', '-y,x,z+1/4', '-x,-y,z+1/2', 'y,-x,z+3/4'], 'number': 76, 'point_group': '4', 'schoenflies': 'C4^2', 'short_h_m': 'P4_1', 'symops': ['x,y,z', '-y,x,z+1/4', '-x,-y,z+1/2', 'y,-x,z+3/4'], 'universal_h_m': 'P41'}, {'hall': ' P 4c', 'hermann_mauguin': 'P42', 'hermann_mauguin_u': 'P4_2', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2'], 'number': 77, 'point_group': '4', 'schoenflies': 'C4^3', 'short_h_m': 'P4_2', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2'], 'universal_h_m': 'P42'}, {'hall': ' P 4cw', 'hermann_mauguin': 'P43', 'hermann_mauguin_u': 'P4_3', 'ncsym': ['x,y,z', '-y,x,z+3/4', '-x,-y,z+1/2', 'y,-x,z+1/4'], 'number': 78, 'point_group': '4', 'schoenflies': 'C4^4', 'short_h_m': 'P4_3', 'symops': ['x,y,z', '-y,x,z+3/4', '-x,-y,z+1/2', 'y,-x,z+1/4'], 'universal_h_m': 'P43'}, {'hall': ' I 4', 'hermann_mauguin': 'I4', 'hermann_mauguin_u': 'I4', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z'], 'number': 79, 'point_group': '4', 'schoenflies': 'C4^5', 'short_h_m': 'I4', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2'], 'universal_h_m': 'I4'}, {'hall': ' I 4bw', 'hermann_mauguin': 'I41', 'hermann_mauguin_u': 'I4_1', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4'], 'number': 80, 'point_group': '4', 'schoenflies': 'C4^6', 'short_h_m': 'I4_1', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4'], 'universal_h_m': 'I41'}, {'hall': ' P -4', 'hermann_mauguin': 'P-4', 'hermann_mauguin_u': 'P-4', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z'], 'number': 81, 'point_group': '-4', 'schoenflies': 'S4^1', 'short_h_m': 'P-4', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z'], 'universal_h_m': 'P-4'}, {'hall': ' I -4', 'hermann_mauguin': 'I-4', 'hermann_mauguin_u': 'I-4', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z'], 'number': 82, 'point_group': '-4', 'schoenflies': 'S4^2', 'short_h_m': 'I-4', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2'], 'universal_h_m': 'I-4'}, {'hall': '-P 4', 'hermann_mauguin': 'P4/m', 'hermann_mauguin_u': 'P4/m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z'], 'number': 83, 'point_group': '4/m', 'schoenflies': 'C4h^1', 'short_h_m': 'P4/m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z'], 'universal_h_m': 'P4/m'}, {'hall': '-P 4c', 'hermann_mauguin': 'P42/m', 'hermann_mauguin_u': 'P4_2/m', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2'], 'number': 84, 'point_group': '4/m', 'schoenflies': 'C4h^2', 'short_h_m': 'P4_2/m', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2'], 'universal_h_m': 'P42/m'}, {'hall': ' P 4ab -1ab', 'hermann_mauguin': 'P4/n', 'hermann_mauguin_u': 'P4/n', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z'], 'number': 85, 'point_group': '4/m', 'schoenflies': 'C4h^3', 'short_h_m': 'P4/n', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z'], 'universal_h_m': 'P4/n:1'}, {'hall': '-P 4a', 'hermann_mauguin': 'P4/n', 'hermann_mauguin_u': 'P4/n', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z'], 'number': 85, 'point_group': '4/m', 'schoenflies': 'C4h^3', 'short_h_m': 'P4/n', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z'], 'universal_h_m': 'P4/n:2'}, {'hall': ' P 4n -1n', 'hermann_mauguin': 'P42/n', 'hermann_mauguin_u': 'P4_2/n', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z'], 'number': 86, 'point_group': '4/m', 'schoenflies': 'C4h^4', 'short_h_m': 'P4_2/n', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z'], 'universal_h_m': 'P42/n:1'}, {'hall': '-P 4bc', 'hermann_mauguin': 'P42/n', 'hermann_mauguin_u': 'P4_2/n', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z+1/2', '-x,-y,-z', 'y,-x-1/2,-z-1/2', 'x-1/2,y-1/2,-z', '-y-1/2,x,-z-1/2'], 'number': 86, 'point_group': '4/m', 'schoenflies': 'C4h^4', 'short_h_m': 'P4_2/n', 'symops': ['x,y,z', '-y,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z+1/2', '-x,-y,-z', 'y,-x-1/2,-z-1/2', 'x-1/2,y-1/2,-z', '-y-1/2,x,-z-1/2'], 'universal_h_m': 'P42/n:2'}, {'hall': '-I 4', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2'], 'universal_h_m': 'I4/m'}, {'hall': ' I 4bw -1bw', 'hermann_mauguin': 'I41/a', 'hermann_mauguin_u': 'I4_1/a', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2'], 'number': 88, 'point_group': '4/m', 'schoenflies': 'C4h^6', 'short_h_m': 'I4_1/a', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', '-x+1/2,-y+1,-z+3/4', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/4', '-y,x+1,-z'], 'universal_h_m': 'I41/a:1'}, {'hall': '-I 4ad', 'hermann_mauguin': 'I41/a', 'hermann_mauguin_u': 'I4_1/a', 'ncsym': ['x,y,z', '-y+3/4,x+1/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+3/4,-x+3/4,z+3/4', '-x,-y,-z', 'y-3/4,-x-1/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-3/4,x-3/4,-z-3/4'], 'number': 88, 'point_group': '4/m', 'schoenflies': 'C4h^6', 'short_h_m': 'I4_1/a', 'symops': ['x,y,z', '-y+3/4,x+1/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+3/4,-x+3/4,z+3/4', '-x,-y,-z', 'y-3/4,-x-1/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-3/4,x-3/4,-z-3/4', 'x+1/2,y+1/2,z+1/2', '-y+5/4,x+3/4,z+3/4', '-x+1,-y+1/2,z+1', 'y+5/4,-x+5/4,z+5/4', '-x+1/2,-y+1/2,-z+1/2', 'y-1/4,-x+1/4,-z+1/4', 'x,y+1/2,-z', '-y-1/4,x-1/4,-z-1/4'], 'universal_h_m': 'I41/a:2'}, {'hall': ' P 4 2', 'hermann_mauguin': 'P422', 'hermann_mauguin_u': 'P422', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z'], 'number': 89, 'point_group': '422', 'schoenflies': 'D4^1', 'short_h_m': 'P422', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z'], 'universal_h_m': 'P422'}, {'hall': ' P 4ab 2ab', 'hermann_mauguin': 'P4212', 'hermann_mauguin_u': 'P42_12', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z'], 'number': 90, 'point_group': '422', 'schoenflies': 'D4^2', 'short_h_m': 'P42_12', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z'], 'universal_h_m': 'P4212'}, {'hall': ' P 4w 2c', 'hermann_mauguin': 'P4122', 'hermann_mauguin_u': 'P4_122', 'ncsym': ['x,y,z', '-y,x,z+1/4', '-x,-y,z+1/2', 'y,-x,z+3/4', 'x,-y,-z+1/2', 'y,x,-z+3/4', '-x,y,-z', '-y,-x,-z+1/4'], 'number': 91, 'point_group': '422', 'schoenflies': 'D4^3', 'short_h_m': 'P4_122', 'symops': ['x,y,z', '-y,x,z+1/4', '-x,-y,z+1/2', 'y,-x,z+3/4', 'x,-y,-z+1/2', 'y,x,-z+3/4', '-x,y,-z', '-y,-x,-z+1/4'], 'universal_h_m': 'P4122'}, {'hall': ' P 4abw 2nw', 'hermann_mauguin': 'P41212', 'hermann_mauguin_u': 'P4_12_12', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/4', '-x,-y,z+1/2', 'y+1/2,-x+1/2,z+3/4', 'x+1/2,-y+1/2,-z+3/4', 'y,x,-z', '-x+1/2,y+1/2,-z+1/4', '-y,-x,-z+1/2'], 'number': 92, 'point_group': '422', 'schoenflies': 'D4^4', 'short_h_m': 'P4_12_12', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/4', '-x,-y,z+1/2', 'y+1/2,-x+1/2,z+3/4', 'x+1/2,-y+1/2,-z+3/4', 'y,x,-z', '-x+1/2,y+1/2,-z+1/4', '-y,-x,-z+1/2'], 'universal_h_m': 'P41212'}, {'hall': ' P 4c 2', 'hermann_mauguin': 'P4222', 'hermann_mauguin_u': 'P4_222', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2'], 'number': 93, 'point_group': '422', 'schoenflies': 'D4^5', 'short_h_m': 'P4_222', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2'], 'universal_h_m': 'P4222'}, {'hall': ' P 4n 2n', 'hermann_mauguin': 'P42212', 'hermann_mauguin_u': 'P4_22_12', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z'], 'number': 94, 'point_group': '422', 'schoenflies': 'D4^6', 'short_h_m': 'P4_22_12', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z'], 'universal_h_m': 'P42212'}, {'hall': ' P 4cw 2c', 'hermann_mauguin': 'P4322', 'hermann_mauguin_u': 'P4_322', 'ncsym': ['x,y,z', '-y,x,z+3/4', '-x,-y,z+1/2', 'y,-x,z+1/4', 'x,-y,-z+1/2', 'y,x,-z+1/4', '-x,y,-z', '-y,-x,-z+3/4'], 'number': 95, 'point_group': '422', 'schoenflies': 'D4^7', 'short_h_m': 'P4_322', 'symops': ['x,y,z', '-y,x,z+3/4', '-x,-y,z+1/2', 'y,-x,z+1/4', 'x,-y,-z+1/2', 'y,x,-z+1/4', '-x,y,-z', '-y,-x,-z+3/4'], 'universal_h_m': 'P4322'}, {'hall': ' P 4nw 2abw', 'hermann_mauguin': 'P43212', 'hermann_mauguin_u': 'P4_32_12', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+3/4', '-x,-y,z+1/2', 'y+1/2,-x+1/2,z+1/4', 'x+1/2,-y+1/2,-z+1/4', 'y,x,-z', '-x+1/2,y+1/2,-z+3/4', '-y,-x,-z+1/2'], 'number': 96, 'point_group': '422', 'schoenflies': 'D4^8', 'short_h_m': 'P4_32_12', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+3/4', '-x,-y,z+1/2', 'y+1/2,-x+1/2,z+1/4', 'x+1/2,-y+1/2,-z+1/4', 'y,x,-z', '-x+1/2,y+1/2,-z+3/4', '-y,-x,-z+1/2'], 'universal_h_m': 'P43212'}, {'hall': ' I 4 2', 'hermann_mauguin': 'I422', 'hermann_mauguin_u': 'I422', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z'], 'number': 97, 'point_group': '422', 'schoenflies': 'D4^9', 'short_h_m': 'I422', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2'], 'universal_h_m': 'I422'}, {'hall': ' I 4bw 2bw', 'hermann_mauguin': 'I4122', 'hermann_mauguin_u': 'I4_122', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x,-y+1/2,-z+1/4', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+3/4', '-y,-x,-z'], 'number': 98, 'point_group': '422', 'schoenflies': 'D4^10', 'short_h_m': 'I4_122', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x,-y+1/2,-z+1/4', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+3/4', '-y,-x,-z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', 'x+1/2,-y+1,-z+3/4', 'y+1,x+1,-z+1', '-x+1,y+1/2,-z+5/4', '-y+1/2,-x+1/2,-z+1/2'], 'universal_h_m': 'I4122'}, {'hall': ' P 4 -2', 'hermann_mauguin': 'P4mm', 'hermann_mauguin_u': 'P4mm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 99, 'point_group': '4mm', 'schoenflies': 'C4v^1', 'short_h_m': 'P4mm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'universal_h_m': 'P4mm'}, {'hall': ' P 4 -2ab', 'hermann_mauguin': 'P4bm', 'hermann_mauguin_u': 'P4bm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'number': 100, 'point_group': '4mm', 'schoenflies': 'C4v^2', 'short_h_m': 'P4bm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'P4bm'}, {'hall': ' P 4c -2c', 'hermann_mauguin': 'P42cm', 'hermann_mauguin_u': 'P4_2cm', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'y,x,z'], 'number': 101, 'point_group': '4mm', 'schoenflies': 'C4v^3', 'short_h_m': 'P4_2cm', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'y,x,z'], 'universal_h_m': 'P42cm'}, {'hall': ' P 4n -2n', 'hermann_mauguin': 'P42nm', 'hermann_mauguin_u': 'P4_2nm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'number': 102, 'point_group': '4mm', 'schoenflies': 'C4v^4', 'short_h_m': 'P4_2nm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'universal_h_m': 'P42nm'}, {'hall': ' P 4 -2c', 'hermann_mauguin': 'P4cc', 'hermann_mauguin_u': 'P4cc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2'], 'number': 103, 'point_group': '4mm', 'schoenflies': 'C4v^5', 'short_h_m': 'P4cc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2'], 'universal_h_m': 'P4cc'}, {'hall': ' P 4 -2n', 'hermann_mauguin': 'P4nc', 'hermann_mauguin_u': 'P4nc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 104, 'point_group': '4mm', 'schoenflies': 'C4v^6', 'short_h_m': 'P4nc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P4nc'}, {'hall': ' P 4c -2', 'hermann_mauguin': 'P42mc', 'hermann_mauguin_u': 'P4_2mc', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'y,x,z+1/2'], 'number': 105, 'point_group': '4mm', 'schoenflies': 'C4v^7', 'short_h_m': 'P4_2mc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'y,x,z+1/2'], 'universal_h_m': 'P42mc'}, {'hall': ' P 4c -2ab', 'hermann_mauguin': 'P42bc', 'hermann_mauguin_u': 'P4_2bc', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z+1/2'], 'number': 106, 'point_group': '4mm', 'schoenflies': 'C4v^8', 'short_h_m': 'P4_2bc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P42bc'}, {'hall': ' I 4 -2', 'hermann_mauguin': 'I4mm', 'hermann_mauguin_u': 'I4mm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 107, 'point_group': '4mm', 'schoenflies': 'C4v^9', 'short_h_m': 'I4mm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'I4mm'}, {'hall': ' I 4 -2c', 'hermann_mauguin': 'I4cm', 'hermann_mauguin_u': 'I4cm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2'], 'number': 108, 'point_group': '4mm', 'schoenflies': 'C4v^10', 'short_h_m': 'I4cm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,z+1', '-y+1/2,-x+1/2,z+1', 'x+1/2,-y+1/2,z+1', 'y+1/2,x+1/2,z+1'], 'universal_h_m': 'I4cm'}, {'hall': ' I 4bw -2', 'hermann_mauguin': 'I41md', 'hermann_mauguin_u': 'I4_1md', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,y,z', '-y,-x+1/2,z+1/4', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x,z+3/4'], 'number': 109, 'point_group': '4mm', 'schoenflies': 'C4v^11', 'short_h_m': 'I4_1md', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,y,z', '-y,-x+1/2,z+1/4', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x,z+3/4', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1,z+3/4', 'x+1,-y+1,z+1', 'y+1,x+1/2,z+5/4'], 'universal_h_m': 'I41md'}, {'hall': ' I 4bw -2c', 'hermann_mauguin': 'I41cd', 'hermann_mauguin_u': 'I4_1cd', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,y,z+1/2', '-y,-x+1/2,z+3/4', 'x+1/2,-y+1/2,z', 'y+1/2,x,z+1/4'], 'number': 110, 'point_group': '4mm', 'schoenflies': 'C4v^12', 'short_h_m': 'I4_1cd', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,y,z+1/2', '-y,-x+1/2,z+3/4', 'x+1/2,-y+1/2,z', 'y+1/2,x,z+1/4', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', '-x+1/2,y+1/2,z+1', '-y+1/2,-x+1,z+5/4', 'x+1,-y+1,z+1/2', 'y+1,x+1/2,z+3/4'], 'universal_h_m': 'I41cd'}, {'hall': ' P -4 2', 'hermann_mauguin': 'P-42m', 'hermann_mauguin_u': 'P-42m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z'], 'number': 111, 'point_group': '-42m', 'schoenflies': 'D2d^1', 'short_h_m': 'P-42m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z'], 'universal_h_m': 'P-42m'}, {'hall': ' P -4 2c', 'hermann_mauguin': 'P-42c', 'hermann_mauguin_u': 'P-42c', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z+1/2', '-y,-x,z+1/2', '-x,y,-z+1/2', 'y,x,z+1/2'], 'number': 112, 'point_group': '-42m', 'schoenflies': 'D2d^2', 'short_h_m': 'P-42c', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z+1/2', '-y,-x,z+1/2', '-x,y,-z+1/2', 'y,x,z+1/2'], 'universal_h_m': 'P-42c'}, {'hall': ' P -4 2ab', 'hermann_mauguin': 'P-421m', 'hermann_mauguin_u': 'P-42_1m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x+1/2,-y+1/2,-z', '-y+1/2,-x+1/2,z', '-x+1/2,y+1/2,-z', 'y+1/2,x+1/2,z'], 'number': 113, 'point_group': '-42m', 'schoenflies': 'D2d^3', 'short_h_m': 'P-42_1m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x+1/2,-y+1/2,-z', '-y+1/2,-x+1/2,z', '-x+1/2,y+1/2,-z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'P-421m'}, {'hall': ' P -4 2n', 'hermann_mauguin': 'P-421c', 'hermann_mauguin_u': 'P-42_1c', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x+1/2,-y+1/2,-z+1/2', '-y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 114, 'point_group': '-42m', 'schoenflies': 'D2d^4', 'short_h_m': 'P-42_1c', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x+1/2,-y+1/2,-z+1/2', '-y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P-421c'}, {'hall': ' P -4 -2', 'hermann_mauguin': 'P-4m2', 'hermann_mauguin_u': 'P-4m2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z', 'y,x,-z', 'x,-y,z', '-y,-x,-z'], 'number': 115, 'point_group': '-42m', 'schoenflies': 'D2d^5', 'short_h_m': 'P-4m2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z', 'y,x,-z', 'x,-y,z', '-y,-x,-z'], 'universal_h_m': 'P-4m2'}, {'hall': ' P -4 -2c', 'hermann_mauguin': 'P-4c2', 'hermann_mauguin_u': 'P-4c2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z+1/2', 'y,x,-z+1/2', 'x,-y,z+1/2', '-y,-x,-z+1/2'], 'number': 116, 'point_group': '-42m', 'schoenflies': 'D2d^6', 'short_h_m': 'P-4c2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z+1/2', 'y,x,-z+1/2', 'x,-y,z+1/2', '-y,-x,-z+1/2'], 'universal_h_m': 'P-4c2'}, {'hall': ' P -4 -2ab', 'hermann_mauguin': 'P-4b2', 'hermann_mauguin_u': 'P-4b2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x+1/2,y+1/2,z', 'y+1/2,x+1/2,-z', 'x+1/2,-y+1/2,z', '-y+1/2,-x+1/2,-z'], 'number': 117, 'point_group': '-42m', 'schoenflies': 'D2d^7', 'short_h_m': 'P-4b2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x+1/2,y+1/2,z', 'y+1/2,x+1/2,-z', 'x+1/2,-y+1/2,z', '-y+1/2,-x+1/2,-z'], 'universal_h_m': 'P-4b2'}, {'hall': ' P -4 -2n', 'hermann_mauguin': 'P-4n2', 'hermann_mauguin_u': 'P-4n2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', 'y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2'], 'number': 118, 'point_group': '-42m', 'schoenflies': 'D2d^8', 'short_h_m': 'P-4n2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', 'y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2'], 'universal_h_m': 'P-4n2'}, {'hall': ' I -4 -2', 'hermann_mauguin': 'I-4m2', 'hermann_mauguin_u': 'I-4m2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z', 'y,x,-z', 'x,-y,z', '-y,-x,-z'], 'number': 119, 'point_group': '-42m', 'schoenflies': 'D2d^9', 'short_h_m': 'I-4m2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z', 'y,x,-z', 'x,-y,z', '-y,-x,-z', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2'], 'universal_h_m': 'I-4m2'}, {'hall': ' I -4 -2c', 'hermann_mauguin': 'I-4c2', 'hermann_mauguin_u': 'I-4c2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z+1/2', 'y,x,-z+1/2', 'x,-y,z+1/2', '-y,-x,-z+1/2'], 'number': 120, 'point_group': '-42m', 'schoenflies': 'D2d^10', 'short_h_m': 'I-4c2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z+1/2', 'y,x,-z+1/2', 'x,-y,z+1/2', '-y,-x,-z+1/2', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1', 'y+1/2,x+1/2,-z+1', 'x+1/2,-y+1/2,z+1', '-y+1/2,-x+1/2,-z+1'], 'universal_h_m': 'I-4c2'}, {'hall': ' I -4 2', 'hermann_mauguin': 'I-42m', 'hermann_mauguin_u': 'I-42m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z'], 'number': 121, 'point_group': '-42m', 'schoenflies': 'D2d^11', 'short_h_m': 'I-42m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'I-42m'}, {'hall': ' I -4 2bw', 'hermann_mauguin': 'I-42d', 'hermann_mauguin_u': 'I-42d', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y+1/2,-z+1/4', '-y+1/2,-x,z+3/4', '-x,y+1/2,-z+1/4', 'y+1/2,x,z+3/4'], 'number': 122, 'point_group': '-42m', 'schoenflies': 'D2d^12', 'short_h_m': 'I-42d', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y+1/2,-z+1/4', '-y+1/2,-x,z+3/4', '-x,y+1/2,-z+1/4', 'y+1/2,x,z+3/4', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1,-z+3/4', '-y+1,-x+1/2,z+5/4', '-x+1/2,y+1,-z+3/4', 'y+1,x+1/2,z+5/4'], 'universal_h_m': 'I-42d'}, {'hall': '-P 4 2', 'hermann_mauguin': 'P4/mmm', 'hermann_mauguin_u': 'P4/mmm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 123, 'point_group': '4/mmm', 'schoenflies': 'D4h^1', 'short_h_m': 'P4/mmm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'universal_h_m': 'P4/mmm'}, {'hall': '-P 4 2c', 'hermann_mauguin': 'P4/mcc', 'hermann_mauguin_u': 'P4/mcc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z-1/2', '-y,-x,z-1/2', 'x,-y,z-1/2', 'y,x,z-1/2'], 'number': 124, 'point_group': '4/mmm', 'schoenflies': 'D4h^2', 'short_h_m': 'P4/mcc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z-1/2', '-y,-x,z-1/2', 'x,-y,z-1/2', 'y,x,z-1/2'], 'universal_h_m': 'P4/mcc'}, {'hall': ' P 4 2 -1ab', 'hermann_mauguin': 'P4/nbm', 'hermann_mauguin_u': 'P4/nbm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'number': 125, 'point_group': '4/mmm', 'schoenflies': 'D4h^3', 'short_h_m': 'P4/nbm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'P4/nbm:1'}, {'hall': '-P 4a 2b', 'hermann_mauguin': 'P4/nbm', 'hermann_mauguin_u': 'P4/nbm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z', '-y,-x,z', 'x-1/2,-y,z', 'y-1/2,x-1/2,z'], 'number': 125, 'point_group': '4/mmm', 'schoenflies': 'D4h^3', 'short_h_m': 'P4/nbm', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z', '-y,-x,z', 'x-1/2,-y,z', 'y-1/2,x-1/2,z'], 'universal_h_m': 'P4/nbm:2'}, {'hall': ' P 4 2 -1n', 'hermann_mauguin': 'P4/nnc', 'hermann_mauguin_u': 'P4/nnc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 126, 'point_group': '4/mmm', 'schoenflies': 'D4h^4', 'short_h_m': 'P4/nnc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P4/nnc:1'}, {'hall': '-P 4a 2bc', 'hermann_mauguin': 'P4/nnc', 'hermann_mauguin_u': 'P4/nnc', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z-1/2', '-y,-x,z-1/2', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z-1/2'], 'number': 126, 'point_group': '4/mmm', 'schoenflies': 'D4h^4', 'short_h_m': 'P4/nnc', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z-1/2', '-y,-x,z-1/2', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z-1/2'], 'universal_h_m': 'P4/nnc:2'}, {'hall': '-P 4 2ab', 'hermann_mauguin': 'P4/mbm', 'hermann_mauguin_u': 'P4/mbm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x-1/2,y-1/2,z', '-y-1/2,-x-1/2,z', 'x-1/2,-y-1/2,z', 'y-1/2,x-1/2,z'], 'number': 127, 'point_group': '4/mmm', 'schoenflies': 'D4h^5', 'short_h_m': 'P4/mbm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x-1/2,y-1/2,z', '-y-1/2,-x-1/2,z', 'x-1/2,-y-1/2,z', 'y-1/2,x-1/2,z'], 'universal_h_m': 'P4/mbm'}, {'hall': '-P 4 2n', 'hermann_mauguin': 'P4/mnc', 'hermann_mauguin_u': 'P4/mnc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x-1/2,y-1/2,z-1/2', '-y-1/2,-x-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2', 'y-1/2,x-1/2,z-1/2'], 'number': 128, 'point_group': '4/mmm', 'schoenflies': 'D4h^6', 'short_h_m': 'P4/mnc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x-1/2,y-1/2,z-1/2', '-y-1/2,-x-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2', 'y-1/2,x-1/2,z-1/2'], 'universal_h_m': 'P4/mnc'}, {'hall': ' P 4ab 2ab -1ab', 'hermann_mauguin': 'P4/nmm', 'hermann_mauguin_u': 'P4/nmm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z', '-y+1/2,-x+1/2,z', 'x,-y,z', 'y+1/2,x+1/2,z'], 'number': 129, 'point_group': '4/mmm', 'schoenflies': 'D4h^7', 'short_h_m': 'P4/nmm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z', '-y+1/2,-x+1/2,z', 'x,-y,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'P4/nmm:1'}, {'hall': '-P 4a 2a', 'hermann_mauguin': 'P4/nmm', 'hermann_mauguin_u': 'P4/nmm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x-1/2,y,z', '-y-1/2,-x-1/2,z', 'x,-y-1/2,z', 'y,x,z'], 'number': 129, 'point_group': '4/mmm', 'schoenflies': 'D4h^7', 'short_h_m': 'P4/nmm', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x-1/2,y,z', '-y-1/2,-x-1/2,z', 'x,-y-1/2,z', 'y,x,z'], 'universal_h_m': 'P4/nmm:2'}, {'hall': ' P 4ab 2n -1ab', 'hermann_mauguin': 'P4/ncc', 'hermann_mauguin_u': 'P4/ncc', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z-1/2', '-y+1/2,-x+1/2,z-1/2', 'x,-y,z-1/2', 'y+1/2,x+1/2,z-1/2'], 'number': 130, 'point_group': '4/mmm', 'schoenflies': 'D4h^8', 'short_h_m': 'P4/ncc', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z-1/2', '-y+1/2,-x+1/2,z-1/2', 'x,-y,z-1/2', 'y+1/2,x+1/2,z-1/2'], 'universal_h_m': 'P4/ncc:1'}, {'hall': '-P 4a 2ac', 'hermann_mauguin': 'P4/ncc', 'hermann_mauguin_u': 'P4/ncc', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x-1/2,y,z-1/2', '-y-1/2,-x-1/2,z-1/2', 'x,-y-1/2,z-1/2', 'y,x,z-1/2'], 'number': 130, 'point_group': '4/mmm', 'schoenflies': 'D4h^8', 'short_h_m': 'P4/ncc', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x-1/2,y,z-1/2', '-y-1/2,-x-1/2,z-1/2', 'x,-y-1/2,z-1/2', 'y,x,z-1/2'], 'universal_h_m': 'P4/ncc:2'}, {'hall': '-P 4c 2', 'hermann_mauguin': 'P42/mmc', 'hermann_mauguin_u': 'P4_2/mmc', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x,y,z', '-y,-x,z-1/2', 'x,-y,z', 'y,x,z-1/2'], 'number': 131, 'point_group': '4/mmm', 'schoenflies': 'D4h^9', 'short_h_m': 'P4_2/mmc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x,y,z', '-y,-x,z-1/2', 'x,-y,z', 'y,x,z-1/2'], 'universal_h_m': 'P42/mmc'}, {'hall': '-P 4c 2c', 'hermann_mauguin': 'P42/mcm', 'hermann_mauguin_u': 'P4_2/mcm', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x,y,z-1/2', '-y,-x,z', 'x,-y,z-1/2', 'y,x,z'], 'number': 132, 'point_group': '4/mmm', 'schoenflies': 'D4h^10', 'short_h_m': 'P4_2/mcm', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x,y,z-1/2', '-y,-x,z', 'x,-y,z-1/2', 'y,x,z'], 'universal_h_m': 'P42/mcm'}, {'hall': ' P 4n 2c -1n', 'hermann_mauguin': 'P42/nbc', 'hermann_mauguin_u': 'P4_2/nbc', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z', 'y,x,z+1/2'], 'number': 133, 'point_group': '4/mmm', 'schoenflies': 'D4h^11', 'short_h_m': 'P4_2/nbc', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z', 'y,x,z+1/2'], 'universal_h_m': 'P42/nbc:1'}, {'hall': '-P 4ac 2b', 'hermann_mauguin': 'P42/nbc', 'hermann_mauguin_u': 'P4_2/nbc', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x,y-1/2,z', '-y,-x,z-1/2', 'x-1/2,-y,z', 'y-1/2,x-1/2,z-1/2'], 'number': 133, 'point_group': '4/mmm', 'schoenflies': 'D4h^11', 'short_h_m': 'P4_2/nbc', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x,y-1/2,z', '-y,-x,z-1/2', 'x-1/2,-y,z', 'y-1/2,x-1/2,z-1/2'], 'universal_h_m': 'P42/nbc:2'}, {'hall': ' P 4n 2 -1n', 'hermann_mauguin': 'P42/nnm', 'hermann_mauguin_u': 'P4_2/nnm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'number': 134, 'point_group': '4/mmm', 'schoenflies': 'D4h^12', 'short_h_m': 'P4_2/nnm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'universal_h_m': 'P42/nnm:1'}, {'hall': '-P 4ac 2bc', 'hermann_mauguin': 'P42/nnm', 'hermann_mauguin_u': 'P4_2/nnm', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x,y-1/2,z-1/2', '-y,-x,z', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z'], 'number': 134, 'point_group': '4/mmm', 'schoenflies': 'D4h^12', 'short_h_m': 'P4_2/nnm', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x,y-1/2,z-1/2', '-y,-x,z', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z'], 'universal_h_m': 'P42/nnm:2'}, {'hall': '-P 4c 2ab', 'hermann_mauguin': 'P42/mbc', 'hermann_mauguin_u': 'P4_2/mbc', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x-1/2,y-1/2,z', '-y-1/2,-x-1/2,z-1/2', 'x-1/2,-y-1/2,z', 'y-1/2,x-1/2,z-1/2'], 'number': 135, 'point_group': '4/mmm', 'schoenflies': 'D4h^13', 'short_h_m': 'P4_2/mbc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x-1/2,y-1/2,z', '-y-1/2,-x-1/2,z-1/2', 'x-1/2,-y-1/2,z', 'y-1/2,x-1/2,z-1/2'], 'universal_h_m': 'P42/mbc'}, {'hall': '-P 4n 2n', 'hermann_mauguin': 'P42/mnm', 'hermann_mauguin_u': 'P4_2/mnm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x-1/2,-z-1/2', 'x,y,-z', '-y-1/2,x-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', '-y,-x,z', 'x-1/2,-y-1/2,z-1/2', 'y,x,z'], 'number': 136, 'point_group': '4/mmm', 'schoenflies': 'D4h^14', 'short_h_m': 'P4_2/mnm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x-1/2,-z-1/2', 'x,y,-z', '-y-1/2,x-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', '-y,-x,z', 'x-1/2,-y-1/2,z-1/2', 'y,x,z'], 'universal_h_m': 'P42/mnm'}, {'hall': ' P 4n 2n -1n', 'hermann_mauguin': 'P42/nmc', 'hermann_mauguin_u': 'P4_2/nmc', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x,y,z', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z', 'y+1/2,x+1/2,z+1/2'], 'number': 137, 'point_group': '4/mmm', 'schoenflies': 'D4h^15', 'short_h_m': 'P4_2/nmc', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x,y,z', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P42/nmc:1'}, {'hall': '-P 4ac 2a', 'hermann_mauguin': 'P42/nmc', 'hermann_mauguin_u': 'P4_2/nmc', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x-1/2,y,z', '-y-1/2,-x-1/2,z-1/2', 'x,-y-1/2,z', 'y,x,z-1/2'], 'number': 137, 'point_group': '4/mmm', 'schoenflies': 'D4h^15', 'short_h_m': 'P4_2/nmc', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x-1/2,y,z', '-y-1/2,-x-1/2,z-1/2', 'x,-y-1/2,z', 'y,x,z-1/2'], 'universal_h_m': 'P42/nmc:2'}, {'hall': ' P 4n 2ab -1n', 'hermann_mauguin': 'P42/ncm', 'hermann_mauguin_u': 'P4_2/ncm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x,y,z+1/2', '-y+1/2,-x+1/2,z', 'x,-y,z+1/2', 'y+1/2,x+1/2,z'], 'number': 138, 'point_group': '4/mmm', 'schoenflies': 'D4h^16', 'short_h_m': 'P4_2/ncm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x,y,z+1/2', '-y+1/2,-x+1/2,z', 'x,-y,z+1/2', 'y+1/2,x+1/2,z'], 'universal_h_m': 'P42/ncm:1'}, {'hall': '-P 4ac 2ac', 'hermann_mauguin': 'P42/ncm', 'hermann_mauguin_u': 'P4_2/ncm', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x-1/2,y,z-1/2', '-y-1/2,-x-1/2,z', 'x,-y-1/2,z-1/2', 'y,x,z'], 'number': 138, 'point_group': '4/mmm', 'schoenflies': 'D4h^16', 'short_h_m': 'P4_2/ncm', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x-1/2,y,z-1/2', '-y-1/2,-x-1/2,z', 'x,-y-1/2,z-1/2', 'y,x,z'], 'universal_h_m': 'P42/ncm:2'}, {'hall': '-I 4 2', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'I4/mmm'}, {'hall': '-I 4 2c', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z-1/2', '-y,-x,z-1/2', 'x,-y,z-1/2', 'y,x,z-1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z-1/2', '-y,-x,z-1/2', 'x,-y,z-1/2', 'y,x,z-1/2', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1', 'y+1/2,x+1/2,-z+1', '-x+1/2,y+1/2,-z+1', '-y+1/2,-x+1/2,-z+1', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'I4/mcm'}, {'hall': ' I 4bw 2bw -1bw', 'hermann_mauguin': 'I41/amd', 'hermann_mauguin_u': 'I4_1/amd', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x,-y+1/2,-z+1/4', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+3/4', '-y,-x,-z', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2', '-x,y,z', '-y-1/2,-x,z-1/4', 'x-1/2,-y+1/2,z-1/2', 'y,x+1/2,z+1/4'], 'number': 141, 'point_group': '4/mmm', 'schoenflies': 'D4h^19', 'short_h_m': 'I4_1/amd', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x,-y+1/2,-z+1/4', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+3/4', '-y,-x,-z', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2', '-x,y,z', '-y-1/2,-x,z-1/4', 'x-1/2,-y+1/2,z-1/2', 'y,x+1/2,z+1/4', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', 'x+1/2,-y+1,-z+3/4', 'y+1,x+1,-z+1', '-x+1,y+1/2,-z+5/4', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1,-z+3/4', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/4', '-y,x+1,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x+1/2,z+1/4', 'x,-y+1,z', 'y+1/2,x+1,z+3/4'], 'universal_h_m': 'I41/amd:1'}, {'hall': '-I 4bd 2', 'hermann_mauguin': 'I41/amd', 'hermann_mauguin_u': 'I4_1/amd', 'ncsym': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+3/4,-z+1/4', '-x+1/2,y,-z+1/2', '-y+1/4,-x+1/4,-z+3/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z', '-y-1/4,-x-3/4,z-1/4', 'x-1/2,-y,z-1/2', 'y-1/4,x-1/4,z-3/4'], 'number': 141, 'point_group': '4/mmm', 'schoenflies': 'D4h^19', 'short_h_m': 'I4_1/amd', 'symops': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+3/4,-z+1/4', '-x+1/2,y,-z+1/2', '-y+1/4,-x+1/4,-z+3/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z', '-y-1/4,-x-3/4,z-1/4', 'x-1/2,-y,z-1/2', 'y-1/4,x-1/4,z-3/4', 'x+1/2,y+1/2,z+1/2', '-y+3/4,x+5/4,z+3/4', '-x+1,-y+1/2,z+1', 'y+3/4,-x+3/4,z+5/4', 'x+1/2,-y+1/2,-z+1/2', 'y+3/4,x+5/4,-z+3/4', '-x+1,y+1/2,-z+1', '-y+3/4,-x+3/4,-z+5/4', '-x+1/2,-y+1/2,-z+1/2', 'y+1/4,-x-1/4,-z+1/4', 'x,y+1/2,-z', '-y+1/4,x+1/4,-z-1/4', '-x+1/2,y+1/2,z+1/2', '-y+1/4,-x-1/4,z+1/4', 'x,-y+1/2,z', 'y+1/4,x+1/4,z-1/4'], 'universal_h_m': 'I41/amd:2'}, {'hall': ' I 4bw 2aw -1bw', 'hermann_mauguin': 'I41/acd', 'hermann_mauguin_u': 'I4_1/acd', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x+1/2,-y,-z+1/4', 'y,x,-z+1/2', '-x,y+1/2,-z+3/4', '-y+1/2,-x+1/2,-z', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2', '-x-1/2,y+1/2,z', '-y,-x+1/2,z-1/4', 'x,-y,z-1/2', 'y-1/2,x,z+1/4'], 'number': 142, 'point_group': '4/mmm', 'schoenflies': 'D4h^20', 'short_h_m': 'I4_1/acd', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x+1/2,-y,-z+1/4', 'y,x,-z+1/2', '-x,y+1/2,-z+3/4', '-y+1/2,-x+1/2,-z', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2', '-x-1/2,y+1/2,z', '-y,-x+1/2,z-1/4', 'x,-y,z-1/2', 'y-1/2,x,z+1/4', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', 'x+1,-y+1/2,-z+3/4', 'y+1/2,x+1/2,-z+1', '-x+1/2,y+1,-z+5/4', '-y+1,-x+1,-z+1/2', '-x+1/2,-y+1,-z+3/4', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/4', '-y,x+1,-z', '-x,y+1,z+1/2', '-y+1/2,-x+1,z+1/4', 'x+1/2,-y+1/2,z', 'y,x+1/2,z+3/4'], 'universal_h_m': 'I41/acd:1'}, {'hall': '-I 4bd 2c', 'hermann_mauguin': 'I41/acd', 'hermann_mauguin_u': 'I4_1/acd', 'ncsym': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z-1/2', '-y-1/4,-x-3/4,z-3/4', 'x-1/2,-y,z', 'y-1/4,x-1/4,z-1/4'], 'number': 142, 'point_group': '4/mmm', 'schoenflies': 'D4h^20', 'short_h_m': 'I4_1/acd', 'symops': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z-1/2', '-y-1/4,-x-3/4,z-3/4', 'x-1/2,-y,z', 'y-1/4,x-1/4,z-1/4', 'x+1/2,y+1/2,z+1/2', '-y+3/4,x+5/4,z+3/4', '-x+1,-y+1/2,z+1', 'y+3/4,-x+3/4,z+5/4', 'x+1/2,-y+1/2,-z+1', 'y+3/4,x+5/4,-z+5/4', '-x+1,y+1/2,-z+1/2', '-y+3/4,-x+3/4,-z+3/4', '-x+1/2,-y+1/2,-z+1/2', 'y+1/4,-x-1/4,-z+1/4', 'x,y+1/2,-z', '-y+1/4,x+1/4,-z-1/4', '-x+1/2,y+1/2,z', '-y+1/4,-x-1/4,z-1/4', 'x,-y+1/2,z+1/2', 'y+1/4,x+1/4,z+1/4'], 'universal_h_m': 'I41/acd:2'}, {'hall': ' P 3', 'hermann_mauguin': 'P3', 'hermann_mauguin_u': 'P3', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z'], 'number': 143, 'point_group': '3', 'schoenflies': 'C3^1', 'short_h_m': 'P3', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z'], 'universal_h_m': 'P3'}, {'hall': ' P 31', 'hermann_mauguin': 'P31', 'hermann_mauguin_u': 'P3_1', 'ncsym': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3'], 'number': 144, 'point_group': '3', 'schoenflies': 'C3^2', 'short_h_m': 'P3_1', 'symops': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3'], 'universal_h_m': 'P31'}, {'hall': ' P 32', 'hermann_mauguin': 'P32', 'hermann_mauguin_u': 'P3_2', 'ncsym': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3'], 'number': 145, 'point_group': '3', 'schoenflies': 'C3^3', 'short_h_m': 'P3_2', 'symops': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3'], 'universal_h_m': 'P32'}, {'hall': ' R 3', 'hermann_mauguin': 'R3', 'hermann_mauguin_u': 'R3', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z'], 'number': 146, 'point_group': '3', 'schoenflies': 'C3^4', 'short_h_m': 'R3', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3'], 'universal_h_m': 'R3:H'}, {'hall': ' P 3*', 'hermann_mauguin': 'R3', 'hermann_mauguin_u': 'R3', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x'], 'number': 146, 'point_group': '3', 'schoenflies': 'C3^4', 'short_h_m': 'R3', 'symops': ['x,y,z', 'z,x,y', 'y,z,x'], 'universal_h_m': 'R3:R'}, {'hall': '-P 3', 'hermann_mauguin': 'P-3', 'hermann_mauguin_u': 'P-3', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z'], 'number': 147, 'point_group': '-3', 'schoenflies': 'C3i^1', 'short_h_m': 'P-3', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z'], 'universal_h_m': 'P-3'}, {'hall': '-R 3', 'hermann_mauguin': 'R-3', 'hermann_mauguin_u': 'R-3', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z'], 'number': 148, 'point_group': '-3', 'schoenflies': 'C3i^2', 'short_h_m': 'R-3', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', '-x+2/3,-y+1/3,-z+1/3', 'y+2/3,-x+y+1/3,-z+1/3', 'x-y+2/3,x+1/3,-z+1/3', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', '-x+1/3,-y+2/3,-z+2/3', 'y+1/3,-x+y+2/3,-z+2/3', 'x-y+1/3,x+2/3,-z+2/3'], 'universal_h_m': 'R-3:H'}, {'hall': '-P 3*', 'hermann_mauguin': 'R-3', 'hermann_mauguin_u': 'R-3', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x'], 'number': 148, 'point_group': '-3', 'schoenflies': 'C3i^2', 'short_h_m': 'R-3', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x'], 'universal_h_m': 'R-3:R'}, {'hall': ' P 3 2', 'hermann_mauguin': 'P312', 'hermann_mauguin_u': 'P312', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z', 'x,x-y,-z', '-x+y,y,-z'], 'number': 149, 'point_group': '32', 'schoenflies': 'D3^1', 'short_h_m': 'P312', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z', 'x,x-y,-z', '-x+y,y,-z'], 'universal_h_m': 'P312'}, {'hall': ' P 3 2"', 'hermann_mauguin': 'P321', 'hermann_mauguin_u': 'P321', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z'], 'number': 150, 'point_group': '32', 'schoenflies': 'D3^2', 'short_h_m': 'P321', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z'], 'universal_h_m': 'P321'}, {'hall': ' P 31 2 (0 0 4)', 'hermann_mauguin': 'P3112', 'hermann_mauguin_u': 'P3_112', 'ncsym': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3', '-y,-x,-z+2/3', 'x,x-y,-z', '-x+y,y,-z+1/3'], 'number': 151, 'point_group': '32', 'schoenflies': 'D3^3', 'short_h_m': 'P3_112', 'symops': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3', '-y,-x,-z+2/3', 'x,x-y,-z', '-x+y,y,-z+1/3'], 'universal_h_m': 'P3112'}, {'hall': ' P 31 2"', 'hermann_mauguin': 'P3121', 'hermann_mauguin_u': 'P3_121', 'ncsym': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3', 'y,x,-z', '-x,-x+y,-z+1/3', 'x-y,-y,-z+2/3'], 'number': 152, 'point_group': '32', 'schoenflies': 'D3^4', 'short_h_m': 'P3_121', 'symops': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3', 'y,x,-z', '-x,-x+y,-z+1/3', 'x-y,-y,-z+2/3'], 'universal_h_m': 'P3121'}, {'hall': ' P 32 2 (0 0 2)', 'hermann_mauguin': 'P3212', 'hermann_mauguin_u': 'P3_212', 'ncsym': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3', '-y,-x,-z+1/3', 'x,x-y,-z', '-x+y,y,-z+2/3'], 'number': 153, 'point_group': '32', 'schoenflies': 'D3^5', 'short_h_m': 'P3_212', 'symops': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3', '-y,-x,-z+1/3', 'x,x-y,-z', '-x+y,y,-z+2/3'], 'universal_h_m': 'P3212'}, {'hall': ' P 32 2"', 'hermann_mauguin': 'P3221', 'hermann_mauguin_u': 'P3_221', 'ncsym': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3', 'y,x,-z', '-x,-x+y,-z+2/3', 'x-y,-y,-z+1/3'], 'number': 154, 'point_group': '32', 'schoenflies': 'D3^6', 'short_h_m': 'P3_221', 'symops': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3', 'y,x,-z', '-x,-x+y,-z+2/3', 'x-y,-y,-z+1/3'], 'universal_h_m': 'P3221'}, {'hall': ' R 3 2"', 'hermann_mauguin': 'R32', 'hermann_mauguin_u': 'R32', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z'], 'number': 155, 'point_group': '32', 'schoenflies': 'D3^7', 'short_h_m': 'R32', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', 'y+2/3,x+1/3,-z+1/3', '-x+2/3,-x+y+1/3,-z+1/3', 'x-y+2/3,-y+1/3,-z+1/3', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', 'y+1/3,x+2/3,-z+2/3', '-x+1/3,-x+y+2/3,-z+2/3', 'x-y+1/3,-y+2/3,-z+2/3'], 'universal_h_m': 'R32:H'}, {'hall': ' P 3* 2', 'hermann_mauguin': 'R32', 'hermann_mauguin_u': 'R32', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', '-y,-x,-z', '-z,-y,-x', '-x,-z,-y'], 'number': 155, 'point_group': '32', 'schoenflies': 'D3^7', 'short_h_m': 'R32', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', '-y,-x,-z', '-z,-y,-x', '-x,-z,-y'], 'universal_h_m': 'R32:R'}, {'hall': ' P 3 -2"', 'hermann_mauguin': 'P3m1', 'hermann_mauguin_u': 'P3m1', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'number': 156, 'point_group': '3m', 'schoenflies': 'C3v^1', 'short_h_m': 'P3m1', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'universal_h_m': 'P3m1'}, {'hall': ' P 3 -2', 'hermann_mauguin': 'P31m', 'hermann_mauguin_u': 'P31m', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,z', '-x,-x+y,z', 'x-y,-y,z'], 'number': 157, 'point_group': '3m', 'schoenflies': 'C3v^2', 'short_h_m': 'P31m', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,z', '-x,-x+y,z', 'x-y,-y,z'], 'universal_h_m': 'P31m'}, {'hall': ' P 3 -2"c', 'hermann_mauguin': 'P3c1', 'hermann_mauguin_u': 'P3c1', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z+1/2', 'x,x-y,z+1/2', '-x+y,y,z+1/2'], 'number': 158, 'point_group': '3m', 'schoenflies': 'C3v^3', 'short_h_m': 'P3c1', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z+1/2', 'x,x-y,z+1/2', '-x+y,y,z+1/2'], 'universal_h_m': 'P3c1'}, {'hall': ' P 3 -2c', 'hermann_mauguin': 'P31c', 'hermann_mauguin_u': 'P31c', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,z+1/2', '-x,-x+y,z+1/2', 'x-y,-y,z+1/2'], 'number': 159, 'point_group': '3m', 'schoenflies': 'C3v^4', 'short_h_m': 'P31c', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,z+1/2', '-x,-x+y,z+1/2', 'x-y,-y,z+1/2'], 'universal_h_m': 'P31c'}, {'hall': ' R 3 -2"', 'hermann_mauguin': 'R3m', 'hermann_mauguin_u': 'R3m', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'number': 160, 'point_group': '3m', 'schoenflies': 'C3v^5', 'short_h_m': 'R3m', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', '-y+2/3,-x+1/3,z+1/3', 'x+2/3,x-y+1/3,z+1/3', '-x+y+2/3,y+1/3,z+1/3', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', '-y+1/3,-x+2/3,z+2/3', 'x+1/3,x-y+2/3,z+2/3', '-x+y+1/3,y+2/3,z+2/3'], 'universal_h_m': 'R3m:H'}, {'hall': ' P 3* -2', 'hermann_mauguin': 'R3m', 'hermann_mauguin_u': 'R3m', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', 'y,x,z', 'z,y,x', 'x,z,y'], 'number': 160, 'point_group': '3m', 'schoenflies': 'C3v^5', 'short_h_m': 'R3m', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', 'y,x,z', 'z,y,x', 'x,z,y'], 'universal_h_m': 'R3m:R'}, {'hall': ' R 3 -2"c', 'hermann_mauguin': 'R3c', 'hermann_mauguin_u': 'R3c', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z+1/2', 'x,x-y,z+1/2', '-x+y,y,z+1/2'], 'number': 161, 'point_group': '3m', 'schoenflies': 'C3v^6', 'short_h_m': 'R3c', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z+1/2', 'x,x-y,z+1/2', '-x+y,y,z+1/2', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', '-y+2/3,-x+1/3,z+5/6', 'x+2/3,x-y+1/3,z+5/6', '-x+y+2/3,y+1/3,z+5/6', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', '-y+1/3,-x+2/3,z+7/6', 'x+1/3,x-y+2/3,z+7/6', '-x+y+1/3,y+2/3,z+7/6'], 'universal_h_m': 'R3c:H'}, {'hall': ' P 3* -2n', 'hermann_mauguin': 'R3c', 'hermann_mauguin_u': 'R3c', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', 'y+1/2,x+1/2,z+1/2', 'z+1/2,y+1/2,x+1/2', 'x+1/2,z+1/2,y+1/2'], 'number': 161, 'point_group': '3m', 'schoenflies': 'C3v^6', 'short_h_m': 'R3c', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', 'y+1/2,x+1/2,z+1/2', 'z+1/2,y+1/2,x+1/2', 'x+1/2,z+1/2,y+1/2'], 'universal_h_m': 'R3c:R'}, {'hall': '-P 3 2', 'hermann_mauguin': 'P-31m', 'hermann_mauguin_u': 'P-31m', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z', 'x,x-y,-z', '-x+y,y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', 'y,x,z', '-x,-x+y,z', 'x-y,-y,z'], 'number': 162, 'point_group': '-3m', 'schoenflies': 'D3d^1', 'short_h_m': 'P-3m', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z', 'x,x-y,-z', '-x+y,y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', 'y,x,z', '-x,-x+y,z', 'x-y,-y,z'], 'universal_h_m': 'P-31m'}, {'hall': '-P 3 2c', 'hermann_mauguin': 'P-31c', 'hermann_mauguin_u': 'P-31c', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z+1/2', 'x,x-y,-z+1/2', '-x+y,y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', 'y,x,z-1/2', '-x,-x+y,z-1/2', 'x-y,-y,z-1/2'], 'number': 163, 'point_group': '-3m', 'schoenflies': 'D3d^2', 'short_h_m': 'P-3c', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z+1/2', 'x,x-y,-z+1/2', '-x+y,y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', 'y,x,z-1/2', '-x,-x+y,z-1/2', 'x-y,-y,z-1/2'], 'universal_h_m': 'P-31c'}, {'hall': '-P 3 2"', 'hermann_mauguin': 'P-3m1', 'hermann_mauguin_u': 'P-3m1', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'number': 164, 'point_group': '-3m', 'schoenflies': 'D3d^3', 'short_h_m': 'P-3m', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'universal_h_m': 'P-3m1'}, {'hall': '-P 3 2"c', 'hermann_mauguin': 'P-3c1', 'hermann_mauguin_u': 'P-3c1', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z+1/2', '-x,-x+y,-z+1/2', 'x-y,-y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z-1/2', 'x,x-y,z-1/2', '-x+y,y,z-1/2'], 'number': 165, 'point_group': '-3m', 'schoenflies': 'D3d^4', 'short_h_m': 'P-3c', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z+1/2', '-x,-x+y,-z+1/2', 'x-y,-y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z-1/2', 'x,x-y,z-1/2', '-x+y,y,z-1/2'], 'universal_h_m': 'P-3c1'}, {'hall': '-R 3 2"', 'hermann_mauguin': 'R-3m', 'hermann_mauguin_u': 'R-3m', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'number': 166, 'point_group': '-3m', 'schoenflies': 'D3d^5', 'short_h_m': 'R-3m', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', 'y+2/3,x+1/3,-z+1/3', '-x+2/3,-x+y+1/3,-z+1/3', 'x-y+2/3,-y+1/3,-z+1/3', '-x+2/3,-y+1/3,-z+1/3', 'y+2/3,-x+y+1/3,-z+1/3', 'x-y+2/3,x+1/3,-z+1/3', '-y+2/3,-x+1/3,z+1/3', 'x+2/3,x-y+1/3,z+1/3', '-x+y+2/3,y+1/3,z+1/3', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', 'y+1/3,x+2/3,-z+2/3', '-x+1/3,-x+y+2/3,-z+2/3', 'x-y+1/3,-y+2/3,-z+2/3', '-x+1/3,-y+2/3,-z+2/3', 'y+1/3,-x+y+2/3,-z+2/3', 'x-y+1/3,x+2/3,-z+2/3', '-y+1/3,-x+2/3,z+2/3', 'x+1/3,x-y+2/3,z+2/3', '-x+y+1/3,y+2/3,z+2/3'], 'universal_h_m': 'R-3m:H'}, {'hall': '-P 3* 2', 'hermann_mauguin': 'R-3m', 'hermann_mauguin_u': 'R-3m', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', '-y,-x,-z', '-z,-y,-x', '-x,-z,-y', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x', 'y,x,z', 'z,y,x', 'x,z,y'], 'number': 166, 'point_group': '-3m', 'schoenflies': 'D3d^5', 'short_h_m': 'R-3m', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', '-y,-x,-z', '-z,-y,-x', '-x,-z,-y', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x', 'y,x,z', 'z,y,x', 'x,z,y'], 'universal_h_m': 'R-3m:R'}, {'hall': '-R 3 2"c', 'hermann_mauguin': 'R-3c', 'hermann_mauguin_u': 'R-3c', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z+1/2', '-x,-x+y,-z+1/2', 'x-y,-y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z-1/2', 'x,x-y,z-1/2', '-x+y,y,z-1/2'], 'number': 167, 'point_group': '-3m', 'schoenflies': 'D3d^6', 'short_h_m': 'R-3c', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z+1/2', '-x,-x+y,-z+1/2', 'x-y,-y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z-1/2', 'x,x-y,z-1/2', '-x+y,y,z-1/2', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', 'y+2/3,x+1/3,-z+5/6', '-x+2/3,-x+y+1/3,-z+5/6', 'x-y+2/3,-y+1/3,-z+5/6', '-x+2/3,-y+1/3,-z+1/3', 'y+2/3,-x+y+1/3,-z+1/3', 'x-y+2/3,x+1/3,-z+1/3', '-y+2/3,-x+1/3,z-1/6', 'x+2/3,x-y+1/3,z-1/6', '-x+y+2/3,y+1/3,z-1/6', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', 'y+1/3,x+2/3,-z+7/6', '-x+1/3,-x+y+2/3,-z+7/6', 'x-y+1/3,-y+2/3,-z+7/6', '-x+1/3,-y+2/3,-z+2/3', 'y+1/3,-x+y+2/3,-z+2/3', 'x-y+1/3,x+2/3,-z+2/3', '-y+1/3,-x+2/3,z+1/6', 'x+1/3,x-y+2/3,z+1/6', '-x+y+1/3,y+2/3,z+1/6'], 'universal_h_m': 'R-3c:H'}, {'hall': '-P 3* 2n', 'hermann_mauguin': 'R-3c', 'hermann_mauguin_u': 'R-3c', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', '-y+1/2,-x+1/2,-z+1/2', '-z+1/2,-y+1/2,-x+1/2', '-x+1/2,-z+1/2,-y+1/2', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x', 'y-1/2,x-1/2,z-1/2', 'z-1/2,y-1/2,x-1/2', 'x-1/2,z-1/2,y-1/2'], 'number': 167, 'point_group': '-3m', 'schoenflies': 'D3d^6', 'short_h_m': 'R-3c', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', '-y+1/2,-x+1/2,-z+1/2', '-z+1/2,-y+1/2,-x+1/2', '-x+1/2,-z+1/2,-y+1/2', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x', 'y-1/2,x-1/2,z-1/2', 'z-1/2,y-1/2,x-1/2', 'x-1/2,z-1/2,y-1/2'], 'universal_h_m': 'R-3c:R'}, {'hall': ' P 6', 'hermann_mauguin': 'P6', 'hermann_mauguin_u': 'P6', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z'], 'number': 168, 'point_group': '6', 'schoenflies': 'C6^1', 'short_h_m': 'P6', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z'], 'universal_h_m': 'P6'}, {'hall': ' P 61', 'hermann_mauguin': 'P61', 'hermann_mauguin_u': 'P6_1', 'ncsym': ['x,y,z', 'x-y,x,z+1/6', '-y,x-y,z+1/3', '-x,-y,z+1/2', '-x+y,-x,z+2/3', 'y,-x+y,z+5/6'], 'number': 169, 'point_group': '6', 'schoenflies': 'C6^2', 'short_h_m': 'P6_1', 'symops': ['x,y,z', 'x-y,x,z+1/6', '-y,x-y,z+1/3', '-x,-y,z+1/2', '-x+y,-x,z+2/3', 'y,-x+y,z+5/6'], 'universal_h_m': 'P61'}, {'hall': ' P 65', 'hermann_mauguin': 'P65', 'hermann_mauguin_u': 'P6_5', 'ncsym': ['x,y,z', 'x-y,x,z+5/6', '-y,x-y,z+2/3', '-x,-y,z+1/2', '-x+y,-x,z+1/3', 'y,-x+y,z+1/6'], 'number': 170, 'point_group': '6', 'schoenflies': 'C6^3', 'short_h_m': 'P6_5', 'symops': ['x,y,z', 'x-y,x,z+5/6', '-y,x-y,z+2/3', '-x,-y,z+1/2', '-x+y,-x,z+1/3', 'y,-x+y,z+1/6'], 'universal_h_m': 'P65'}, {'hall': ' P 62', 'hermann_mauguin': 'P62', 'hermann_mauguin_u': 'P6_2', 'ncsym': ['x,y,z', 'x-y,x,z+1/3', '-y,x-y,z+2/3', '-x,-y,z', '-x+y,-x,z+1/3', 'y,-x+y,z+2/3'], 'number': 171, 'point_group': '6', 'schoenflies': 'C6^4', 'short_h_m': 'P6_2', 'symops': ['x,y,z', 'x-y,x,z+1/3', '-y,x-y,z+2/3', '-x,-y,z', '-x+y,-x,z+1/3', 'y,-x+y,z+2/3'], 'universal_h_m': 'P62'}, {'hall': ' P 64', 'hermann_mauguin': 'P64', 'hermann_mauguin_u': 'P6_4', 'ncsym': ['x,y,z', 'x-y,x,z+2/3', '-y,x-y,z+1/3', '-x,-y,z', '-x+y,-x,z+2/3', 'y,-x+y,z+1/3'], 'number': 172, 'point_group': '6', 'schoenflies': 'C6^5', 'short_h_m': 'P6_4', 'symops': ['x,y,z', 'x-y,x,z+2/3', '-y,x-y,z+1/3', '-x,-y,z', '-x+y,-x,z+2/3', 'y,-x+y,z+1/3'], 'universal_h_m': 'P64'}, {'hall': ' P 6c', 'hermann_mauguin': 'P63', 'hermann_mauguin_u': 'P6_3', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2'], 'number': 173, 'point_group': '6', 'schoenflies': 'C6^6', 'short_h_m': 'P6_3', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2'], 'universal_h_m': 'P63'}, {'hall': ' P -6', 'hermann_mauguin': 'P-6', 'hermann_mauguin_u': 'P-6', 'ncsym': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z'], 'number': 174, 'point_group': '-6', 'schoenflies': 'C3h^1', 'short_h_m': 'P-6', 'symops': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z'], 'universal_h_m': 'P-6'}, {'hall': '-P 6', 'hermann_mauguin': 'P6/m', 'hermann_mauguin_u': 'P6/m', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z'], 'number': 175, 'point_group': '6/m', 'schoenflies': 'C6h^1', 'short_h_m': 'P6/m', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z'], 'universal_h_m': 'P6/m'}, {'hall': '-P 6c', 'hermann_mauguin': 'P63/m', 'hermann_mauguin_u': 'P6_3/m', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2'], 'number': 176, 'point_group': '6/m', 'schoenflies': 'C6h^2', 'short_h_m': 'P6_3/m', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2'], 'universal_h_m': 'P63/m'}, {'hall': ' P 6 2', 'hermann_mauguin': 'P622', 'hermann_mauguin_u': 'P622', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z'], 'number': 177, 'point_group': '622', 'schoenflies': 'D6^1', 'short_h_m': 'P622', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z'], 'universal_h_m': 'P622'}, {'hall': ' P 61 2 (0 0 5)', 'hermann_mauguin': 'P6122', 'hermann_mauguin_u': 'P6_122', 'ncsym': ['x,y,z', 'x-y,x,z+1/6', '-y,x-y,z+1/3', '-x,-y,z+1/2', '-x+y,-x,z+2/3', 'y,-x+y,z+5/6', '-y,-x,-z+5/6', 'x-y,-y,-z', 'x,x-y,-z+1/6', 'y,x,-z+1/3', '-x+y,y,-z+1/2', '-x,-x+y,-z+2/3'], 'number': 178, 'point_group': '622', 'schoenflies': 'D6^2', 'short_h_m': 'P6_122', 'symops': ['x,y,z', 'x-y,x,z+1/6', '-y,x-y,z+1/3', '-x,-y,z+1/2', '-x+y,-x,z+2/3', 'y,-x+y,z+5/6', '-y,-x,-z+5/6', 'x-y,-y,-z', 'x,x-y,-z+1/6', 'y,x,-z+1/3', '-x+y,y,-z+1/2', '-x,-x+y,-z+2/3'], 'universal_h_m': 'P6122'}, {'hall': ' P 65 2 (0 0 1)', 'hermann_mauguin': 'P6522', 'hermann_mauguin_u': 'P6_522', 'ncsym': ['x,y,z', 'x-y,x,z+5/6', '-y,x-y,z+2/3', '-x,-y,z+1/2', '-x+y,-x,z+1/3', 'y,-x+y,z+1/6', '-y,-x,-z+1/6', 'x-y,-y,-z', 'x,x-y,-z+5/6', 'y,x,-z+2/3', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/3'], 'number': 179, 'point_group': '622', 'schoenflies': 'D6^3', 'short_h_m': 'P6_522', 'symops': ['x,y,z', 'x-y,x,z+5/6', '-y,x-y,z+2/3', '-x,-y,z+1/2', '-x+y,-x,z+1/3', 'y,-x+y,z+1/6', '-y,-x,-z+1/6', 'x-y,-y,-z', 'x,x-y,-z+5/6', 'y,x,-z+2/3', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/3'], 'universal_h_m': 'P6522'}, {'hall': ' P 62 2 (0 0 4)', 'hermann_mauguin': 'P6222', 'hermann_mauguin_u': 'P6_222', 'ncsym': ['x,y,z', 'x-y,x,z+1/3', '-y,x-y,z+2/3', '-x,-y,z', '-x+y,-x,z+1/3', 'y,-x+y,z+2/3', '-y,-x,-z+2/3', 'x-y,-y,-z', 'x,x-y,-z+1/3', 'y,x,-z+2/3', '-x+y,y,-z', '-x,-x+y,-z+1/3'], 'number': 180, 'point_group': '622', 'schoenflies': 'D6^4', 'short_h_m': 'P6_222', 'symops': ['x,y,z', 'x-y,x,z+1/3', '-y,x-y,z+2/3', '-x,-y,z', '-x+y,-x,z+1/3', 'y,-x+y,z+2/3', '-y,-x,-z+2/3', 'x-y,-y,-z', 'x,x-y,-z+1/3', 'y,x,-z+2/3', '-x+y,y,-z', '-x,-x+y,-z+1/3'], 'universal_h_m': 'P6222'}, {'hall': ' P 64 2 (0 0 2)', 'hermann_mauguin': 'P6422', 'hermann_mauguin_u': 'P6_422', 'ncsym': ['x,y,z', 'x-y,x,z+2/3', '-y,x-y,z+1/3', '-x,-y,z', '-x+y,-x,z+2/3', 'y,-x+y,z+1/3', '-y,-x,-z+1/3', 'x-y,-y,-z', 'x,x-y,-z+2/3', 'y,x,-z+1/3', '-x+y,y,-z', '-x,-x+y,-z+2/3'], 'number': 181, 'point_group': '622', 'schoenflies': 'D6^5', 'short_h_m': 'P6_422', 'symops': ['x,y,z', 'x-y,x,z+2/3', '-y,x-y,z+1/3', '-x,-y,z', '-x+y,-x,z+2/3', 'y,-x+y,z+1/3', '-y,-x,-z+1/3', 'x-y,-y,-z', 'x,x-y,-z+2/3', 'y,x,-z+1/3', '-x+y,y,-z', '-x,-x+y,-z+2/3'], 'universal_h_m': 'P6422'}, {'hall': ' P 6c 2c', 'hermann_mauguin': 'P6322', 'hermann_mauguin_u': 'P6_322', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z'], 'number': 182, 'point_group': '622', 'schoenflies': 'D6^6', 'short_h_m': 'P6_322', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z'], 'universal_h_m': 'P6322'}, {'hall': ' P 6 -2', 'hermann_mauguin': 'P6mm', 'hermann_mauguin_u': 'P6mm', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'number': 183, 'point_group': '6mm', 'schoenflies': 'C6v^1', 'short_h_m': 'P6mm', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'universal_h_m': 'P6mm'}, {'hall': ' P 6 -2c', 'hermann_mauguin': 'P6cc', 'hermann_mauguin_u': 'P6cc', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', 'y,x,z+1/2', '-x+y,y,z+1/2', '-x,-x+y,z+1/2', '-y,-x,z+1/2', 'x-y,-y,z+1/2', 'x,x-y,z+1/2'], 'number': 184, 'point_group': '6mm', 'schoenflies': 'C6v^2', 'short_h_m': 'P6cc', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', 'y,x,z+1/2', '-x+y,y,z+1/2', '-x,-x+y,z+1/2', '-y,-x,z+1/2', 'x-y,-y,z+1/2', 'x,x-y,z+1/2'], 'universal_h_m': 'P6cc'}, {'hall': ' P 6c -2', 'hermann_mauguin': 'P63cm', 'hermann_mauguin_u': 'P6_3cm', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', 'y,x,z', '-x+y,y,z+1/2', '-x,-x+y,z', '-y,-x,z+1/2', 'x-y,-y,z', 'x,x-y,z+1/2'], 'number': 185, 'point_group': '6mm', 'schoenflies': 'C6v^3', 'short_h_m': 'P6_3cm', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', 'y,x,z', '-x+y,y,z+1/2', '-x,-x+y,z', '-y,-x,z+1/2', 'x-y,-y,z', 'x,x-y,z+1/2'], 'universal_h_m': 'P63cm'}, {'hall': ' P 6c -2c', 'hermann_mauguin': 'P63mc', 'hermann_mauguin_u': 'P6_3mc', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', 'y,x,z+1/2', '-x+y,y,z', '-x,-x+y,z+1/2', '-y,-x,z', 'x-y,-y,z+1/2', 'x,x-y,z'], 'number': 186, 'point_group': '6mm', 'schoenflies': 'C6v^4', 'short_h_m': 'P6_3mc', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', 'y,x,z+1/2', '-x+y,y,z', '-x,-x+y,z+1/2', '-y,-x,z', 'x-y,-y,z+1/2', 'x,x-y,z'], 'universal_h_m': 'P63mc'}, {'hall': ' P -6 2', 'hermann_mauguin': 'P-6m2', 'hermann_mauguin_u': 'P-6m2', 'ncsym': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z', '-y,-x,-z', '-x+y,y,z', 'x,x-y,-z', '-y,-x,z', '-x+y,y,-z', 'x,x-y,z'], 'number': 187, 'point_group': '-6m2', 'schoenflies': 'D3h^1', 'short_h_m': 'P-6m2', 'symops': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z', '-y,-x,-z', '-x+y,y,z', 'x,x-y,-z', '-y,-x,z', '-x+y,y,-z', 'x,x-y,z'], 'universal_h_m': 'P-6m2'}, {'hall': ' P -6c 2', 'hermann_mauguin': 'P-6c2', 'hermann_mauguin_u': 'P-6c2', 'ncsym': ['x,y,z', '-x+y,-x,-z+1/2', '-y,x-y,z', 'x,y,-z+1/2', '-x+y,-x,z', '-y,x-y,-z+1/2', '-y,-x,-z', '-x+y,y,z+1/2', 'x,x-y,-z', '-y,-x,z+1/2', '-x+y,y,-z', 'x,x-y,z+1/2'], 'number': 188, 'point_group': '-6m2', 'schoenflies': 'D3h^2', 'short_h_m': 'P-6c2', 'symops': ['x,y,z', '-x+y,-x,-z+1/2', '-y,x-y,z', 'x,y,-z+1/2', '-x+y,-x,z', '-y,x-y,-z+1/2', '-y,-x,-z', '-x+y,y,z+1/2', 'x,x-y,-z', '-y,-x,z+1/2', '-x+y,y,-z', 'x,x-y,z+1/2'], 'universal_h_m': 'P-6c2'}, {'hall': ' P -6 -2', 'hermann_mauguin': 'P-62m', 'hermann_mauguin_u': 'P-62m', 'ncsym': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z', 'y,x,z', 'x-y,-y,-z', '-x,-x+y,z', 'y,x,-z', 'x-y,-y,z', '-x,-x+y,-z'], 'number': 189, 'point_group': '-6m2', 'schoenflies': 'D3h^3', 'short_h_m': 'P-62m', 'symops': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z', 'y,x,z', 'x-y,-y,-z', '-x,-x+y,z', 'y,x,-z', 'x-y,-y,z', '-x,-x+y,-z'], 'universal_h_m': 'P-62m'}, {'hall': ' P -6c -2c', 'hermann_mauguin': 'P-62c', 'hermann_mauguin_u': 'P-62c', 'ncsym': ['x,y,z', '-x+y,-x,-z+1/2', '-y,x-y,z', 'x,y,-z+1/2', '-x+y,-x,z', '-y,x-y,-z+1/2', 'y,x,z+1/2', 'x-y,-y,-z', '-x,-x+y,z+1/2', 'y,x,-z', 'x-y,-y,z+1/2', '-x,-x+y,-z'], 'number': 190, 'point_group': '-6m2', 'schoenflies': 'D3h^4', 'short_h_m': 'P-62c', 'symops': ['x,y,z', '-x+y,-x,-z+1/2', '-y,x-y,z', 'x,y,-z+1/2', '-x+y,-x,z', '-y,x-y,-z+1/2', 'y,x,z+1/2', 'x-y,-y,-z', '-x,-x+y,z+1/2', 'y,x,-z', 'x-y,-y,z+1/2', '-x,-x+y,-z'], 'universal_h_m': 'P-62c'}, {'hall': '-P 6 2', 'hermann_mauguin': 'P6/mmm', 'hermann_mauguin_u': 'P6/mmm', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'number': 191, 'point_group': '6/mmm', 'schoenflies': 'D6h^1', 'short_h_m': 'P6/mmm', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'universal_h_m': 'P6/mmm'}, {'hall': '-P 6 2c', 'hermann_mauguin': 'P6/mcc', 'hermann_mauguin_u': 'P6/mcc', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z+1/2', 'x-y,-y,-z+1/2', 'x,x-y,-z+1/2', 'y,x,-z+1/2', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z-1/2', '-x+y,y,z-1/2', '-x,-x+y,z-1/2', '-y,-x,z-1/2', 'x-y,-y,z-1/2', 'x,x-y,z-1/2'], 'number': 192, 'point_group': '6/mmm', 'schoenflies': 'D6h^2', 'short_h_m': 'P6/mcc', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z+1/2', 'x-y,-y,-z+1/2', 'x,x-y,-z+1/2', 'y,x,-z+1/2', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z-1/2', '-x+y,y,z-1/2', '-x,-x+y,z-1/2', '-y,-x,z-1/2', 'x-y,-y,z-1/2', 'x,x-y,z-1/2'], 'universal_h_m': 'P6/mcc'}, {'hall': '-P 6c 2', 'hermann_mauguin': 'P63/mcm', 'hermann_mauguin_u': 'P6_3/mcm', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z', 'x-y,-y,-z+1/2', 'x,x-y,-z', 'y,x,-z+1/2', '-x+y,y,-z', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2', 'y,x,z', '-x+y,y,z-1/2', '-x,-x+y,z', '-y,-x,z-1/2', 'x-y,-y,z', 'x,x-y,z-1/2'], 'number': 193, 'point_group': '6/mmm', 'schoenflies': 'D6h^3', 'short_h_m': 'P6_3/mcm', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z', 'x-y,-y,-z+1/2', 'x,x-y,-z', 'y,x,-z+1/2', '-x+y,y,-z', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2', 'y,x,z', '-x+y,y,z-1/2', '-x,-x+y,z', '-y,-x,z-1/2', 'x-y,-y,z', 'x,x-y,z-1/2'], 'universal_h_m': 'P63/mcm'}, {'hall': '-P 6c 2c', 'hermann_mauguin': 'P63/mmc', 'hermann_mauguin_u': 'P6_3/mmc', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2', 'y,x,z-1/2', '-x+y,y,z', '-x,-x+y,z-1/2', '-y,-x,z', 'x-y,-y,z-1/2', 'x,x-y,z'], 'number': 194, 'point_group': '6/mmm', 'schoenflies': 'D6h^4', 'short_h_m': 'P6_3/mmc', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2', 'y,x,z-1/2', '-x+y,y,z', '-x,-x+y,z-1/2', '-y,-x,z', 'x-y,-y,z-1/2', 'x,x-y,z'], 'universal_h_m': 'P63/mmc'}, {'hall': ' P 2 2 3', 'hermann_mauguin': 'P23', 'hermann_mauguin_u': 'P23', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x'], 'number': 195, 'point_group': '23', 'schoenflies': 'T^1', 'short_h_m': 'P23', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x'], 'universal_h_m': 'P23'}, {'hall': ' F 2 2 3', 'hermann_mauguin': 'F23', 'hermann_mauguin_u': 'F23', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x'], 'number': 196, 'point_group': '23', 'schoenflies': 'T^2', 'short_h_m': 'F23', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'z,-x+1/2,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-y,-z+1/2,x+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', 'z+1/2,x,y+1/2', '-z+1/2,-x,y+1/2', 'z+1/2,-x,-y+1/2', '-z+1/2,x,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z,x+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', 'z+1/2,x+1/2,y', '-z+1/2,-x+1/2,y', 'z+1/2,-x+1/2,-y', '-z+1/2,x+1/2,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', '-y+1/2,z+1/2,-x', '-y+1/2,-z+1/2,x'], 'universal_h_m': 'F23'}, {'hall': ' I 2 2 3', 'hermann_mauguin': 'I23', 'hermann_mauguin_u': 'I23', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x'], 'number': 197, 'point_group': '23', 'schoenflies': 'T^3', 'short_h_m': 'I23', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', 'z+1/2,x+1/2,y+1/2', '-z+1/2,-x+1/2,y+1/2', 'z+1/2,-x+1/2,-y+1/2', '-z+1/2,x+1/2,-y+1/2', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,-x+1/2', '-y+1/2,-z+1/2,x+1/2'], 'universal_h_m': 'I23'}, {'hall': ' P 2ac 2ab 3', 'hermann_mauguin': 'P213', 'hermann_mauguin_u': 'P2_13', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', 'z,x,y', '-z+1/2,-x,y+1/2', 'z+1/2,-x+1/2,-y', '-z,x+1/2,-y+1/2', 'y,z,x', 'y+1/2,-z+1/2,-x', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2'], 'number': 198, 'point_group': '23', 'schoenflies': 'T^4', 'short_h_m': 'P2_13', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', 'z,x,y', '-z+1/2,-x,y+1/2', 'z+1/2,-x+1/2,-y', '-z,x+1/2,-y+1/2', 'y,z,x', 'y+1/2,-z+1/2,-x', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2'], 'universal_h_m': 'P213'}, {'hall': ' I 2b 2c 3', 'hermann_mauguin': 'I213', 'hermann_mauguin_u': 'I2_13', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x,y', '-z,-x+1/2,y', 'z,-x,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z,x', 'y,-z,-x+1/2', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2'], 'number': 199, 'point_group': '23', 'schoenflies': 'T^5', 'short_h_m': 'I2_13', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x,y', '-z,-x+1/2,y', 'z,-x,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z,x', 'y,-z,-x+1/2', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1,-z+1', 'z+1/2,x+1/2,y+1/2', '-z+1/2,-x+1,y+1/2', 'z+1/2,-x+1/2,-y+1', '-z+1/2,x+1,-y+1', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', '-y+1/2,z+1,-x+1', '-y+1,-z+1/2,x+1'], 'universal_h_m': 'I213'}, {'hall': '-P 2 2 3', 'hermann_mauguin': 'Pm-3', 'hermann_mauguin_u': 'Pm-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x'], 'number': 200, 'point_group': 'm-3', 'schoenflies': 'Th^1', 'short_h_m': 'Pm-3', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x'], 'universal_h_m': 'Pm-3'}, {'hall': ' P 2 2 3 -1n', 'hermann_mauguin': 'Pn-3', 'hermann_mauguin_u': 'Pn-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2'], 'number': 201, 'point_group': 'm-3', 'schoenflies': 'Th^2', 'short_h_m': 'Pn-3', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2'], 'universal_h_m': 'Pn-3:1'}, {'hall': '-P 2ab 2bc 3', 'hermann_mauguin': 'Pn-3', 'hermann_mauguin_u': 'Pn-3', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', 'z,x,y', '-z+1/2,-x+1/2,y', 'z,-x+1/2,-y+1/2', '-z+1/2,x,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z+1/2,x', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y,z-1/2', '-z,-x,-y', 'z-1/2,x-1/2,-y', '-z,x-1/2,y-1/2', 'z-1/2,-x,y-1/2', '-y,-z,-x', '-y,z-1/2,x-1/2', 'y-1/2,-z,x-1/2', 'y-1/2,z-1/2,-x'], 'number': 201, 'point_group': 'm-3', 'schoenflies': 'Th^2', 'short_h_m': 'Pn-3', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', 'z,x,y', '-z+1/2,-x+1/2,y', 'z,-x+1/2,-y+1/2', '-z+1/2,x,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z+1/2,x', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y,z-1/2', '-z,-x,-y', 'z-1/2,x-1/2,-y', '-z,x-1/2,y-1/2', 'z-1/2,-x,y-1/2', '-y,-z,-x', '-y,z-1/2,x-1/2', 'y-1/2,-z,x-1/2', 'y-1/2,z-1/2,-x'], 'universal_h_m': 'Pn-3:2'}, {'hall': '-F 2 2 3', 'hermann_mauguin': 'Fm-3', 'hermann_mauguin_u': 'Fm-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x'], 'number': 202, 'point_group': 'm-3', 'schoenflies': 'Th^3', 'short_h_m': 'Fm-3', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'z,-x+1/2,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-y,-z+1/2,x+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', '-z,-x+1/2,-y+1/2', 'z,x+1/2,-y+1/2', '-z,x+1/2,y+1/2', 'z,-x+1/2,y+1/2', '-y,-z+1/2,-x+1/2', '-y,z+1/2,x+1/2', 'y,-z+1/2,x+1/2', 'y,z+1/2,-x+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', 'z+1/2,x,y+1/2', '-z+1/2,-x,y+1/2', 'z+1/2,-x,-y+1/2', '-z+1/2,x,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z,x+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2', '-z+1/2,-x,-y+1/2', 'z+1/2,x,-y+1/2', '-z+1/2,x,y+1/2', 'z+1/2,-x,y+1/2', '-y+1/2,-z,-x+1/2', '-y+1/2,z,x+1/2', 'y+1/2,-z,x+1/2', 'y+1/2,z,-x+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', 'z+1/2,x+1/2,y', '-z+1/2,-x+1/2,y', 'z+1/2,-x+1/2,-y', '-z+1/2,x+1/2,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', '-y+1/2,z+1/2,-x', '-y+1/2,-z+1/2,x', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', '-z+1/2,-x+1/2,-y', 'z+1/2,x+1/2,-y', '-z+1/2,x+1/2,y', 'z+1/2,-x+1/2,y', '-y+1/2,-z+1/2,-x', '-y+1/2,z+1/2,x', 'y+1/2,-z+1/2,x', 'y+1/2,z+1/2,-x'], 'universal_h_m': 'Fm-3'}, {'hall': ' F 2 2 3 -1d', 'hermann_mauguin': 'Fd-3', 'hermann_mauguin_u': 'Fd-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x+1/4,-y+1/4,-z+1/4', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', 'x+1/4,-y+1/4,z+1/4', '-z+1/4,-x+1/4,-y+1/4', 'z+1/4,x+1/4,-y+1/4', '-z+1/4,x+1/4,y+1/4', 'z+1/4,-x+1/4,y+1/4', '-y+1/4,-z+1/4,-x+1/4', '-y+1/4,z+1/4,x+1/4', 'y+1/4,-z+1/4,x+1/4', 'y+1/4,z+1/4,-x+1/4'], 'number': 203, 'point_group': 'm-3', 'schoenflies': 'Th^4', 'short_h_m': 'Fd-3', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x+1/4,-y+1/4,-z+1/4', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', 'x+1/4,-y+1/4,z+1/4', '-z+1/4,-x+1/4,-y+1/4', 'z+1/4,x+1/4,-y+1/4', '-z+1/4,x+1/4,y+1/4', 'z+1/4,-x+1/4,y+1/4', '-y+1/4,-z+1/4,-x+1/4', '-y+1/4,z+1/4,x+1/4', 'y+1/4,-z+1/4,x+1/4', 'y+1/4,z+1/4,-x+1/4', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'z,-x+1/2,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-y,-z+1/2,x+1/2', '-x+1/4,-y+3/4,-z+3/4', 'x+1/4,y+3/4,-z+3/4', '-x+1/4,y+3/4,z+3/4', 'x+1/4,-y+3/4,z+3/4', '-z+1/4,-x+3/4,-y+3/4', 'z+1/4,x+3/4,-y+3/4', '-z+1/4,x+3/4,y+3/4', 'z+1/4,-x+3/4,y+3/4', '-y+1/4,-z+3/4,-x+3/4', '-y+1/4,z+3/4,x+3/4', 'y+1/4,-z+3/4,x+3/4', 'y+1/4,z+3/4,-x+3/4', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', 'z+1/2,x,y+1/2', '-z+1/2,-x,y+1/2', 'z+1/2,-x,-y+1/2', '-z+1/2,x,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z,x+1/2', '-x+3/4,-y+1/4,-z+3/4', 'x+3/4,y+1/4,-z+3/4', '-x+3/4,y+1/4,z+3/4', 'x+3/4,-y+1/4,z+3/4', '-z+3/4,-x+1/4,-y+3/4', 'z+3/4,x+1/4,-y+3/4', '-z+3/4,x+1/4,y+3/4', 'z+3/4,-x+1/4,y+3/4', '-y+3/4,-z+1/4,-x+3/4', '-y+3/4,z+1/4,x+3/4', 'y+3/4,-z+1/4,x+3/4', 'y+3/4,z+1/4,-x+3/4', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', 'z+1/2,x+1/2,y', '-z+1/2,-x+1/2,y', 'z+1/2,-x+1/2,-y', '-z+1/2,x+1/2,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', '-y+1/2,z+1/2,-x', '-y+1/2,-z+1/2,x', '-x+3/4,-y+3/4,-z+1/4', 'x+3/4,y+3/4,-z+1/4', '-x+3/4,y+3/4,z+1/4', 'x+3/4,-y+3/4,z+1/4', '-z+3/4,-x+3/4,-y+1/4', 'z+3/4,x+3/4,-y+1/4', '-z+3/4,x+3/4,y+1/4', 'z+3/4,-x+3/4,y+1/4', '-y+3/4,-z+3/4,-x+1/4', '-y+3/4,z+3/4,x+1/4', 'y+3/4,-z+3/4,x+1/4', 'y+3/4,z+3/4,-x+1/4'], 'universal_h_m': 'Fd-3:1'}, {'hall': '-F 2uv 2vw 3', 'hermann_mauguin': 'Fd-3', 'hermann_mauguin_u': 'Fd-3', 'ncsym': ['x,y,z', '-x+1/4,-y+1/4,z', 'x,-y+1/4,-z+1/4', '-x+1/4,y,-z+1/4', 'z,x,y', '-z+1/4,-x+1/4,y', 'z,-x+1/4,-y+1/4', '-z+1/4,x,-y+1/4', 'y,z,x', 'y,-z+1/4,-x+1/4', '-y+1/4,z,-x+1/4', '-y+1/4,-z+1/4,x', '-x,-y,-z', 'x-1/4,y-1/4,-z', '-x,y-1/4,z-1/4', 'x-1/4,-y,z-1/4', '-z,-x,-y', 'z-1/4,x-1/4,-y', '-z,x-1/4,y-1/4', 'z-1/4,-x,y-1/4', '-y,-z,-x', '-y,z-1/4,x-1/4', 'y-1/4,-z,x-1/4', 'y-1/4,z-1/4,-x'], 'number': 203, 'point_group': 'm-3', 'schoenflies': 'Th^4', 'short_h_m': 'Fd-3', 'symops': ['x,y,z', '-x+1/4,-y+1/4,z', 'x,-y+1/4,-z+1/4', '-x+1/4,y,-z+1/4', 'z,x,y', '-z+1/4,-x+1/4,y', 'z,-x+1/4,-y+1/4', '-z+1/4,x,-y+1/4', 'y,z,x', 'y,-z+1/4,-x+1/4', '-y+1/4,z,-x+1/4', '-y+1/4,-z+1/4,x', '-x,-y,-z', 'x-1/4,y-1/4,-z', '-x,y-1/4,z-1/4', 'x-1/4,-y,z-1/4', '-z,-x,-y', 'z-1/4,x-1/4,-y', '-z,x-1/4,y-1/4', 'z-1/4,-x,y-1/4', '-y,-z,-x', '-y,z-1/4,x-1/4', 'y-1/4,-z,x-1/4', 'y-1/4,z-1/4,-x', 'x,y+1/2,z+1/2', '-x+1/4,-y+3/4,z+1/2', 'x,-y+3/4,-z+3/4', '-x+1/4,y+1/2,-z+3/4', 'z,x+1/2,y+1/2', '-z+1/4,-x+3/4,y+1/2', 'z,-x+3/4,-y+3/4', '-z+1/4,x+1/2,-y+3/4', 'y,z+1/2,x+1/2', 'y,-z+3/4,-x+3/4', '-y+1/4,z+1/2,-x+3/4', '-y+1/4,-z+3/4,x+1/2', '-x,-y+1/2,-z+1/2', 'x-1/4,y+1/4,-z+1/2', '-x,y+1/4,z+1/4', 'x-1/4,-y+1/2,z+1/4', '-z,-x+1/2,-y+1/2', 'z-1/4,x+1/4,-y+1/2', '-z,x+1/4,y+1/4', 'z-1/4,-x+1/2,y+1/4', '-y,-z+1/2,-x+1/2', '-y,z+1/4,x+1/4', 'y-1/4,-z+1/2,x+1/4', 'y-1/4,z+1/4,-x+1/2', 'x+1/2,y,z+1/2', '-x+3/4,-y+1/4,z+1/2', 'x+1/2,-y+1/4,-z+3/4', '-x+3/4,y,-z+3/4', 'z+1/2,x,y+1/2', '-z+3/4,-x+1/4,y+1/2', 'z+1/2,-x+1/4,-y+3/4', '-z+3/4,x,-y+3/4', 'y+1/2,z,x+1/2', 'y+1/2,-z+1/4,-x+3/4', '-y+3/4,z,-x+3/4', '-y+3/4,-z+1/4,x+1/2', '-x+1/2,-y,-z+1/2', 'x+1/4,y-1/4,-z+1/2', '-x+1/2,y-1/4,z+1/4', 'x+1/4,-y,z+1/4', '-z+1/2,-x,-y+1/2', 'z+1/4,x-1/4,-y+1/2', '-z+1/2,x-1/4,y+1/4', 'z+1/4,-x,y+1/4', '-y+1/2,-z,-x+1/2', '-y+1/2,z-1/4,x+1/4', 'y+1/4,-z,x+1/4', 'y+1/4,z-1/4,-x+1/2', 'x+1/2,y+1/2,z', '-x+3/4,-y+3/4,z', 'x+1/2,-y+3/4,-z+1/4', '-x+3/4,y+1/2,-z+1/4', 'z+1/2,x+1/2,y', '-z+3/4,-x+3/4,y', 'z+1/2,-x+3/4,-y+1/4', '-z+3/4,x+1/2,-y+1/4', 'y+1/2,z+1/2,x', 'y+1/2,-z+3/4,-x+1/4', '-y+3/4,z+1/2,-x+1/4', '-y+3/4,-z+3/4,x', '-x+1/2,-y+1/2,-z', 'x+1/4,y+1/4,-z', '-x+1/2,y+1/4,z-1/4', 'x+1/4,-y+1/2,z-1/4', '-z+1/2,-x+1/2,-y', 'z+1/4,x+1/4,-y', '-z+1/2,x+1/4,y-1/4', 'z+1/4,-x+1/2,y-1/4', '-y+1/2,-z+1/2,-x', '-y+1/2,z+1/4,x-1/4', 'y+1/4,-z+1/2,x-1/4', 'y+1/4,z+1/4,-x'], 'universal_h_m': 'Fd-3:2'}, {'hall': '-I 2 2 3', 'hermann_mauguin': 'Im-3', 'hermann_mauguin_u': 'Im-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x'], 'number': 204, 'point_group': 'm-3', 'schoenflies': 'Th^5', 'short_h_m': 'Im-3', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', 'z+1/2,x+1/2,y+1/2', '-z+1/2,-x+1/2,y+1/2', 'z+1/2,-x+1/2,-y+1/2', '-z+1/2,x+1/2,-y+1/2', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,-x+1/2', '-y+1/2,-z+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2'], 'universal_h_m': 'Im-3'}, {'hall': '-P 2ac 2ab 3', 'hermann_mauguin': 'Pa-3', 'hermann_mauguin_u': 'Pa-3', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', 'z,x,y', '-z+1/2,-x,y+1/2', 'z+1/2,-x+1/2,-y', '-z,x+1/2,-y+1/2', 'y,z,x', 'y+1/2,-z+1/2,-x', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y-1/2,z-1/2', '-z,-x,-y', 'z-1/2,x,-y-1/2', '-z-1/2,x-1/2,y', 'z,-x-1/2,y-1/2', '-y,-z,-x', '-y-1/2,z-1/2,x', 'y,-z-1/2,x-1/2', 'y-1/2,z,-x-1/2'], 'number': 205, 'point_group': 'm-3', 'schoenflies': 'Th^6', 'short_h_m': 'Pa-3', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', 'z,x,y', '-z+1/2,-x,y+1/2', 'z+1/2,-x+1/2,-y', '-z,x+1/2,-y+1/2', 'y,z,x', 'y+1/2,-z+1/2,-x', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y-1/2,z-1/2', '-z,-x,-y', 'z-1/2,x,-y-1/2', '-z-1/2,x-1/2,y', 'z,-x-1/2,y-1/2', '-y,-z,-x', '-y-1/2,z-1/2,x', 'y,-z-1/2,x-1/2', 'y-1/2,z,-x-1/2'], 'universal_h_m': 'Pa-3'}, {'hall': '-I 2b 2c 3', 'hermann_mauguin': 'Ia-3', 'hermann_mauguin_u': 'Ia-3', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x,y', '-z,-x+1/2,y', 'z,-x,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z,x', 'y,-z,-x+1/2', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2', '-z,-x,-y', 'z,x-1/2,-y', '-z,x,y-1/2', 'z,-x-1/2,y-1/2', '-y,-z,-x', '-y,z,x-1/2', 'y,-z-1/2,x-1/2', 'y-1/2,z,-x-1/2'], 'number': 206, 'point_group': 'm-3', 'schoenflies': 'Th^7', 'short_h_m': 'Ia-3', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x,y', '-z,-x+1/2,y', 'z,-x,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z,x', 'y,-z,-x+1/2', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2', '-z,-x,-y', 'z,x-1/2,-y', '-z,x,y-1/2', 'z,-x-1/2,y-1/2', '-y,-z,-x', '-y,z,x-1/2', 'y,-z-1/2,x-1/2', 'y-1/2,z,-x-1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1,-z+1', 'z+1/2,x+1/2,y+1/2', '-z+1/2,-x+1,y+1/2', 'z+1/2,-x+1/2,-y+1', '-z+1/2,x+1,-y+1', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', '-y+1/2,z+1,-x+1', '-y+1,-z+1/2,x+1', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y,z', '-z+1/2,-x+1/2,-y+1/2', 'z+1/2,x,-y+1/2', '-z+1/2,x+1/2,y', 'z+1/2,-x,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x', 'y+1/2,-z,x', 'y,z+1/2,-x'], 'universal_h_m': 'Ia-3'}, {'hall': ' P 4 2 3', 'hermann_mauguin': 'P432', 'hermann_mauguin_u': 'P432', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x'], 'number': 207, 'point_group': '432', 'schoenflies': 'O^1', 'short_h_m': 'P432', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x'], 'universal_h_m': 'P432'}, {'hall': ' P 4n 2 3', 'hermann_mauguin': 'P4232', 'hermann_mauguin_u': 'P4_232', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2'], 'number': 208, 'point_group': '432', 'schoenflies': 'O^2', 'short_h_m': 'P4_232', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2'], 'universal_h_m': 'P4232'}, {'hall': ' F 4 2 3', 'hermann_mauguin': 'F432', 'hermann_mauguin_u': 'F432', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x'], 'number': 209, 'point_group': '432', 'schoenflies': 'O^3', 'short_h_m': 'F432', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-x,z+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'x,-z+1/2,y+1/2', 'z,-x+1/2,-y+1/2', 'x,z+1/2,-y+1/2', '-z,x+1/2,-y+1/2', '-x,-z+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', 'z,y+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-z,-y+1/2,-x+1/2', '-y,-z+1/2,x+1/2', 'z,-y+1/2,x+1/2', '-z,y+1/2,x+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x,-z+1/2', 'z+1/2,x,y+1/2', '-x+1/2,z,y+1/2', '-z+1/2,-x,y+1/2', 'x+1/2,-z,y+1/2', 'z+1/2,-x,-y+1/2', 'x+1/2,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', 'z+1/2,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y,-x+1/2', '-y+1/2,-z,x+1/2', 'z+1/2,-y,x+1/2', '-z+1/2,y,x+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z', 'z+1/2,x+1/2,y', '-x+1/2,z+1/2,y', '-z+1/2,-x+1/2,y', 'x+1/2,-z+1/2,y', 'z+1/2,-x+1/2,-y', 'x+1/2,z+1/2,-y', '-z+1/2,x+1/2,-y', '-x+1/2,-z+1/2,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', 'z+1/2,y+1/2,-x', '-y+1/2,z+1/2,-x', '-z+1/2,-y+1/2,-x', '-y+1/2,-z+1/2,x', 'z+1/2,-y+1/2,x', '-z+1/2,y+1/2,x'], 'universal_h_m': 'F432'}, {'hall': ' F 4d 2 3', 'hermann_mauguin': 'F4132', 'hermann_mauguin_u': 'F4_132', 'ncsym': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4'], 'number': 210, 'point_group': '432', 'schoenflies': 'O^4', 'short_h_m': 'F4_132', 'symops': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4', 'x,y+1/2,z+1/2', '-y+1/4,x+3/4,z+3/4', '-x,-y+1,z+1', 'y+3/4,-x+3/4,z+5/4', 'x,-y+1/2,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x,y+1,-z+1', '-y+3/4,-x+3/4,-z+5/4', 'z,x+1/2,y+1/2', '-x+1/4,z+3/4,y+3/4', '-z,-x+1,y+1', 'x+3/4,-z+3/4,y+5/4', 'z,-x+1/2,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z,x+1,-y+1', '-x+3/4,-z+3/4,-y+5/4', 'y,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', 'z+1/4,y+5/4,-x+5/4', '-y+1/2,z+1,-x+1/2', '-z+1/4,-y+3/4,-x+3/4', '-y,-z+1/2,x+1/2', 'z+1/4,-y+5/4,x+5/4', '-z+3/4,y+5/4,x+3/4', 'x+1/2,y,z+1/2', '-y+3/4,x+1/4,z+3/4', '-x+1/2,-y+1/2,z+1', 'y+5/4,-x+1/4,z+5/4', 'x+1/2,-y,-z+1/2', 'y+3/4,x+1/4,-z+3/4', '-x+1/2,y+1/2,-z+1', '-y+5/4,-x+1/4,-z+5/4', 'z+1/2,x,y+1/2', '-x+3/4,z+1/4,y+3/4', '-z+1/2,-x+1/2,y+1', 'x+5/4,-z+1/4,y+5/4', 'z+1/2,-x,-y+1/2', 'x+3/4,z+1/4,-y+3/4', '-z+1/2,x+1/2,-y+1', '-x+5/4,-z+1/4,-y+5/4', 'y+1/2,z,x+1/2', 'y+1,-z,-x+1', 'z+3/4,y+3/4,-x+5/4', '-y+1,z+1/2,-x+1/2', '-z+3/4,-y+1/4,-x+3/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+5/4', '-z+5/4,y+3/4,x+3/4', 'x+1/2,y+1/2,z', '-y+3/4,x+3/4,z+1/4', '-x+1/2,-y+1,z+1/2', 'y+5/4,-x+3/4,z+3/4', 'x+1/2,-y+1/2,-z', 'y+3/4,x+3/4,-z+1/4', '-x+1/2,y+1,-z+1/2', '-y+5/4,-x+3/4,-z+3/4', 'z+1/2,x+1/2,y', '-x+3/4,z+3/4,y+1/4', '-z+1/2,-x+1,y+1/2', 'x+5/4,-z+3/4,y+3/4', 'z+1/2,-x+1/2,-y', 'x+3/4,z+3/4,-y+1/4', '-z+1/2,x+1,-y+1/2', '-x+5/4,-z+3/4,-y+3/4', 'y+1/2,z+1/2,x', 'y+1,-z+1/2,-x+1/2', 'z+3/4,y+5/4,-x+3/4', '-y+1,z+1,-x', '-z+3/4,-y+3/4,-x+1/4', '-y+1/2,-z+1/2,x', 'z+3/4,-y+5/4,x+3/4', '-z+5/4,y+5/4,x+1/4'], 'universal_h_m': 'F4132'}, {'hall': ' I 4 2 3', 'hermann_mauguin': 'I432', 'hermann_mauguin_u': 'I432', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x'], 'number': 211, 'point_group': '432', 'schoenflies': 'O^5', 'short_h_m': 'I432', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z+1/2,x+1/2,y+1/2', '-x+1/2,z+1/2,y+1/2', '-z+1/2,-x+1/2,y+1/2', 'x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,-y+1/2', 'x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1/2', 'z+1/2,y+1/2,-x+1/2', '-y+1/2,z+1/2,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x+1/2', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2'], 'universal_h_m': 'I432'}, {'hall': ' P 4acd 2ab 3', 'hermann_mauguin': 'P4332', 'hermann_mauguin_u': 'P4_332', 'ncsym': ['x,y,z', '-y+3/4,x+1/4,z+3/4', '-x+1/2,-y,z+1/2', 'y+3/4,-x+3/4,z+1/4', 'x+1/2,-y+1/2,-z', 'y+1/4,x+3/4,-z+3/4', '-x,y+1/2,-z+1/2', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+3/4,z+1/4,y+3/4', '-z+1/2,-x,y+1/2', 'x+3/4,-z+3/4,y+1/4', 'z+1/2,-x+1/2,-y', 'x+1/4,z+3/4,-y+3/4', '-z,x+1/2,-y+1/2', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+1/4,y+3/4,-x+3/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4'], 'number': 212, 'point_group': '432', 'schoenflies': 'O^6', 'short_h_m': 'P4_332', 'symops': ['x,y,z', '-y+3/4,x+1/4,z+3/4', '-x+1/2,-y,z+1/2', 'y+3/4,-x+3/4,z+1/4', 'x+1/2,-y+1/2,-z', 'y+1/4,x+3/4,-z+3/4', '-x,y+1/2,-z+1/2', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+3/4,z+1/4,y+3/4', '-z+1/2,-x,y+1/2', 'x+3/4,-z+3/4,y+1/4', 'z+1/2,-x+1/2,-y', 'x+1/4,z+3/4,-y+3/4', '-z,x+1/2,-y+1/2', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+1/4,y+3/4,-x+3/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4'], 'universal_h_m': 'P4332'}, {'hall': ' P 4bd 2ab 3', 'hermann_mauguin': 'P4132', 'hermann_mauguin_u': 'P4_132', 'ncsym': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x+1/2,-y+1/2,-z', 'y+3/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+3/4,-z+3/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z+1/2,-x+1/2,-y', 'x+3/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+3/4,-y+3/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+3/4,-y+3/4,-x+3/4', '-y+1/2,-z,x+1/2', 'z+1/4,-y+1/4,x+3/4', '-z+1/4,y+3/4,x+1/4'], 'number': 213, 'point_group': '432', 'schoenflies': 'O^7', 'short_h_m': 'P4_132', 'symops': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x+1/2,-y+1/2,-z', 'y+3/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+3/4,-z+3/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z+1/2,-x+1/2,-y', 'x+3/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+3/4,-y+3/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+3/4,-y+3/4,-x+3/4', '-y+1/2,-z,x+1/2', 'z+1/4,-y+1/4,x+3/4', '-z+1/4,y+3/4,x+1/4'], 'universal_h_m': 'P4132'}, {'hall': ' I 4bd 2c 3', 'hermann_mauguin': 'I4132', 'hermann_mauguin_u': 'I4_132', 'ncsym': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z,-x,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z+1/2,x,-y', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4'], 'number': 214, 'point_group': '432', 'schoenflies': 'O^8', 'short_h_m': 'I4_132', 'symops': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z,-x,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z+1/2,x,-y', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4', 'x+1/2,y+1/2,z+1/2', '-y+3/4,x+5/4,z+3/4', '-x+1,-y+1/2,z+1', 'y+3/4,-x+3/4,z+5/4', 'x+1/2,-y+1/2,-z+1', 'y+3/4,x+5/4,-z+5/4', '-x+1,y+1/2,-z+1/2', '-y+3/4,-x+3/4,-z+3/4', 'z+1/2,x+1/2,y+1/2', '-x+3/4,z+5/4,y+3/4', '-z+1,-x+1/2,y+1', 'x+3/4,-z+3/4,y+5/4', 'z+1/2,-x+1/2,-y+1', 'x+3/4,z+5/4,-y+5/4', '-z+1,x+1/2,-y+1/2', '-x+3/4,-z+3/4,-y+3/4', 'y+1/2,z+1/2,x+1/2', 'y+1,-z+1,-x+1/2', 'z+5/4,y+3/4,-x+3/4', '-y+1/2,z+1,-x+1', '-z+3/4,-y+3/4,-x+3/4', '-y+1,-z+1/2,x+1', 'z+5/4,-y+5/4,x+3/4', '-z+5/4,y+3/4,x+5/4'], 'universal_h_m': 'I4132'}, {'hall': ' P -4 2 3', 'hermann_mauguin': 'P-43m', 'hermann_mauguin_u': 'P-43m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x'], 'number': 215, 'point_group': '-43m', 'schoenflies': 'Td^1', 'short_h_m': 'P-43m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x'], 'universal_h_m': 'P-43m'}, {'hall': ' F -4 2 3', 'hermann_mauguin': 'F-43m', 'hermann_mauguin_u': 'F-43m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x'], 'number': 216, 'point_group': '-43m', 'schoenflies': 'Td^2', 'short_h_m': 'F-43m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x', 'x,y+1/2,z+1/2', 'y,-x+1/2,-z+1/2', '-x,-y+1/2,z+1/2', '-y,x+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', '-y,-x+1/2,z+1/2', '-x,y+1/2,-z+1/2', 'y,x+1/2,z+1/2', 'z,x+1/2,y+1/2', 'x,-z+1/2,-y+1/2', '-z,-x+1/2,y+1/2', '-x,z+1/2,-y+1/2', 'z,-x+1/2,-y+1/2', '-x,-z+1/2,y+1/2', '-z,x+1/2,-y+1/2', 'x,z+1/2,y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', '-z,-y+1/2,x+1/2', '-y,z+1/2,-x+1/2', 'z,y+1/2,x+1/2', '-y,-z+1/2,x+1/2', '-z,y+1/2,-x+1/2', 'z,-y+1/2,-x+1/2', 'x+1/2,y,z+1/2', 'y+1/2,-x,-z+1/2', '-x+1/2,-y,z+1/2', '-y+1/2,x,-z+1/2', 'x+1/2,-y,-z+1/2', '-y+1/2,-x,z+1/2', '-x+1/2,y,-z+1/2', 'y+1/2,x,z+1/2', 'z+1/2,x,y+1/2', 'x+1/2,-z,-y+1/2', '-z+1/2,-x,y+1/2', '-x+1/2,z,-y+1/2', 'z+1/2,-x,-y+1/2', '-x+1/2,-z,y+1/2', '-z+1/2,x,-y+1/2', 'x+1/2,z,y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', '-z+1/2,-y,x+1/2', '-y+1/2,z,-x+1/2', 'z+1/2,y,x+1/2', '-y+1/2,-z,x+1/2', '-z+1/2,y,-x+1/2', 'z+1/2,-y,-x+1/2', 'x+1/2,y+1/2,z', 'y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,z', '-y+1/2,x+1/2,-z', 'x+1/2,-y+1/2,-z', '-y+1/2,-x+1/2,z', '-x+1/2,y+1/2,-z', 'y+1/2,x+1/2,z', 'z+1/2,x+1/2,y', 'x+1/2,-z+1/2,-y', '-z+1/2,-x+1/2,y', '-x+1/2,z+1/2,-y', 'z+1/2,-x+1/2,-y', '-x+1/2,-z+1/2,y', '-z+1/2,x+1/2,-y', 'x+1/2,z+1/2,y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', '-z+1/2,-y+1/2,x', '-y+1/2,z+1/2,-x', 'z+1/2,y+1/2,x', '-y+1/2,-z+1/2,x', '-z+1/2,y+1/2,-x', 'z+1/2,-y+1/2,-x'], 'universal_h_m': 'F-43m'}, {'hall': ' I -4 2 3', 'hermann_mauguin': 'I-43m', 'hermann_mauguin_u': 'I-43m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x'], 'number': 217, 'point_group': '-43m', 'schoenflies': 'Td^3', 'short_h_m': 'I-43m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', 'z+1/2,x+1/2,y+1/2', 'x+1/2,-z+1/2,-y+1/2', '-z+1/2,-x+1/2,y+1/2', '-x+1/2,z+1/2,-y+1/2', 'z+1/2,-x+1/2,-y+1/2', '-x+1/2,-z+1/2,y+1/2', '-z+1/2,x+1/2,-y+1/2', 'x+1/2,z+1/2,y+1/2', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1/2', '-z+1/2,-y+1/2,x+1/2', '-y+1/2,z+1/2,-x+1/2', 'z+1/2,y+1/2,x+1/2', '-y+1/2,-z+1/2,x+1/2', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'universal_h_m': 'I-43m'}, {'hall': ' P -4n 2 3', 'hermann_mauguin': 'P-43n', 'hermann_mauguin_u': 'P-43n', 'ncsym': ['x,y,z', 'y+1/2,-x+1/2,-z+1/2', '-x,-y,z', '-y+1/2,x+1/2,-z+1/2', 'x,-y,-z', '-y+1/2,-x+1/2,z+1/2', '-x,y,-z', 'y+1/2,x+1/2,z+1/2', 'z,x,y', 'x+1/2,-z+1/2,-y+1/2', '-z,-x,y', '-x+1/2,z+1/2,-y+1/2', 'z,-x,-y', '-x+1/2,-z+1/2,y+1/2', '-z,x,-y', 'x+1/2,z+1/2,y+1/2', 'y,z,x', 'y,-z,-x', '-z+1/2,-y+1/2,x+1/2', '-y,z,-x', 'z+1/2,y+1/2,x+1/2', '-y,-z,x', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'number': 218, 'point_group': '-43m', 'schoenflies': 'Td^4', 'short_h_m': 'P-43n', 'symops': ['x,y,z', 'y+1/2,-x+1/2,-z+1/2', '-x,-y,z', '-y+1/2,x+1/2,-z+1/2', 'x,-y,-z', '-y+1/2,-x+1/2,z+1/2', '-x,y,-z', 'y+1/2,x+1/2,z+1/2', 'z,x,y', 'x+1/2,-z+1/2,-y+1/2', '-z,-x,y', '-x+1/2,z+1/2,-y+1/2', 'z,-x,-y', '-x+1/2,-z+1/2,y+1/2', '-z,x,-y', 'x+1/2,z+1/2,y+1/2', 'y,z,x', 'y,-z,-x', '-z+1/2,-y+1/2,x+1/2', '-y,z,-x', 'z+1/2,y+1/2,x+1/2', '-y,-z,x', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'universal_h_m': 'P-43n'}, {'hall': ' F -4a 2 3', 'hermann_mauguin': 'F-43c', 'hermann_mauguin_u': 'F-43c', 'ncsym': ['x,y,z', 'y+1/2,-x,-z', '-x+1/2,-y+1/2,z', '-y,x+1/2,-z', 'x,-y,-z', '-y+1/2,-x,z', '-x+1/2,y+1/2,-z', 'y,x+1/2,z', 'z,x,y', 'x+1/2,-z,-y', '-z+1/2,-x+1/2,y', '-x,z+1/2,-y', 'z,-x,-y', '-x+1/2,-z,y', '-z+1/2,x+1/2,-y', 'x,z+1/2,y', 'y,z,x', 'y,-z+1/2,-x+1/2', '-z,-y,x+1/2', '-y+1/2,z,-x+1/2', 'z+1/2,y,x', '-y,-z,x', '-z,y,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'number': 219, 'point_group': '-43m', 'schoenflies': 'Td^5', 'short_h_m': 'F-43c', 'symops': ['x,y,z', 'y+1/2,-x,-z', '-x+1/2,-y+1/2,z', '-y,x+1/2,-z', 'x,-y,-z', '-y+1/2,-x,z', '-x+1/2,y+1/2,-z', 'y,x+1/2,z', 'z,x,y', 'x+1/2,-z,-y', '-z+1/2,-x+1/2,y', '-x,z+1/2,-y', 'z,-x,-y', '-x+1/2,-z,y', '-z+1/2,x+1/2,-y', 'x,z+1/2,y', 'y,z,x', 'y,-z+1/2,-x+1/2', '-z,-y,x+1/2', '-y+1/2,z,-x+1/2', 'z+1/2,y,x', '-y,-z,x', '-z,y,-x+1/2', 'z+1/2,-y+1/2,-x+1/2', 'x,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1,z+1/2', '-y,x+1,-z+1/2', 'x,-y+1/2,-z+1/2', '-y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1,-z+1/2', 'y,x+1,z+1/2', 'z,x+1/2,y+1/2', 'x+1/2,-z+1/2,-y+1/2', '-z+1/2,-x+1,y+1/2', '-x,z+1,-y+1/2', 'z,-x+1/2,-y+1/2', '-x+1/2,-z+1/2,y+1/2', '-z+1/2,x+1,-y+1/2', 'x,z+1,y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1,-x+1', '-z,-y+1/2,x+1', '-y+1/2,z+1/2,-x+1', 'z+1/2,y+1/2,x+1/2', '-y,-z+1/2,x+1/2', '-z,y+1/2,-x+1', 'z+1/2,-y+1,-x+1', 'x+1/2,y,z+1/2', 'y+1,-x,-z+1/2', '-x+1,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x+1/2,-y,-z+1/2', '-y+1,-x,z+1/2', '-x+1,y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', 'z+1/2,x,y+1/2', 'x+1,-z,-y+1/2', '-z+1,-x+1/2,y+1/2', '-x+1/2,z+1/2,-y+1/2', 'z+1/2,-x,-y+1/2', '-x+1,-z,y+1/2', '-z+1,x+1/2,-y+1/2', 'x+1/2,z+1/2,y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z+1/2,-x+1', '-z+1/2,-y,x+1', '-y+1,z,-x+1', 'z+1,y,x+1/2', '-y+1/2,-z,x+1/2', '-z+1/2,y,-x+1', 'z+1,-y+1/2,-x+1', 'x+1/2,y+1/2,z', 'y+1,-x+1/2,-z', '-x+1,-y+1,z', '-y+1/2,x+1,-z', 'x+1/2,-y+1/2,-z', '-y+1,-x+1/2,z', '-x+1,y+1,-z', 'y+1/2,x+1,z', 'z+1/2,x+1/2,y', 'x+1,-z+1/2,-y', '-z+1,-x+1,y', '-x+1/2,z+1,-y', 'z+1/2,-x+1/2,-y', '-x+1,-z+1/2,y', '-z+1,x+1,-y', 'x+1/2,z+1,y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1,-x+1/2', '-z+1/2,-y+1/2,x+1/2', '-y+1,z+1/2,-x+1/2', 'z+1,y+1/2,x', '-y+1/2,-z+1/2,x', '-z+1/2,y+1/2,-x+1/2', 'z+1,-y+1,-x+1/2'], 'universal_h_m': 'F-43c'}, {'hall': ' I -4bd 2c 3', 'hermann_mauguin': 'I-43d', 'hermann_mauguin_u': 'I-43d', 'ncsym': ['x,y,z', 'y+1/4,-x+3/4,-z+1/4', '-x,-y+1/2,z', '-y+3/4,x+3/4,-z+1/4', 'x,-y,-z+1/2', '-y+1/4,-x+3/4,z+3/4', '-x,y+1/2,-z+1/2', 'y+3/4,x+3/4,z+3/4', 'z,x,y', 'x+1/4,-z+3/4,-y+1/4', '-z,-x+1/2,y', '-x+3/4,z+3/4,-y+1/4', 'z,-x,-y+1/2', '-x+1/4,-z+3/4,y+3/4', '-z,x+1/2,-y+1/2', 'x+3/4,z+3/4,y+3/4', 'y,z,x', 'y,-z,-x+1/2', '-z+1/4,-y+3/4,x+3/4', '-y,z+1/2,-x+1/2', 'z+1/4,y+1/4,x+1/4', '-y+1/2,-z,x+1/2', '-z+1/4,y+1/4,-x+3/4', 'z+3/4,-y+1/4,-x+3/4'], 'number': 220, 'point_group': '-43m', 'schoenflies': 'Td^6', 'short_h_m': 'I-43d', 'symops': ['x,y,z', 'y+1/4,-x+3/4,-z+1/4', '-x,-y+1/2,z', '-y+3/4,x+3/4,-z+1/4', 'x,-y,-z+1/2', '-y+1/4,-x+3/4,z+3/4', '-x,y+1/2,-z+1/2', 'y+3/4,x+3/4,z+3/4', 'z,x,y', 'x+1/4,-z+3/4,-y+1/4', '-z,-x+1/2,y', '-x+3/4,z+3/4,-y+1/4', 'z,-x,-y+1/2', '-x+1/4,-z+3/4,y+3/4', '-z,x+1/2,-y+1/2', 'x+3/4,z+3/4,y+3/4', 'y,z,x', 'y,-z,-x+1/2', '-z+1/4,-y+3/4,x+3/4', '-y,z+1/2,-x+1/2', 'z+1/4,y+1/4,x+1/4', '-y+1/2,-z,x+1/2', '-z+1/4,y+1/4,-x+3/4', 'z+3/4,-y+1/4,-x+3/4', 'x+1/2,y+1/2,z+1/2', 'y+3/4,-x+5/4,-z+3/4', '-x+1/2,-y+1,z+1/2', '-y+5/4,x+5/4,-z+3/4', 'x+1/2,-y+1/2,-z+1', '-y+3/4,-x+5/4,z+5/4', '-x+1/2,y+1,-z+1', 'y+5/4,x+5/4,z+5/4', 'z+1/2,x+1/2,y+1/2', 'x+3/4,-z+5/4,-y+3/4', '-z+1/2,-x+1,y+1/2', '-x+5/4,z+5/4,-y+3/4', 'z+1/2,-x+1/2,-y+1', '-x+3/4,-z+5/4,y+5/4', '-z+1/2,x+1,-y+1', 'x+5/4,z+5/4,y+5/4', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', '-z+3/4,-y+5/4,x+5/4', '-y+1/2,z+1,-x+1', 'z+3/4,y+3/4,x+3/4', '-y+1,-z+1/2,x+1', '-z+3/4,y+3/4,-x+5/4', 'z+5/4,-y+3/4,-x+5/4'], 'universal_h_m': 'I-43d'}, {'hall': '-P 4 2 3', 'hermann_mauguin': 'Pm-3m', 'hermann_mauguin_u': 'Pm-3m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x'], 'number': 221, 'point_group': 'm-3m', 'schoenflies': 'Oh^1', 'short_h_m': 'Pm-3m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x'], 'universal_h_m': 'Pm-3m'}, {'hall': ' P 4 2 3 -1n', 'hermann_mauguin': 'Pn-3n', 'hermann_mauguin_u': 'Pn-3n', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'x+1/2,-z+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', '-x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'number': 222, 'point_group': 'm-3m', 'schoenflies': 'Oh^2', 'short_h_m': 'Pn-3n', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'x+1/2,-z+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', '-x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'universal_h_m': 'Pn-3n:1'}, {'hall': '-P 4a 2bc 3', 'hermann_mauguin': 'Pn-3n', 'hermann_mauguin_u': 'Pn-3n', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x+1/2,-y+1/2', 'x,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x', '-z+1/2,y,x', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z-1/2', '-y,-x,z-1/2', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z-1/2', '-z,-x,-y', 'x-1/2,-z,-y', 'z-1/2,x-1/2,-y', '-x,z-1/2,-y', '-z,x-1/2,y-1/2', '-x,-z,y-1/2', 'z-1/2,-x,y-1/2', 'x-1/2,z-1/2,y-1/2', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z,-y,x-1/2', 'y-1/2,-z,x-1/2', 'z-1/2,y-1/2,x-1/2', 'y-1/2,z-1/2,-x', '-z,y-1/2,-x', 'z-1/2,-y,-x'], 'number': 222, 'point_group': 'm-3m', 'schoenflies': 'Oh^2', 'short_h_m': 'Pn-3n', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x+1/2,-y+1/2', 'x,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x', '-z+1/2,y,x', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z-1/2', '-y,-x,z-1/2', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z-1/2', '-z,-x,-y', 'x-1/2,-z,-y', 'z-1/2,x-1/2,-y', '-x,z-1/2,-y', '-z,x-1/2,y-1/2', '-x,-z,y-1/2', 'z-1/2,-x,y-1/2', 'x-1/2,z-1/2,y-1/2', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z,-y,x-1/2', 'y-1/2,-z,x-1/2', 'z-1/2,y-1/2,x-1/2', 'y-1/2,z-1/2,-x', '-z,y-1/2,-x', 'z-1/2,-y,-x'], 'universal_h_m': 'Pn-3n:2'}, {'hall': '-P 4n 2 3', 'hermann_mauguin': 'Pm-3n', 'hermann_mauguin_u': 'Pm-3n', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x,-y,-z', 'y-1/2,-x-1/2,-z-1/2', 'x,y,-z', '-y-1/2,x-1/2,-z-1/2', '-x,y,z', '-y-1/2,-x-1/2,z-1/2', 'x,-y,z', 'y-1/2,x-1/2,z-1/2', '-z,-x,-y', 'x-1/2,-z-1/2,-y-1/2', 'z,x,-y', '-x-1/2,z-1/2,-y-1/2', '-z,x,y', '-x-1/2,-z-1/2,y-1/2', 'z,-x,y', 'x-1/2,z-1/2,y-1/2', '-y,-z,-x', '-y,z,x', '-z-1/2,-y-1/2,x-1/2', 'y,-z,x', 'z-1/2,y-1/2,x-1/2', 'y,z,-x', '-z-1/2,y-1/2,-x-1/2', 'z-1/2,-y-1/2,-x-1/2'], 'number': 223, 'point_group': 'm-3m', 'schoenflies': 'Oh^3', 'short_h_m': 'Pm-3n', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x,-y,-z', 'y-1/2,-x-1/2,-z-1/2', 'x,y,-z', '-y-1/2,x-1/2,-z-1/2', '-x,y,z', '-y-1/2,-x-1/2,z-1/2', 'x,-y,z', 'y-1/2,x-1/2,z-1/2', '-z,-x,-y', 'x-1/2,-z-1/2,-y-1/2', 'z,x,-y', '-x-1/2,z-1/2,-y-1/2', '-z,x,y', '-x-1/2,-z-1/2,y-1/2', 'z,-x,y', 'x-1/2,z-1/2,y-1/2', '-y,-z,-x', '-y,z,x', '-z-1/2,-y-1/2,x-1/2', 'y,-z,x', 'z-1/2,y-1/2,x-1/2', 'y,z,-x', '-z-1/2,y-1/2,-x-1/2', 'z-1/2,-y-1/2,-x-1/2'], 'universal_h_m': 'Pm-3n'}, {'hall': ' P 4n 2 3 -1n', 'hermann_mauguin': 'Pn-3m', 'hermann_mauguin_u': 'Pn-3m', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z', '-z+1/2,-x+1/2,-y+1/2', 'x,-z,-y', 'z+1/2,x+1/2,-y+1/2', '-x,z,-y', '-z+1/2,x+1/2,y+1/2', '-x,-z,y', 'z+1/2,-x+1/2,y+1/2', 'x,z,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z,-y,x', 'y+1/2,-z+1/2,x+1/2', 'z,y,x', 'y+1/2,z+1/2,-x+1/2', '-z,y,-x', 'z,-y,-x'], 'number': 224, 'point_group': 'm-3m', 'schoenflies': 'Oh^4', 'short_h_m': 'Pn-3m', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z', '-z+1/2,-x+1/2,-y+1/2', 'x,-z,-y', 'z+1/2,x+1/2,-y+1/2', '-x,z,-y', '-z+1/2,x+1/2,y+1/2', '-x,-z,y', 'z+1/2,-x+1/2,y+1/2', 'x,z,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z,-y,x', 'y+1/2,-z+1/2,x+1/2', 'z,y,x', 'y+1/2,z+1/2,-x+1/2', '-z,y,-x', 'z,-y,-x'], 'universal_h_m': 'Pn-3m:1'}, {'hall': '-P 4bc 2bc 3', 'hermann_mauguin': 'Pn-3m', 'hermann_mauguin_u': 'Pn-3m', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z+1/2', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z', '-x+1/2,y,-z+1/2', '-y,-x,-z', 'z,x,y', '-x,z+1/2,y+1/2', '-z+1/2,-x+1/2,y', 'x+1/2,-z,y+1/2', 'z,-x+1/2,-y+1/2', 'x+1/2,z+1/2,-y', '-z+1/2,x,-y+1/2', '-x,-z,-y', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z+1/2,y+1/2,-x', '-y+1/2,z,-x+1/2', '-z,-y,-x', '-y+1/2,-z+1/2,x', 'z+1/2,-y,x+1/2', '-z,y+1/2,x+1/2', '-x,-y,-z', 'y,-x-1/2,-z-1/2', 'x-1/2,y-1/2,-z', '-y-1/2,x,-z-1/2', '-x,y-1/2,z-1/2', '-y-1/2,-x-1/2,z', 'x-1/2,-y,z-1/2', 'y,x,z', '-z,-x,-y', 'x,-z-1/2,-y-1/2', 'z-1/2,x-1/2,-y', '-x-1/2,z,-y-1/2', '-z,x-1/2,y-1/2', '-x-1/2,-z-1/2,y', 'z-1/2,-x,y-1/2', 'x,z,y', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z-1/2,-y-1/2,x', 'y-1/2,-z,x-1/2', 'z,y,x', 'y-1/2,z-1/2,-x', '-z-1/2,y,-x-1/2', 'z,-y-1/2,-x-1/2'], 'number': 224, 'point_group': 'm-3m', 'schoenflies': 'Oh^4', 'short_h_m': 'Pn-3m', 'symops': ['x,y,z', '-y,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z+1/2', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z', '-x+1/2,y,-z+1/2', '-y,-x,-z', 'z,x,y', '-x,z+1/2,y+1/2', '-z+1/2,-x+1/2,y', 'x+1/2,-z,y+1/2', 'z,-x+1/2,-y+1/2', 'x+1/2,z+1/2,-y', '-z+1/2,x,-y+1/2', '-x,-z,-y', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z+1/2,y+1/2,-x', '-y+1/2,z,-x+1/2', '-z,-y,-x', '-y+1/2,-z+1/2,x', 'z+1/2,-y,x+1/2', '-z,y+1/2,x+1/2', '-x,-y,-z', 'y,-x-1/2,-z-1/2', 'x-1/2,y-1/2,-z', '-y-1/2,x,-z-1/2', '-x,y-1/2,z-1/2', '-y-1/2,-x-1/2,z', 'x-1/2,-y,z-1/2', 'y,x,z', '-z,-x,-y', 'x,-z-1/2,-y-1/2', 'z-1/2,x-1/2,-y', '-x-1/2,z,-y-1/2', '-z,x-1/2,y-1/2', '-x-1/2,-z-1/2,y', 'z-1/2,-x,y-1/2', 'x,z,y', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z-1/2,-y-1/2,x', 'y-1/2,-z,x-1/2', 'z,y,x', 'y-1/2,z-1/2,-x', '-z-1/2,y,-x-1/2', 'z,-y-1/2,-x-1/2'], 'universal_h_m': 'Pn-3m:2'}, {'hall': '-F 4 2 3', 'hermann_mauguin': 'Fm-3m', 'hermann_mauguin_u': 'Fm-3m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x'], 'number': 225, 'point_group': 'm-3m', 'schoenflies': 'Oh^5', 'short_h_m': 'Fm-3m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-x,z+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'x,-z+1/2,y+1/2', 'z,-x+1/2,-y+1/2', 'x,z+1/2,-y+1/2', '-z,x+1/2,-y+1/2', '-x,-z+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', 'z,y+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-z,-y+1/2,-x+1/2', '-y,-z+1/2,x+1/2', 'z,-y+1/2,x+1/2', '-z,y+1/2,x+1/2', '-x,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'y,x+1/2,z+1/2', '-z,-x+1/2,-y+1/2', 'x,-z+1/2,-y+1/2', 'z,x+1/2,-y+1/2', '-x,z+1/2,-y+1/2', '-z,x+1/2,y+1/2', '-x,-z+1/2,y+1/2', 'z,-x+1/2,y+1/2', 'x,z+1/2,y+1/2', '-y,-z+1/2,-x+1/2', '-y,z+1/2,x+1/2', '-z,-y+1/2,x+1/2', 'y,-z+1/2,x+1/2', 'z,y+1/2,x+1/2', 'y,z+1/2,-x+1/2', '-z,y+1/2,-x+1/2', 'z,-y+1/2,-x+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x,-z+1/2', 'z+1/2,x,y+1/2', '-x+1/2,z,y+1/2', '-z+1/2,-x,y+1/2', 'x+1/2,-z,y+1/2', 'z+1/2,-x,-y+1/2', 'x+1/2,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', 'z+1/2,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y,-x+1/2', '-y+1/2,-z,x+1/2', 'z+1/2,-y,x+1/2', '-z+1/2,y,x+1/2', '-x+1/2,-y,-z+1/2', 'y+1/2,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x,-z+1/2', '-x+1/2,y,z+1/2', '-y+1/2,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x,z+1/2', '-z+1/2,-x,-y+1/2', 'x+1/2,-z,-y+1/2', 'z+1/2,x,-y+1/2', '-x+1/2,z,-y+1/2', '-z+1/2,x,y+1/2', '-x+1/2,-z,y+1/2', 'z+1/2,-x,y+1/2', 'x+1/2,z,y+1/2', '-y+1/2,-z,-x+1/2', '-y+1/2,z,x+1/2', '-z+1/2,-y,x+1/2', 'y+1/2,-z,x+1/2', 'z+1/2,y,x+1/2', 'y+1/2,z,-x+1/2', '-z+1/2,y,-x+1/2', 'z+1/2,-y,-x+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z', 'z+1/2,x+1/2,y', '-x+1/2,z+1/2,y', '-z+1/2,-x+1/2,y', 'x+1/2,-z+1/2,y', 'z+1/2,-x+1/2,-y', 'x+1/2,z+1/2,-y', '-z+1/2,x+1/2,-y', '-x+1/2,-z+1/2,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', 'z+1/2,y+1/2,-x', '-y+1/2,z+1/2,-x', '-z+1/2,-y+1/2,-x', '-y+1/2,-z+1/2,x', 'z+1/2,-y+1/2,x', '-z+1/2,y+1/2,x', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z', '-z+1/2,-x+1/2,-y', 'x+1/2,-z+1/2,-y', 'z+1/2,x+1/2,-y', '-x+1/2,z+1/2,-y', '-z+1/2,x+1/2,y', '-x+1/2,-z+1/2,y', 'z+1/2,-x+1/2,y', 'x+1/2,z+1/2,y', '-y+1/2,-z+1/2,-x', '-y+1/2,z+1/2,x', '-z+1/2,-y+1/2,x', 'y+1/2,-z+1/2,x', 'z+1/2,y+1/2,x', 'y+1/2,z+1/2,-x', '-z+1/2,y+1/2,-x', 'z+1/2,-y+1/2,-x'], 'universal_h_m': 'Fm-3m'}, {'hall': '-F 4a 2 3', 'hermann_mauguin': 'Fm-3c', 'hermann_mauguin_u': 'Fm-3c', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y,-z', 'y+1/2,x,-z', '-x+1/2,y+1/2,-z', '-y,-x+1/2,-z', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x,-y', 'x+1/2,z,-y', '-z+1/2,x+1/2,-y', '-x,-z+1/2,-y', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y,-x', '-y,-z,x', 'z,-y,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y,z', '-y-1/2,-x,z', 'x-1/2,-y-1/2,z', 'y,x-1/2,z', '-z,-x,-y', 'x-1/2,-z,-y', 'z-1/2,x-1/2,-y', '-x,z-1/2,-y', '-z,x,y', '-x-1/2,-z,y', 'z-1/2,-x-1/2,y', 'x,z-1/2,y', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z,-y,x-1/2', 'y-1/2,-z,x-1/2', 'z-1/2,y,x', 'y,z,-x', '-z,y,-x-1/2', 'z-1/2,-y-1/2,-x-1/2'], 'number': 226, 'point_group': 'm-3m', 'schoenflies': 'Oh^6', 'short_h_m': 'Fm-3c', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y,-z', 'y+1/2,x,-z', '-x+1/2,y+1/2,-z', '-y,-x+1/2,-z', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x,-y', 'x+1/2,z,-y', '-z+1/2,x+1/2,-y', '-x,-z+1/2,-y', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y,-x', '-y,-z,x', 'z,-y,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y,z', '-y-1/2,-x,z', 'x-1/2,-y-1/2,z', 'y,x-1/2,z', '-z,-x,-y', 'x-1/2,-z,-y', 'z-1/2,x-1/2,-y', '-x,z-1/2,-y', '-z,x,y', '-x-1/2,-z,y', 'z-1/2,-x-1/2,y', 'x,z-1/2,y', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z,-y,x-1/2', 'y-1/2,-z,x-1/2', 'z-1/2,y,x', 'y,z,-x', '-z,y,-x-1/2', 'z-1/2,-y-1/2,-x-1/2', 'x,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'y,-x+1,z+1/2', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1,-z+1/2', '-y,-x+1,-z+1/2', 'z,x+1/2,y+1/2', '-x+1/2,z+1/2,y+1/2', '-z+1/2,-x+1,y+1/2', 'x,-z+1,y+1/2', 'z,-x+1/2,-y+1/2', 'x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1,-y+1/2', '-x,-z+1,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1,-x+1', 'z,y+1/2,-x+1', '-y+1/2,z+1/2,-x+1', '-z+1/2,-y+1/2,-x+1/2', '-y,-z+1/2,x+1/2', 'z,-y+1/2,x+1', '-z+1/2,y+1,x+1', '-x,-y+1/2,-z+1/2', 'y-1/2,-x+1/2,-z+1/2', 'x-1/2,y,-z+1/2', '-y,x,-z+1/2', '-x,y+1/2,z+1/2', '-y-1/2,-x+1/2,z+1/2', 'x-1/2,-y,z+1/2', 'y,x,z+1/2', '-z,-x+1/2,-y+1/2', 'x-1/2,-z+1/2,-y+1/2', 'z-1/2,x,-y+1/2', '-x,z,-y+1/2', '-z,x+1/2,y+1/2', '-x-1/2,-z+1/2,y+1/2', 'z-1/2,-x,y+1/2', 'x,z,y+1/2', '-y,-z+1/2,-x+1/2', '-y,z,x', '-z,-y+1/2,x', 'y-1/2,-z+1/2,x', 'z-1/2,y+1/2,x+1/2', 'y,z+1/2,-x+1/2', '-z,y+1/2,-x', 'z-1/2,-y,-x', 'x+1/2,y,z+1/2', '-y+1,x,z+1/2', '-x+1,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1,x,-z+1/2', '-x+1,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z+1/2,x,y+1/2', '-x+1,z,y+1/2', '-z+1,-x+1/2,y+1/2', 'x+1/2,-z+1/2,y+1/2', 'z+1/2,-x,-y+1/2', 'x+1,z,-y+1/2', '-z+1,x+1/2,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z+1/2,-x+1', 'z+1/2,y,-x+1', '-y+1,z,-x+1', '-z+1,-y,-x+1/2', '-y+1/2,-z,x+1/2', 'z+1/2,-y,x+1', '-z+1,y+1/2,x+1', '-x+1/2,-y,-z+1/2', 'y,-x,-z+1/2', 'x,y-1/2,-z+1/2', '-y+1/2,x-1/2,-z+1/2', '-x+1/2,y,z+1/2', '-y,-x,z+1/2', 'x,-y-1/2,z+1/2', 'y+1/2,x-1/2,z+1/2', '-z+1/2,-x,-y+1/2', 'x,-z,-y+1/2', 'z,x-1/2,-y+1/2', '-x+1/2,z-1/2,-y+1/2', '-z+1/2,x,y+1/2', '-x,-z,y+1/2', 'z,-x-1/2,y+1/2', 'x+1/2,z-1/2,y+1/2', '-y+1/2,-z,-x+1/2', '-y+1/2,z-1/2,x', '-z+1/2,-y,x', 'y,-z,x', 'z,y,x+1/2', 'y+1/2,z,-x+1/2', '-z+1/2,y,-x', 'z,-y-1/2,-x', 'x+1/2,y+1/2,z', '-y+1,x+1/2,z', '-x+1,-y+1,z', 'y+1/2,-x+1,z', 'x+1/2,-y+1/2,-z', 'y+1,x+1/2,-z', '-x+1,y+1,-z', '-y+1/2,-x+1,-z', 'z+1/2,x+1/2,y', '-x+1,z+1/2,y', '-z+1,-x+1,y', 'x+1/2,-z+1,y', 'z+1/2,-x+1/2,-y', 'x+1,z+1/2,-y', '-z+1,x+1,-y', '-x+1/2,-z+1,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1,-x+1/2', 'z+1/2,y+1/2,-x+1/2', '-y+1,z+1/2,-x+1/2', '-z+1,-y+1/2,-x', '-y+1/2,-z+1/2,x', 'z+1/2,-y+1/2,x+1/2', '-z+1,y+1,x+1/2', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y,-z', '-y+1/2,x,-z', '-x+1/2,y+1/2,z', '-y,-x+1/2,z', 'x,-y,z', 'y+1/2,x,z', '-z+1/2,-x+1/2,-y', 'x,-z+1/2,-y', 'z,x,-y', '-x+1/2,z,-y', '-z+1/2,x+1/2,y', '-x,-z+1/2,y', 'z,-x,y', 'x+1/2,z,y', '-y+1/2,-z+1/2,-x', '-y+1/2,z,x-1/2', '-z+1/2,-y+1/2,x-1/2', 'y,-z+1/2,x-1/2', 'z,y+1/2,x', 'y+1/2,z+1/2,-x', '-z+1/2,y+1/2,-x-1/2', 'z,-y,-x-1/2'], 'universal_h_m': 'Fm-3c'}, {'hall': ' F 4d 2 3 -1d', 'hermann_mauguin': 'Fd-3m', 'hermann_mauguin_u': 'Fd-3m', 'ncsym': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4', '-x+1/4,-y+1/4,-z+1/4', 'y,-x,-z', 'x+1/4,y-1/4,-z-1/4', '-y-1/2,x,-z-1/2', '-x+1/4,y+1/4,z+1/4', '-y,-x,z', 'x+1/4,-y-1/4,z-1/4', 'y-1/2,x,z-1/2', '-z+1/4,-x+1/4,-y+1/4', 'x,-z,-y', 'z+1/4,x-1/4,-y-1/4', '-x-1/2,z,-y-1/2', '-z+1/4,x+1/4,y+1/4', '-x,-z,y', 'z+1/4,-x-1/4,y-1/4', 'x-1/2,z,y-1/2', '-y+1/4,-z+1/4,-x+1/4', '-y-1/4,z+1/4,x-1/4', '-z,-y-1/2,x-1/2', 'y-1/4,-z-1/4,x+1/4', 'z,y,x', 'y+1/4,z+1/4,-x+1/4', '-z,y-1/2,-x-1/2', 'z-1/2,-y-1/2,-x'], 'number': 227, 'point_group': 'm-3m', 'schoenflies': 'Oh^7', 'short_h_m': 'Fd-3m', 'symops': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4', '-x+1/4,-y+1/4,-z+1/4', 'y,-x,-z', 'x+1/4,y-1/4,-z-1/4', '-y-1/2,x,-z-1/2', '-x+1/4,y+1/4,z+1/4', '-y,-x,z', 'x+1/4,-y-1/4,z-1/4', 'y-1/2,x,z-1/2', '-z+1/4,-x+1/4,-y+1/4', 'x,-z,-y', 'z+1/4,x-1/4,-y-1/4', '-x-1/2,z,-y-1/2', '-z+1/4,x+1/4,y+1/4', '-x,-z,y', 'z+1/4,-x-1/4,y-1/4', 'x-1/2,z,y-1/2', '-y+1/4,-z+1/4,-x+1/4', '-y-1/4,z+1/4,x-1/4', '-z,-y-1/2,x-1/2', 'y-1/4,-z-1/4,x+1/4', 'z,y,x', 'y+1/4,z+1/4,-x+1/4', '-z,y-1/2,-x-1/2', 'z-1/2,-y-1/2,-x', 'x,y+1/2,z+1/2', '-y+1/4,x+3/4,z+3/4', '-x,-y+1,z+1', 'y+3/4,-x+3/4,z+5/4', 'x,-y+1/2,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x,y+1,-z+1', '-y+3/4,-x+3/4,-z+5/4', 'z,x+1/2,y+1/2', '-x+1/4,z+3/4,y+3/4', '-z,-x+1,y+1', 'x+3/4,-z+3/4,y+5/4', 'z,-x+1/2,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z,x+1,-y+1', '-x+3/4,-z+3/4,-y+5/4', 'y,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', 'z+1/4,y+5/4,-x+5/4', '-y+1/2,z+1,-x+1/2', '-z+1/4,-y+3/4,-x+3/4', '-y,-z+1/2,x+1/2', 'z+1/4,-y+5/4,x+5/4', '-z+3/4,y+5/4,x+3/4', '-x+1/4,-y+3/4,-z+3/4', 'y,-x+1/2,-z+1/2', 'x+1/4,y+1/4,-z+1/4', '-y-1/2,x+1/2,-z', '-x+1/4,y+3/4,z+3/4', '-y,-x+1/2,z+1/2', 'x+1/4,-y+1/4,z+1/4', 'y-1/2,x+1/2,z', '-z+1/4,-x+3/4,-y+3/4', 'x,-z+1/2,-y+1/2', 'z+1/4,x+1/4,-y+1/4', '-x-1/2,z+1/2,-y', '-z+1/4,x+3/4,y+3/4', '-x,-z+1/2,y+1/2', 'z+1/4,-x+1/4,y+1/4', 'x-1/2,z+1/2,y', '-y+1/4,-z+3/4,-x+3/4', '-y-1/4,z+3/4,x+1/4', '-z,-y,x', 'y-1/4,-z+1/4,x+3/4', 'z,y+1/2,x+1/2', 'y+1/4,z+3/4,-x+3/4', '-z,y,-x', 'z-1/2,-y,-x+1/2', 'x+1/2,y,z+1/2', '-y+3/4,x+1/4,z+3/4', '-x+1/2,-y+1/2,z+1', 'y+5/4,-x+1/4,z+5/4', 'x+1/2,-y,-z+1/2', 'y+3/4,x+1/4,-z+3/4', '-x+1/2,y+1/2,-z+1', '-y+5/4,-x+1/4,-z+5/4', 'z+1/2,x,y+1/2', '-x+3/4,z+1/4,y+3/4', '-z+1/2,-x+1/2,y+1', 'x+5/4,-z+1/4,y+5/4', 'z+1/2,-x,-y+1/2', 'x+3/4,z+1/4,-y+3/4', '-z+1/2,x+1/2,-y+1', '-x+5/4,-z+1/4,-y+5/4', 'y+1/2,z,x+1/2', 'y+1,-z,-x+1', 'z+3/4,y+3/4,-x+5/4', '-y+1,z+1/2,-x+1/2', '-z+3/4,-y+1/4,-x+3/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+5/4', '-z+5/4,y+3/4,x+3/4', '-x+3/4,-y+1/4,-z+3/4', 'y+1/2,-x,-z+1/2', 'x+3/4,y-1/4,-z+1/4', '-y,x,-z', '-x+3/4,y+1/4,z+3/4', '-y+1/2,-x,z+1/2', 'x+3/4,-y-1/4,z+1/4', 'y,x,z', '-z+3/4,-x+1/4,-y+3/4', 'x+1/2,-z,-y+1/2', 'z+3/4,x-1/4,-y+1/4', '-x,z,-y', '-z+3/4,x+1/4,y+3/4', '-x+1/2,-z,y+1/2', 'z+3/4,-x-1/4,y+1/4', 'x,z,y', '-y+3/4,-z+1/4,-x+3/4', '-y+1/4,z+1/4,x+1/4', '-z+1/2,-y-1/2,x', 'y+1/4,-z-1/4,x+3/4', 'z+1/2,y,x+1/2', 'y+3/4,z+1/4,-x+3/4', '-z+1/2,y-1/2,-x', 'z,-y-1/2,-x+1/2', 'x+1/2,y+1/2,z', '-y+3/4,x+3/4,z+1/4', '-x+1/2,-y+1,z+1/2', 'y+5/4,-x+3/4,z+3/4', 'x+1/2,-y+1/2,-z', 'y+3/4,x+3/4,-z+1/4', '-x+1/2,y+1,-z+1/2', '-y+5/4,-x+3/4,-z+3/4', 'z+1/2,x+1/2,y', '-x+3/4,z+3/4,y+1/4', '-z+1/2,-x+1,y+1/2', 'x+5/4,-z+3/4,y+3/4', 'z+1/2,-x+1/2,-y', 'x+3/4,z+3/4,-y+1/4', '-z+1/2,x+1,-y+1/2', '-x+5/4,-z+3/4,-y+3/4', 'y+1/2,z+1/2,x', 'y+1,-z+1/2,-x+1/2', 'z+3/4,y+5/4,-x+3/4', '-y+1,z+1,-x', '-z+3/4,-y+3/4,-x+1/4', '-y+1/2,-z+1/2,x', 'z+3/4,-y+5/4,x+3/4', '-z+5/4,y+5/4,x+1/4', '-x+3/4,-y+3/4,-z+1/4', 'y+1/2,-x+1/2,-z', 'x+3/4,y+1/4,-z-1/4', '-y,x+1/2,-z-1/2', '-x+3/4,y+3/4,z+1/4', '-y+1/2,-x+1/2,z', 'x+3/4,-y+1/4,z-1/4', 'y,x+1/2,z-1/2', '-z+3/4,-x+3/4,-y+1/4', 'x+1/2,-z+1/2,-y', 'z+3/4,x+1/4,-y-1/4', '-x,z+1/2,-y-1/2', '-z+3/4,x+3/4,y+1/4', '-x+1/2,-z+1/2,y', 'z+3/4,-x+1/4,y-1/4', 'x,z+1/2,y-1/2', '-y+3/4,-z+3/4,-x+1/4', '-y+1/4,z+3/4,x-1/4', '-z+1/2,-y,x-1/2', 'y+1/4,-z+1/4,x+1/4', 'z+1/2,y+1/2,x', 'y+3/4,z+3/4,-x+1/4', '-z+1/2,y,-x-1/2', 'z,-y,-x'], 'universal_h_m': 'Fd-3m:1'}, {'hall': '-F 4vw 2vw 3', 'hermann_mauguin': 'Fd-3m', 'hermann_mauguin_u': 'Fd-3m', 'ncsym': ['x,y,z', '-y,x+1/4,z+1/4', '-x+3/4,-y+1/4,z+1/2', 'y+3/4,-x,z+3/4', 'x,-y+1/4,-z+1/4', 'y+3/4,x+1/4,-z+1/2', '-x+3/4,y,-z+3/4', '-y,-x,-z', 'z,x,y', '-x,z+1/4,y+1/4', '-z+3/4,-x+1/4,y+1/2', 'x+3/4,-z,y+3/4', 'z,-x+1/4,-y+1/4', 'x+3/4,z+1/4,-y+1/2', '-z+3/4,x,-y+3/4', '-x,-z,-y', 'y,z,x', 'y+1/2,-z+3/4,-x+1/4', 'z+1/4,y+3/4,-x+1/2', '-y+1/4,z+1/2,-x+3/4', '-z,-y+1/2,-x+1/2', '-y+1/4,-z+1/4,x', 'z+1/4,-y,x+1/4', '-z+1/2,y+1/4,x+3/4', '-x,-y,-z', 'y,-x-1/4,-z-1/4', 'x-3/4,y-1/4,-z-1/2', '-y-3/4,x,-z-3/4', '-x,y-1/4,z-1/4', '-y-3/4,-x-1/4,z-1/2', 'x-3/4,-y,z-3/4', 'y,x,z', '-z,-x,-y', 'x,-z-1/4,-y-1/4', 'z-3/4,x-1/4,-y-1/2', '-x-3/4,z,-y-3/4', '-z,x-1/4,y-1/4', '-x-3/4,-z-1/4,y-1/2', 'z-3/4,-x,y-3/4', 'x,z,y', '-y,-z,-x', '-y-1/2,z-3/4,x-1/4', '-z-1/4,-y-3/4,x-1/2', 'y-1/4,-z-1/2,x-3/4', 'z,y-1/2,x-1/2', 'y-1/4,z-1/4,-x', '-z-1/4,y,-x-1/4', 'z-1/2,-y-1/4,-x-3/4'], 'number': 227, 'point_group': 'm-3m', 'schoenflies': 'Oh^7', 'short_h_m': 'Fd-3m', 'symops': ['x,y,z', '-y,x+1/4,z+1/4', '-x+3/4,-y+1/4,z+1/2', 'y+3/4,-x,z+3/4', 'x,-y+1/4,-z+1/4', 'y+3/4,x+1/4,-z+1/2', '-x+3/4,y,-z+3/4', '-y,-x,-z', 'z,x,y', '-x,z+1/4,y+1/4', '-z+3/4,-x+1/4,y+1/2', 'x+3/4,-z,y+3/4', 'z,-x+1/4,-y+1/4', 'x+3/4,z+1/4,-y+1/2', '-z+3/4,x,-y+3/4', '-x,-z,-y', 'y,z,x', 'y+1/2,-z+3/4,-x+1/4', 'z+1/4,y+3/4,-x+1/2', '-y+1/4,z+1/2,-x+3/4', '-z,-y+1/2,-x+1/2', '-y+1/4,-z+1/4,x', 'z+1/4,-y,x+1/4', '-z+1/2,y+1/4,x+3/4', '-x,-y,-z', 'y,-x-1/4,-z-1/4', 'x-3/4,y-1/4,-z-1/2', '-y-3/4,x,-z-3/4', '-x,y-1/4,z-1/4', '-y-3/4,-x-1/4,z-1/2', 'x-3/4,-y,z-3/4', 'y,x,z', '-z,-x,-y', 'x,-z-1/4,-y-1/4', 'z-3/4,x-1/4,-y-1/2', '-x-3/4,z,-y-3/4', '-z,x-1/4,y-1/4', '-x-3/4,-z-1/4,y-1/2', 'z-3/4,-x,y-3/4', 'x,z,y', '-y,-z,-x', '-y-1/2,z-3/4,x-1/4', '-z-1/4,-y-3/4,x-1/2', 'y-1/4,-z-1/2,x-3/4', 'z,y-1/2,x-1/2', 'y-1/4,z-1/4,-x', '-z-1/4,y,-x-1/4', 'z-1/2,-y-1/4,-x-3/4', 'x,y+1/2,z+1/2', '-y,x+3/4,z+3/4', '-x+3/4,-y+3/4,z+1', 'y+3/4,-x+1/2,z+5/4', 'x,-y+3/4,-z+3/4', 'y+3/4,x+3/4,-z+1', '-x+3/4,y+1/2,-z+5/4', '-y,-x+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-x,z+3/4,y+3/4', '-z+3/4,-x+3/4,y+1', 'x+3/4,-z+1/2,y+5/4', 'z,-x+3/4,-y+3/4', 'x+3/4,z+3/4,-y+1', '-z+3/4,x+1/2,-y+5/4', '-x,-z+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y+1/2,-z+5/4,-x+3/4', 'z+1/4,y+5/4,-x+1', '-y+1/4,z+1,-x+5/4', '-z,-y+1,-x+1', '-y+1/4,-z+3/4,x+1/2', 'z+1/4,-y+1/2,x+3/4', '-z+1/2,y+3/4,x+5/4', '-x,-y+1/2,-z+1/2', 'y,-x+1/4,-z+1/4', 'x-3/4,y+1/4,-z', '-y-3/4,x+1/2,-z-1/4', '-x,y+1/4,z+1/4', '-y-3/4,-x+1/4,z', 'x-3/4,-y+1/2,z-1/4', 'y,x+1/2,z+1/2', '-z,-x+1/2,-y+1/2', 'x,-z+1/4,-y+1/4', 'z-3/4,x+1/4,-y', '-x-3/4,z+1/2,-y-1/4', '-z,x+1/4,y+1/4', '-x-3/4,-z+1/4,y', 'z-3/4,-x+1/2,y-1/4', 'x,z+1/2,y+1/2', '-y,-z+1/2,-x+1/2', '-y-1/2,z-1/4,x+1/4', '-z-1/4,-y-1/4,x', 'y-1/4,-z,x-1/4', 'z,y,x', 'y-1/4,z+1/4,-x+1/2', '-z-1/4,y+1/2,-x+1/4', 'z-1/2,-y+1/4,-x-1/4', 'x+1/2,y,z+1/2', '-y+1/2,x+1/4,z+3/4', '-x+5/4,-y+1/4,z+1', 'y+5/4,-x,z+5/4', 'x+1/2,-y+1/4,-z+3/4', 'y+5/4,x+1/4,-z+1', '-x+5/4,y,-z+5/4', '-y+1/2,-x,-z+1/2', 'z+1/2,x,y+1/2', '-x+1/2,z+1/4,y+3/4', '-z+5/4,-x+1/4,y+1', 'x+5/4,-z,y+5/4', 'z+1/2,-x+1/4,-y+3/4', 'x+5/4,z+1/4,-y+1', '-z+5/4,x,-y+5/4', '-x+1/2,-z,-y+1/2', 'y+1/2,z,x+1/2', 'y+1,-z+3/4,-x+3/4', 'z+3/4,y+3/4,-x+1', '-y+3/4,z+1/2,-x+5/4', '-z+1/2,-y+1/2,-x+1', '-y+3/4,-z+1/4,x+1/2', 'z+3/4,-y,x+3/4', '-z+1,y+1/4,x+5/4', '-x+1/2,-y,-z+1/2', 'y+1/2,-x-1/4,-z+1/4', 'x-1/4,y-1/4,-z', '-y-1/4,x,-z-1/4', '-x+1/2,y-1/4,z+1/4', '-y-1/4,-x-1/4,z', 'x-1/4,-y,z-1/4', 'y+1/2,x,z+1/2', '-z+1/2,-x,-y+1/2', 'x+1/2,-z-1/4,-y+1/4', 'z-1/4,x-1/4,-y', '-x-1/4,z,-y-1/4', '-z+1/2,x-1/4,y+1/4', '-x-1/4,-z-1/4,y', 'z-1/4,-x,y-1/4', 'x+1/2,z,y+1/2', '-y+1/2,-z,-x+1/2', '-y,z-3/4,x+1/4', '-z+1/4,-y-3/4,x', 'y+1/4,-z-1/2,x-1/4', 'z+1/2,y-1/2,x', 'y+1/4,z-1/4,-x+1/2', '-z+1/4,y,-x+1/4', 'z,-y-1/4,-x-1/4', 'x+1/2,y+1/2,z', '-y+1/2,x+3/4,z+1/4', '-x+5/4,-y+3/4,z+1/2', 'y+5/4,-x+1/2,z+3/4', 'x+1/2,-y+3/4,-z+1/4', 'y+5/4,x+3/4,-z+1/2', '-x+5/4,y+1/2,-z+3/4', '-y+1/2,-x+1/2,-z', 'z+1/2,x+1/2,y', '-x+1/2,z+3/4,y+1/4', '-z+5/4,-x+3/4,y+1/2', 'x+5/4,-z+1/2,y+3/4', 'z+1/2,-x+3/4,-y+1/4', 'x+5/4,z+3/4,-y+1/2', '-z+5/4,x+1/2,-y+3/4', '-x+1/2,-z+1/2,-y', 'y+1/2,z+1/2,x', 'y+1,-z+5/4,-x+1/4', 'z+3/4,y+5/4,-x+1/2', '-y+3/4,z+1,-x+3/4', '-z+1/2,-y+1,-x+1/2', '-y+3/4,-z+3/4,x', 'z+3/4,-y+1/2,x+1/4', '-z+1,y+3/4,x+3/4', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/4,-z-1/4', 'x-1/4,y+1/4,-z-1/2', '-y-1/4,x+1/2,-z-3/4', '-x+1/2,y+1/4,z-1/4', '-y-1/4,-x+1/4,z-1/2', 'x-1/4,-y+1/2,z-3/4', 'y+1/2,x+1/2,z', '-z+1/2,-x+1/2,-y', 'x+1/2,-z+1/4,-y-1/4', 'z-1/4,x+1/4,-y-1/2', '-x-1/4,z+1/2,-y-3/4', '-z+1/2,x+1/4,y-1/4', '-x-1/4,-z+1/4,y-1/2', 'z-1/4,-x+1/2,y-3/4', 'x+1/2,z+1/2,y', '-y+1/2,-z+1/2,-x', '-y,z-1/4,x-1/4', '-z+1/4,-y-1/4,x-1/2', 'y+1/4,-z,x-3/4', 'z+1/2,y,x-1/2', 'y+1/4,z+1/4,-x', '-z+1/4,y+1/2,-x-1/4', 'z,-y+1/4,-x-3/4'], 'universal_h_m': 'Fd-3m:2'}, {'hall': ' F 4d 2 3 -1ad', 'hermann_mauguin': 'Fd-3c', 'hermann_mauguin_u': 'Fd-3c', 'ncsym': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4', '-x+3/4,-y+1/4,-z+1/4', 'y+1/2,-x,-z', 'x+3/4,y-1/4,-z-1/4', '-y,x,-z-1/2', '-x+3/4,y+1/4,z+1/4', '-y+1/2,-x,z', 'x+3/4,-y-1/4,z-1/4', 'y,x,z-1/2', '-z+3/4,-x+1/4,-y+1/4', 'x+1/2,-z,-y', 'z+3/4,x-1/4,-y-1/4', '-x,z,-y-1/2', '-z+3/4,x+1/4,y+1/4', '-x+1/2,-z,y', 'z+3/4,-x-1/4,y-1/4', 'x,z,y-1/2', '-y+3/4,-z+1/4,-x+1/4', '-y+1/4,z+1/4,x-1/4', '-z+1/2,-y-1/2,x-1/2', 'y+1/4,-z-1/4,x+1/4', 'z+1/2,y,x', 'y+3/4,z+1/4,-x+1/4', '-z+1/2,y-1/2,-x-1/2', 'z,-y-1/2,-x'], 'number': 228, 'point_group': 'm-3m', 'schoenflies': 'Oh^8', 'short_h_m': 'Fd-3c', 'symops': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4', '-x+3/4,-y+1/4,-z+1/4', 'y+1/2,-x,-z', 'x+3/4,y-1/4,-z-1/4', '-y,x,-z-1/2', '-x+3/4,y+1/4,z+1/4', '-y+1/2,-x,z', 'x+3/4,-y-1/4,z-1/4', 'y,x,z-1/2', '-z+3/4,-x+1/4,-y+1/4', 'x+1/2,-z,-y', 'z+3/4,x-1/4,-y-1/4', '-x,z,-y-1/2', '-z+3/4,x+1/4,y+1/4', '-x+1/2,-z,y', 'z+3/4,-x-1/4,y-1/4', 'x,z,y-1/2', '-y+3/4,-z+1/4,-x+1/4', '-y+1/4,z+1/4,x-1/4', '-z+1/2,-y-1/2,x-1/2', 'y+1/4,-z-1/4,x+1/4', 'z+1/2,y,x', 'y+3/4,z+1/4,-x+1/4', '-z+1/2,y-1/2,-x-1/2', 'z,-y-1/2,-x', 'x,y+1/2,z+1/2', '-y+1/4,x+3/4,z+3/4', '-x,-y+1,z+1', 'y+3/4,-x+3/4,z+5/4', 'x,-y+1/2,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x,y+1,-z+1', '-y+3/4,-x+3/4,-z+5/4', 'z,x+1/2,y+1/2', '-x+1/4,z+3/4,y+3/4', '-z,-x+1,y+1', 'x+3/4,-z+3/4,y+5/4', 'z,-x+1/2,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z,x+1,-y+1', '-x+3/4,-z+3/4,-y+5/4', 'y,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', 'z+1/4,y+5/4,-x+5/4', '-y+1/2,z+1,-x+1/2', '-z+1/4,-y+3/4,-x+3/4', '-y,-z+1/2,x+1/2', 'z+1/4,-y+5/4,x+5/4', '-z+3/4,y+5/4,x+3/4', '-x+3/4,-y+3/4,-z+3/4', 'y+1/2,-x+1/2,-z+1/2', 'x+3/4,y+1/4,-z+1/4', '-y,x+1/2,-z', '-x+3/4,y+3/4,z+3/4', '-y+1/2,-x+1/2,z+1/2', 'x+3/4,-y+1/4,z+1/4', 'y,x+1/2,z', '-z+3/4,-x+3/4,-y+3/4', 'x+1/2,-z+1/2,-y+1/2', 'z+3/4,x+1/4,-y+1/4', '-x,z+1/2,-y', '-z+3/4,x+3/4,y+3/4', '-x+1/2,-z+1/2,y+1/2', 'z+3/4,-x+1/4,y+1/4', 'x,z+1/2,y', '-y+3/4,-z+3/4,-x+3/4', '-y+1/4,z+3/4,x+1/4', '-z+1/2,-y,x', 'y+1/4,-z+1/4,x+3/4', 'z+1/2,y+1/2,x+1/2', 'y+3/4,z+3/4,-x+3/4', '-z+1/2,y,-x', 'z,-y,-x+1/2', 'x+1/2,y,z+1/2', '-y+3/4,x+1/4,z+3/4', '-x+1/2,-y+1/2,z+1', 'y+5/4,-x+1/4,z+5/4', 'x+1/2,-y,-z+1/2', 'y+3/4,x+1/4,-z+3/4', '-x+1/2,y+1/2,-z+1', '-y+5/4,-x+1/4,-z+5/4', 'z+1/2,x,y+1/2', '-x+3/4,z+1/4,y+3/4', '-z+1/2,-x+1/2,y+1', 'x+5/4,-z+1/4,y+5/4', 'z+1/2,-x,-y+1/2', 'x+3/4,z+1/4,-y+3/4', '-z+1/2,x+1/2,-y+1', '-x+5/4,-z+1/4,-y+5/4', 'y+1/2,z,x+1/2', 'y+1,-z,-x+1', 'z+3/4,y+3/4,-x+5/4', '-y+1,z+1/2,-x+1/2', '-z+3/4,-y+1/4,-x+3/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+5/4', '-z+5/4,y+3/4,x+3/4', '-x+5/4,-y+1/4,-z+3/4', 'y+1,-x,-z+1/2', 'x+5/4,y-1/4,-z+1/4', '-y+1/2,x,-z', '-x+5/4,y+1/4,z+3/4', '-y+1,-x,z+1/2', 'x+5/4,-y-1/4,z+1/4', 'y+1/2,x,z', '-z+5/4,-x+1/4,-y+3/4', 'x+1,-z,-y+1/2', 'z+5/4,x-1/4,-y+1/4', '-x+1/2,z,-y', '-z+5/4,x+1/4,y+3/4', '-x+1,-z,y+1/2', 'z+5/4,-x-1/4,y+1/4', 'x+1/2,z,y', '-y+5/4,-z+1/4,-x+3/4', '-y+3/4,z+1/4,x+1/4', '-z+1,-y-1/2,x', 'y+3/4,-z-1/4,x+3/4', 'z+1,y,x+1/2', 'y+5/4,z+1/4,-x+3/4', '-z+1,y-1/2,-x', 'z+1/2,-y-1/2,-x+1/2', 'x+1/2,y+1/2,z', '-y+3/4,x+3/4,z+1/4', '-x+1/2,-y+1,z+1/2', 'y+5/4,-x+3/4,z+3/4', 'x+1/2,-y+1/2,-z', 'y+3/4,x+3/4,-z+1/4', '-x+1/2,y+1,-z+1/2', '-y+5/4,-x+3/4,-z+3/4', 'z+1/2,x+1/2,y', '-x+3/4,z+3/4,y+1/4', '-z+1/2,-x+1,y+1/2', 'x+5/4,-z+3/4,y+3/4', 'z+1/2,-x+1/2,-y', 'x+3/4,z+3/4,-y+1/4', '-z+1/2,x+1,-y+1/2', '-x+5/4,-z+3/4,-y+3/4', 'y+1/2,z+1/2,x', 'y+1,-z+1/2,-x+1/2', 'z+3/4,y+5/4,-x+3/4', '-y+1,z+1,-x', '-z+3/4,-y+3/4,-x+1/4', '-y+1/2,-z+1/2,x', 'z+3/4,-y+5/4,x+3/4', '-z+5/4,y+5/4,x+1/4', '-x+5/4,-y+3/4,-z+1/4', 'y+1,-x+1/2,-z', 'x+5/4,y+1/4,-z-1/4', '-y+1/2,x+1/2,-z-1/2', '-x+5/4,y+3/4,z+1/4', '-y+1,-x+1/2,z', 'x+5/4,-y+1/4,z-1/4', 'y+1/2,x+1/2,z-1/2', '-z+5/4,-x+3/4,-y+1/4', 'x+1,-z+1/2,-y', 'z+5/4,x+1/4,-y-1/4', '-x+1/2,z+1/2,-y-1/2', '-z+5/4,x+3/4,y+1/4', '-x+1,-z+1/2,y', 'z+5/4,-x+1/4,y-1/4', 'x+1/2,z+1/2,y-1/2', '-y+5/4,-z+3/4,-x+1/4', '-y+3/4,z+3/4,x-1/4', '-z+1,-y,x-1/2', 'y+3/4,-z+1/4,x+1/4', 'z+1,y+1/2,x', 'y+5/4,z+3/4,-x+1/4', '-z+1,y,-x-1/2', 'z+1/2,-y,-x'], 'universal_h_m': 'Fd-3c:1'}, {'hall': '-F 4ud 2vw 3', 'hermann_mauguin': 'Fd-3c', 'hermann_mauguin_u': 'Fd-3c', 'ncsym': ['x,y,z', '-y+1/2,x+1/4,z+1/4', '-x+1/4,-y+3/4,z+1/2', 'y+3/4,-x+1/2,z+3/4', 'x,-y+1/4,-z+1/4', 'y+1/4,x+1/4,-z+1/2', '-x+1/4,y+1/2,-z+3/4', '-y,-x+1/2,-z', 'z,x,y', '-x+1/2,z+1/4,y+1/4', '-z+1/4,-x+3/4,y+1/2', 'x+3/4,-z+1/2,y+3/4', 'z,-x+1/4,-y+1/4', 'x+1/4,z+1/4,-y+1/2', '-z+1/4,x+1/2,-y+3/4', '-x,-z+1/2,-y', 'y,z,x', 'y+1/2,-z+1/4,-x+3/4', 'z+1/4,y+3/4,-x', '-y+3/4,z+1/2,-x+1/4', '-z+1/2,-y+1/2,-x+1/2', '-y+1/4,-z+1/4,x', 'z+1/4,-y,x+3/4', '-z,y+3/4,x+1/4', '-x,-y,-z', 'y-1/2,-x-1/4,-z-1/4', 'x-1/4,y-3/4,-z-1/2', '-y-3/4,x-1/2,-z-3/4', '-x,y-1/4,z-1/4', '-y-1/4,-x-1/4,z-1/2', 'x-1/4,-y-1/2,z-3/4', 'y,x-1/2,z', '-z,-x,-y', 'x-1/2,-z-1/4,-y-1/4', 'z-1/4,x-3/4,-y-1/2', '-x-3/4,z-1/2,-y-3/4', '-z,x-1/4,y-1/4', '-x-1/4,-z-1/4,y-1/2', 'z-1/4,-x-1/2,y-3/4', 'x,z-1/2,y', '-y,-z,-x', '-y-1/2,z-1/4,x-3/4', '-z-1/4,-y-3/4,x', 'y-3/4,-z-1/2,x-1/4', 'z-1/2,y-1/2,x-1/2', 'y-1/4,z-1/4,-x', '-z-1/4,y,-x-3/4', 'z,-y-3/4,-x-1/4'], 'number': 228, 'point_group': 'm-3m', 'schoenflies': 'Oh^8', 'short_h_m': 'Fd-3c', 'symops': ['x,y,z', '-y+1/2,x+1/4,z+1/4', '-x+1/4,-y+3/4,z+1/2', 'y+3/4,-x+1/2,z+3/4', 'x,-y+1/4,-z+1/4', 'y+1/4,x+1/4,-z+1/2', '-x+1/4,y+1/2,-z+3/4', '-y,-x+1/2,-z', 'z,x,y', '-x+1/2,z+1/4,y+1/4', '-z+1/4,-x+3/4,y+1/2', 'x+3/4,-z+1/2,y+3/4', 'z,-x+1/4,-y+1/4', 'x+1/4,z+1/4,-y+1/2', '-z+1/4,x+1/2,-y+3/4', '-x,-z+1/2,-y', 'y,z,x', 'y+1/2,-z+1/4,-x+3/4', 'z+1/4,y+3/4,-x', '-y+3/4,z+1/2,-x+1/4', '-z+1/2,-y+1/2,-x+1/2', '-y+1/4,-z+1/4,x', 'z+1/4,-y,x+3/4', '-z,y+3/4,x+1/4', '-x,-y,-z', 'y-1/2,-x-1/4,-z-1/4', 'x-1/4,y-3/4,-z-1/2', '-y-3/4,x-1/2,-z-3/4', '-x,y-1/4,z-1/4', '-y-1/4,-x-1/4,z-1/2', 'x-1/4,-y-1/2,z-3/4', 'y,x-1/2,z', '-z,-x,-y', 'x-1/2,-z-1/4,-y-1/4', 'z-1/4,x-3/4,-y-1/2', '-x-3/4,z-1/2,-y-3/4', '-z,x-1/4,y-1/4', '-x-1/4,-z-1/4,y-1/2', 'z-1/4,-x-1/2,y-3/4', 'x,z-1/2,y', '-y,-z,-x', '-y-1/2,z-1/4,x-3/4', '-z-1/4,-y-3/4,x', 'y-3/4,-z-1/2,x-1/4', 'z-1/2,y-1/2,x-1/2', 'y-1/4,z-1/4,-x', '-z-1/4,y,-x-3/4', 'z,-y-3/4,-x-1/4', 'x,y+1/2,z+1/2', '-y+1/2,x+3/4,z+3/4', '-x+1/4,-y+5/4,z+1', 'y+3/4,-x+1,z+5/4', 'x,-y+3/4,-z+3/4', 'y+1/4,x+3/4,-z+1', '-x+1/4,y+1,-z+5/4', '-y,-x+1,-z+1/2', 'z,x+1/2,y+1/2', '-x+1/2,z+3/4,y+3/4', '-z+1/4,-x+5/4,y+1', 'x+3/4,-z+1,y+5/4', 'z,-x+3/4,-y+3/4', 'x+1/4,z+3/4,-y+1', '-z+1/4,x+1,-y+5/4', '-x,-z+1,-y+1/2', 'y,z+1/2,x+1/2', 'y+1/2,-z+3/4,-x+5/4', 'z+1/4,y+5/4,-x+1/2', '-y+3/4,z+1,-x+3/4', '-z+1/2,-y+1,-x+1', '-y+1/4,-z+3/4,x+1/2', 'z+1/4,-y+1/2,x+5/4', '-z,y+5/4,x+3/4', '-x,-y+1/2,-z+1/2', 'y-1/2,-x+1/4,-z+1/4', 'x-1/4,y-1/4,-z', '-y-3/4,x,-z-1/4', '-x,y+1/4,z+1/4', '-y-1/4,-x+1/4,z', 'x-1/4,-y,z-1/4', 'y,x,z+1/2', '-z,-x+1/2,-y+1/2', 'x-1/2,-z+1/4,-y+1/4', 'z-1/4,x-1/4,-y', '-x-3/4,z,-y-1/4', '-z,x+1/4,y+1/4', '-x-1/4,-z+1/4,y', 'z-1/4,-x,y-1/4', 'x,z,y+1/2', '-y,-z+1/2,-x+1/2', '-y-1/2,z+1/4,x-1/4', '-z-1/4,-y-1/4,x+1/2', 'y-3/4,-z,x+1/4', 'z-1/2,y,x', 'y-1/4,z+1/4,-x+1/2', '-z-1/4,y+1/2,-x-1/4', 'z,-y-1/4,-x+1/4', 'x+1/2,y,z+1/2', '-y+1,x+1/4,z+3/4', '-x+3/4,-y+3/4,z+1', 'y+5/4,-x+1/2,z+5/4', 'x+1/2,-y+1/4,-z+3/4', 'y+3/4,x+1/4,-z+1', '-x+3/4,y+1/2,-z+5/4', '-y+1/2,-x+1/2,-z+1/2', 'z+1/2,x,y+1/2', '-x+1,z+1/4,y+3/4', '-z+3/4,-x+3/4,y+1', 'x+5/4,-z+1/2,y+5/4', 'z+1/2,-x+1/4,-y+3/4', 'x+3/4,z+1/4,-y+1', '-z+3/4,x+1/2,-y+5/4', '-x+1/2,-z+1/2,-y+1/2', 'y+1/2,z,x+1/2', 'y+1,-z+1/4,-x+5/4', 'z+3/4,y+3/4,-x+1/2', '-y+5/4,z+1/2,-x+3/4', '-z+1,-y+1/2,-x+1', '-y+3/4,-z+1/4,x+1/2', 'z+3/4,-y,x+5/4', '-z+1/2,y+3/4,x+3/4', '-x+1/2,-y,-z+1/2', 'y,-x-1/4,-z+1/4', 'x+1/4,y-3/4,-z', '-y-1/4,x-1/2,-z-1/4', '-x+1/2,y-1/4,z+1/4', '-y+1/4,-x-1/4,z', 'x+1/4,-y-1/2,z-1/4', 'y+1/2,x-1/2,z+1/2', '-z+1/2,-x,-y+1/2', 'x,-z-1/4,-y+1/4', 'z+1/4,x-3/4,-y', '-x-1/4,z-1/2,-y-1/4', '-z+1/2,x-1/4,y+1/4', '-x+1/4,-z-1/4,y', 'z+1/4,-x-1/2,y-1/4', 'x+1/2,z-1/2,y+1/2', '-y+1/2,-z,-x+1/2', '-y,z-1/4,x-1/4', '-z+1/4,-y-3/4,x+1/2', 'y-1/4,-z-1/2,x+1/4', 'z,y-1/2,x', 'y+1/4,z-1/4,-x+1/2', '-z+1/4,y,-x-1/4', 'z+1/2,-y-3/4,-x+1/4', 'x+1/2,y+1/2,z', '-y+1,x+3/4,z+1/4', '-x+3/4,-y+5/4,z+1/2', 'y+5/4,-x+1,z+3/4', 'x+1/2,-y+3/4,-z+1/4', 'y+3/4,x+3/4,-z+1/2', '-x+3/4,y+1,-z+3/4', '-y+1/2,-x+1,-z', 'z+1/2,x+1/2,y', '-x+1,z+3/4,y+1/4', '-z+3/4,-x+5/4,y+1/2', 'x+5/4,-z+1,y+3/4', 'z+1/2,-x+3/4,-y+1/4', 'x+3/4,z+3/4,-y+1/2', '-z+3/4,x+1,-y+3/4', '-x+1/2,-z+1,-y', 'y+1/2,z+1/2,x', 'y+1,-z+3/4,-x+3/4', 'z+3/4,y+5/4,-x', '-y+5/4,z+1,-x+1/4', '-z+1,-y+1,-x+1/2', '-y+3/4,-z+3/4,x', 'z+3/4,-y+1/2,x+3/4', '-z+1/2,y+5/4,x+1/4', '-x+1/2,-y+1/2,-z', 'y,-x+1/4,-z-1/4', 'x+1/4,y-1/4,-z-1/2', '-y-1/4,x,-z-3/4', '-x+1/2,y+1/4,z-1/4', '-y+1/4,-x+1/4,z-1/2', 'x+1/4,-y,z-3/4', 'y+1/2,x,z', '-z+1/2,-x+1/2,-y', 'x,-z+1/4,-y-1/4', 'z+1/4,x-1/4,-y-1/2', '-x-1/4,z,-y-3/4', '-z+1/2,x+1/4,y-1/4', '-x+1/4,-z+1/4,y-1/2', 'z+1/4,-x,y-3/4', 'x+1/2,z,y', '-y+1/2,-z+1/2,-x', '-y,z+1/4,x-3/4', '-z+1/4,-y-1/4,x', 'y-1/4,-z,x-1/4', 'z,y,x-1/2', 'y+1/4,z+1/4,-x', '-z+1/4,y+1/2,-x-3/4', 'z+1/2,-y-1/4,-x-1/4'], 'universal_h_m': 'Fd-3c:2'}, {'hall': '-I 4 2 3', 'hermann_mauguin': 'Im-3m', 'hermann_mauguin_u': 'Im-3m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x'], 'number': 229, 'point_group': 'm-3m', 'schoenflies': 'Oh^9', 'short_h_m': 'Im-3m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z+1/2,x+1/2,y+1/2', '-x+1/2,z+1/2,y+1/2', '-z+1/2,-x+1/2,y+1/2', 'x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,-y+1/2', 'x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1/2', 'z+1/2,y+1/2,-x+1/2', '-y+1/2,z+1/2,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x+1/2', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'x+1/2,-z+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', '-x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'universal_h_m': 'Im-3m'}, {'hall': '-I 4bd 2c 3', 'hermann_mauguin': 'Ia-3d', 'hermann_mauguin_u': 'Ia-3d', 'ncsym': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z,-x,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z+1/2,x,-y', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z-1/2', '-y-1/4,-x-3/4,z-3/4', 'x-1/2,-y,z', 'y-1/4,x-1/4,z-1/4', '-z,-x,-y', 'x-1/4,-z-3/4,-y-1/4', 'z-1/2,x,-y-1/2', '-x-1/4,z-1/4,-y-3/4', '-z,x,y-1/2', '-x-1/4,-z-3/4,y-3/4', 'z-1/2,-x,y', 'x-1/4,z-1/4,y-1/4', '-y,-z,-x', '-y-1/2,z-1/2,x', '-z-3/4,-y-1/4,x-1/4', 'y,-z-1/2,x-1/2', 'z-1/4,y-1/4,x-1/4', 'y-1/2,z,-x-1/2', '-z-3/4,y-3/4,-x-1/4', 'z-3/4,-y-1/4,-x-3/4'], 'number': 230, 'point_group': 'm-3m', 'schoenflies': 'Oh^10', 'short_h_m': 'Ia-3d', 'symops': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z,-x,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z+1/2,x,-y', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z-1/2', '-y-1/4,-x-3/4,z-3/4', 'x-1/2,-y,z', 'y-1/4,x-1/4,z-1/4', '-z,-x,-y', 'x-1/4,-z-3/4,-y-1/4', 'z-1/2,x,-y-1/2', '-x-1/4,z-1/4,-y-3/4', '-z,x,y-1/2', '-x-1/4,-z-3/4,y-3/4', 'z-1/2,-x,y', 'x-1/4,z-1/4,y-1/4', '-y,-z,-x', '-y-1/2,z-1/2,x', '-z-3/4,-y-1/4,x-1/4', 'y,-z-1/2,x-1/2', 'z-1/4,y-1/4,x-1/4', 'y-1/2,z,-x-1/2', '-z-3/4,y-3/4,-x-1/4', 'z-3/4,-y-1/4,-x-3/4', 'x+1/2,y+1/2,z+1/2', '-y+3/4,x+5/4,z+3/4', '-x+1,-y+1/2,z+1', 'y+3/4,-x+3/4,z+5/4', 'x+1/2,-y+1/2,-z+1', 'y+3/4,x+5/4,-z+5/4', '-x+1,y+1/2,-z+1/2', '-y+3/4,-x+3/4,-z+3/4', 'z+1/2,x+1/2,y+1/2', '-x+3/4,z+5/4,y+3/4', '-z+1,-x+1/2,y+1', 'x+3/4,-z+3/4,y+5/4', 'z+1/2,-x+1/2,-y+1', 'x+3/4,z+5/4,-y+5/4', '-z+1,x+1/2,-y+1/2', '-x+3/4,-z+3/4,-y+3/4', 'y+1/2,z+1/2,x+1/2', 'y+1,-z+1,-x+1/2', 'z+5/4,y+3/4,-x+3/4', '-y+1/2,z+1,-x+1', '-z+3/4,-y+3/4,-x+3/4', '-y+1,-z+1/2,x+1', 'z+5/4,-y+5/4,x+3/4', '-z+5/4,y+3/4,x+5/4', '-x+1/2,-y+1/2,-z+1/2', 'y+1/4,-x-1/4,-z+1/4', 'x,y+1/2,-z', '-y+1/4,x+1/4,-z-1/4', '-x+1/2,y+1/2,z', '-y+1/4,-x-1/4,z-1/4', 'x,-y+1/2,z+1/2', 'y+1/4,x+1/4,z+1/4', '-z+1/2,-x+1/2,-y+1/2', 'x+1/4,-z-1/4,-y+1/4', 'z,x+1/2,-y', '-x+1/4,z+1/4,-y-1/4', '-z+1/2,x+1/2,y', '-x+1/4,-z-1/4,y-1/4', 'z,-x+1/2,y+1/2', 'x+1/4,z+1/4,y+1/4', '-y+1/2,-z+1/2,-x+1/2', '-y,z,x+1/2', '-z-1/4,-y+1/4,x+1/4', 'y+1/2,-z,x', 'z+1/4,y+1/4,x+1/4', 'y,z+1/2,-x', '-z-1/4,y-1/4,-x+1/4', 'z-1/4,-y+1/4,-x-1/4'], 'universal_h_m': 'Ia-3d'}, {'hall': 'P 1 (1/2*x+1/2*y,1/2*x-1/2*y,-z)', 'hermann_mauguin': 'C1', 'hermann_mauguin_u': 'C1', 'ncsym': ['x, y, z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'C1', 'symops': ['x,y,z', '1/2+x,1/2+y,z'], 'universal_h_m': 'C1'}, {'hall': '-P 1 (-x,-1/2*y+1/2*z,1/2*y+1/2*z)', 'hermann_mauguin': 'A-1', 'hermann_mauguin_u': 'A-1', 'ncsym': ['x, y, z', '-x, -y, -z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'Ci^1', 'short_h_m': 'A-1', 'symops': ['x,y,z', '-x,-y,-z', 'x,1/2+y,1/2+z', '-x,1/2-y,1/2-z'], 'universal_h_m': 'A-1'}, {'hall': '-P 1 (-1/2*x+1/2*z,-y,1/2*x+1/2*z)', 'hermann_mauguin': 'B-1', 'hermann_mauguin_u': 'B-1', 'ncsym': ['x, y, z', '-x, -y, -z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'Ci^1', 'short_h_m': 'B-1', 'symops': ['x, y, z', 'x+1/2, y, z+1/2', '-x, -y, -z', '-x+1/2, -y, -z+1/2'], 'universal_h_m': 'B-1'}, {'hall': '-P 1 (-1/2*x+1/2*y+1/2*z,1/2*x-1/2*y+1/2*z,1/2*x+1/2*y-1/2*z)', 'hermann_mauguin': 'I-1', 'hermann_mauguin_u': 'I-1', 'ncsym': ['x,y,z', '-x,-y,-z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'D2^4', 'short_h_m': 'I-1', 'symops': ['x,y,z', '1/2-x,1/2-y,1/2-z', '1/2+x,1/2+y,1/2+z', '-x,-y,-z'], 'universal_h_m': 'I-1'}, {'hall': '-C 2yc (x+y-16/3*z,-x+y+16/3*z,1/3*z)', 'hermann_mauguin': 'R12/c1', 'hermann_mauguin_u': 'R12/c1', 'ncsym': ['x, y, z', 'y, x, -z+1/2', '-x, -y, -z', '-y, -x, z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'R2/c', 'symops': ['x, y, z', 'y, x, -z+1/2', 'x+2/3, y+1/3, z+1/3', 'y+2/3, x+1/3, -z+5/6', 'x+1/3, y+2/3, z+2/3', 'y+1/3, x+2/3, -z+7/6', '-x, -y, -z', '-y, -x, z-1/2', '-x+2/3, -y+1/3, -z+1/3', '-y+2/3, -x+1/3, z-1/6', '-x+1/3, -y+2/3, -z+2/3', '-y+1/3, -x+2/3, z+1/6'], 'universal_h_m': 'R12/c1'}, {'hall': ' P 2ac 2ab (x,y,z+1/4)', 'hermann_mauguin': 'P212121', 'hermann_mauguin_u': 'P2_12_12_1', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x+1/2,-y,z+1/2'], 'number': 19, 'point_group': '222', 'schoenflies': 'D2^4', 'short_h_m': 'P2_12_12_1', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x+1/2,-y,z+1/2'], 'universal_h_m': 'P212121(originshiftx,y,z+1/4)'}, {'hall': 'P 2yb (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'B1211', 'hermann_mauguin_u': 'B12_11', 'ncsym': ['x, y, z', '-x, y+1/2, -z'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'B2_1', 'symops': ['x, y, z', '-x, y+1/2, -z', 'x+1/2, y, z+1/2', '-x+1/2, y+1/2, -z+1/2'], 'universal_h_m': 'B1211'}, {'hall': '-P 1 (1/2*x+1/2*y,1/2*x-1/2*y,-z)', 'hermann_mauguin': 'C-1', 'hermann_mauguin_u': 'C-1', 'ncsym': ['x, y, z', '-x, -y, -z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'Ci^1', 'short_h_m': 'C-1', 'symops': ['x, y, z', 'x+1/2, y+1/2, z', '-x, -y, -z', '-x+1/2, -y+1/2, -z'], 'universal_h_m': 'C-1'}, {'hall': '-P 2yb (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'B121/m1', 'hermann_mauguin_u': 'B12_1/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,-y-1/2,z+1/2'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'B2_1/m', 'symops': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,-y-1/2,z+1/2'], 'universal_h_m': 'B121/m1'}, {'hall': ' P 1 (-x,-1/2*y+1/2*z,1/2*y+1/2*z)', 'hermann_mauguin': 'P1', 'hermann_mauguin_u': 'P1', 'ncsym': ['x,y,z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'P1', 'symops': ['x,y,z', 'x,y+1/2,z+1/2'], 'universal_h_m': 'P1(-a,-b+c,b+c)'}, {'hall': ' P 1 (-1/2*x+1/2*z,-y,1/2*x+1/2*z)', 'hermann_mauguin': 'P1', 'hermann_mauguin_u': 'P1', 'ncsym': ['x,y,z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'P1', 'symops': ['x,y,z', 'x+1/2,y,z+1/2'], 'universal_h_m': 'P1(-a+c,-b,a+c)'}, {'hall': ' P 1 (-1/2*x+1/2*y+1/2*z,1/2*x-1/2*y+1/2*z,1/2*x+1/2*y-1/2*z)', 'hermann_mauguin': 'P1', 'hermann_mauguin_u': 'P1', 'ncsym': ['x,y,z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'P1', 'symops': ['x,y,z', 'x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'P1(b+c,a+c,a+b)'}, {'hall': ' P 1 (1/2*y+1/2*z,1/2*x+1/2*z,1/2*x+1/2*y)', 'hermann_mauguin': 'P1', 'hermann_mauguin_u': 'P1', 'ncsym': ['x,y,z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'P1', 'symops': ['x,y,z', 'x,y+1/2,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,y+1/2,z'], 'universal_h_m': 'P1(-a+b+c,a-b+c,a+b-c)'}, {'hall': '-P 1 (1/2*y+1/2*z,1/2*x+1/2*z,1/2*x+1/2*y)', 'hermann_mauguin': 'P-1', 'hermann_mauguin_u': 'P-1', 'ncsym': ['x,y,z', '-x,-y,-z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'Ci^1', 'short_h_m': 'P-1', 'symops': ['x,y,z', '-x,-y,-z', 'x,y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,-z'], 'universal_h_m': 'P-1(-a+b+c,a-b+c,a+b-c)'}, {'hall': ' P 2y (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P121', 'hermann_mauguin_u': 'P121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 3, 'point_group': '2', 'schoenflies': 'C2^1', 'short_h_m': 'P2', 'symops': ['x,y,z', '-x,y,-z', 'x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2'], 'universal_h_m': 'P121(2*a+c,b,c)'}, {'hall': ' C 2y (x-1/2*z,y,1/2*z)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,y,-z', 'x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'C121(a,b,a+2*c)'}, {'hall': ' P 2y (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P121', 'hermann_mauguin_u': 'P121', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 3, 'point_group': '2', 'schoenflies': 'C2^1', 'short_h_m': 'P2', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z'], 'universal_h_m': 'P121(c,2*a+c,b)'}, {'hall': ' C 2y (1/2*z,x-1/2*z,y)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2'], 'universal_h_m': 'C121(a+2*c,a,b)'}, {'hall': ' C 2y (z,y+1/4,-x-1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y+1/2,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,y,-z+1/2', 'x,y+1/2,z+1/2', '-x,y+1/2,-z'], 'universal_h_m': 'C121(c-1/4,b-1/4,-a)'}, {'hall': ' C 2y (x+1/4,y+1/4,z)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y+1/2,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z'], 'universal_h_m': 'C121(a-1/4,b-1/4,c)'}, {'hall': ' C 2y (x+1/4,y+1/4,-x+z-1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y+1/2,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z'], 'universal_h_m': 'C121(a+c-1/4,b-1/4,c)'}, {'hall': ' C 2y (x-1/2*z+1/4,y+1/4,1/2*z)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y+1/2,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x+1/2,y,z+1/2', '-x,y,-z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'C121(a-1/4,b-1/4,a+2*c)'}, {'hall': ' C 2y (z,x+1/4,y+1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2'], 'universal_h_m': 'C121(c-1/4,a-1/4,b)'}, {'hall': ' C 2y (-x-1/4,z,y+1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,y,z+1/2', '-x,-y,z+1/2'], 'universal_h_m': 'C121(-a-1/4,c-1/4,b)'}, {'hall': ' P 2yb (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P1211', 'hermann_mauguin_u': 'P12_11', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'P2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P1211(c,2*a+c,b)'}, {'hall': ' C 2y (-x+z-1/4,x+1/4,y+1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2'], 'universal_h_m': 'C121(c-1/4,a+c-1/4,b)'}, {'hall': ' C 2y (1/2*z,x-1/2*z+1/4,y+1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,y+1/2,z', '-x+1/2,-y,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'C121(a+2*c-1/4,a-1/4,b)'}, {'hall': ' P -2y (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P1m1', 'hermann_mauguin_u': 'P1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', 'x,-y,z', 'x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P1m1(2*a+c,b,c)'}, {'hall': ' C -2y (x-1/2*z,y,1/2*z)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y,z', 'x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'C1m1(a,b,a+2*c)'}, {'hall': ' P -2y (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P1m1', 'hermann_mauguin_u': 'P1m1', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'P1m1(c,2*a+c,b)'}, {'hall': ' C -2y (1/2*z,x-1/2*z,y)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2'], 'universal_h_m': 'C1m1(a+2*c,a,b)'}, {'hall': ' P -2y (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P1m1', 'hermann_mauguin_u': 'P1m1', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', '-x,y,z', 'x,y+1/2,z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'P1m1(b,c,2*a+c)'}, {'hall': ' C -2y (y,1/2*z,x-1/2*z)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x,y,z', 'x,y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'C1m1(b,a+2*c,a)'}, {'hall': ' C -2y (z,y+1/4,-x-1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'C1m1(c-1/4,b-1/4,-a)'}, {'hall': ' P -2yc (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P1c1', 'hermann_mauguin_u': 'P1c1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pc', 'symops': ['x,y,z', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'universal_h_m': 'P1c1(2*a+c,b,c)'}, {'hall': ' C -2y (x-1/2*z+1/4,y+1/4,1/2*z)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y+1/2,z', 'x+1/2,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'C1m1(a-1/4,b-1/4,a+2*c)'}, {'hall': ' C -2y (x+1/4,y+1/4,-x+z-1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x+1/2,-y,z+1/2'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'C1m1(a+c-1/4,b-1/4,c)'}, {'hall': ' C -2y (x+1/4,y+1/4,z)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x+1/2,-y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'C1m1(a-1/4,b-1/4,c)'}, {'hall': ' C -2y (-x-1/4,z,y+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,y,-z'], 'universal_h_m': 'C1m1(-a-1/4,c-1/4,b)'}, {'hall': ' P -2yc (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P1c1', 'hermann_mauguin_u': 'P1c1', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pc', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,y+1/2,z', 'x,y+1/2,-z'], 'universal_h_m': 'P1c1(c,2*a+c,b)'}, {'hall': ' C -2y (1/2*z,x-1/2*z+1/4,y+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z+1/2', 'x,y+1/2,z+1/2', 'x,y+1/2,-z', 'x+1/2,y,z+1/2', 'x+1/2,y,-z'], 'universal_h_m': 'C1m1(a+2*c-1/4,a-1/4,b)'}, {'hall': ' C -2y (-x+z-1/4,x+1/4,y+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'C1m1(c-1/4,a+c-1/4,b)'}, {'hall': ' C -2y (z,x+1/4,y+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,y+1/2,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x,y+1/2,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'C1m1(c-1/4,a-1/4,b)'}, {'hall': ' P -2yc (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P1c1', 'hermann_mauguin_u': 'P1c1', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pc', 'symops': ['x,y,z', '-x,y+1/2,z', 'x,y+1/2,z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'P1c1(b,c,2*a+c)'}, {'hall': ' C -2y (y+1/4,-x-1/4,z)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x+1/2,y,z', 'x+1/2,y+1/2,z', '-x,y+1/2,z'], 'universal_h_m': 'C1m1(b-1/4,-a-1/4,c)'}, {'hall': ' C -2y (y+1/4,1/2*z,x-1/2*z+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x+1/2,y,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,y,z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,z'], 'universal_h_m': 'C1m1(b-1/4,a+2*c-1/4,a)'}, {'hall': ' C -2y (y+1/4,-x+z-1/4,x+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', '-x,y+1/2,z+1/2'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x+1/2,y,z', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'C1m1(b-1/4,c-1/4,a+c)'}, {'hall': ' C -2y (y+1/4,z,x+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', '-x,y,z+1/2'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x+1/2,y,z', 'x+1/2,y,z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'C1m1(b-1/4,c-1/4,a)'}, {'hall': '-P 2y (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P12/m1', 'hermann_mauguin_u': 'P12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P12/m1(2*a+c,b,c)'}, {'hall': '-C 2y (x-1/2*z,y,1/2*z)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'C12/m1(a,b,a+2*c)'}, {'hall': '-P 2y (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P12/m1', 'hermann_mauguin_u': 'P12/m1', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'P12/m1(c,2*a+c,b)'}, {'hall': '-C 2y (1/2*z,x-1/2*z,y)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2'], 'universal_h_m': 'C12/m1(a+2*c,a,b)'}, {'hall': '-P 2y (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P12/m1', 'hermann_mauguin_u': 'P12/m1', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z', 'x,y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'P12/m1(b,c,2*a+c)'}, {'hall': '-C 2y (y,1/2*z,x-1/2*z)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z', 'x,y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'C12/m1(b,a+2*c,a)'}, {'hall': '-C 2y (z,y-1/4,-x-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y+1/2,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y,z+1/2'], 'universal_h_m': 'C12/m1(c-1/4,b+1/4,-a)'}, {'hall': '-C 2y (x+1/4,y-1/4,z)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y+1/2,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,-y,z'], 'universal_h_m': 'C12/m1(a-1/4,b+1/4,c)'}, {'hall': '-C 2y (x+1/4,y-1/4,-x+z-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y+1/2,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'C12/m1(a+c-1/4,b+1/4,c)'}, {'hall': '-C 2y (x-1/2*z+1/4,y-1/4,1/2*z)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y+1/2,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'x,-y+1/2,z', 'x+1/2,y,z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'C12/m1(a-1/4,b+1/4,a+2*c)'}, {'hall': '-C 2y (z,x+1/4,y-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,-y+1/2,-z+1/2', 'x,y,-z+1/2', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,-y,-z', 'x,y+1/2,-z'], 'universal_h_m': 'C12/m1(c-1/4,a+1/4,b)'}, {'hall': '-C 2y (-x-1/4,z,y-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x+1/2,-y,-z+1/2', 'x,y,-z+1/2', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', '-x,-y,-z', 'x+1/2,y,-z'], 'universal_h_m': 'C12/m1(-a-1/4,c+1/4,b)'}, {'hall': '-P 2yb (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P121/m1', 'hermann_mauguin_u': 'P12_1/m1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'P2_1/m', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'P121/m1(c,2*a+c,b)'}, {'hall': '-C 2y (-x+z-1/4,x+1/4,y-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'C12/m1(c-1/4,a+c+1/4,b)'}, {'hall': '-C 2y (1/2*z,x-1/2*z+1/4,y-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,-y+1/2,-z+1/2', 'x,y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z', '-x+1/2,-y,-z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,-y,-z', 'x,y+1/2,-z', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y,-z'], 'universal_h_m': 'C12/m1(a+2*c-1/4,a+1/4,b)'}, {'hall': '-P 2yb (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P121/m1', 'hermann_mauguin_u': 'P12_1/m1', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'P2_1/m', 'symops': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z', 'x,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'P121/m1(b,c,2*a+c)'}, {'hall': '-C 2y (y-1/4,z,x+1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+1/2,y,z', 'x+1/2,y,z+1/2', 'x+1/2,-y,-z', '-x,-y,-z', '-x,y,z+1/2'], 'universal_h_m': 'C12/m1(b-1/4,c+1/4,a)'}, {'hall': '-C 2y (y-1/4,-x-1/4,z)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+1/2,y,z', 'x+1/2,y+1/2,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x,y+1/2,z'], 'universal_h_m': 'C12/m1(b-1/4,-a+1/4,c)'}, {'hall': '-C 2y (y-1/4,-x+z-1/4,x+1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y,-z', '-x,-y,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'C12/m1(b-1/4,c+1/4,a+c)'}, {'hall': '-C 2y (y-1/4,1/2*z,x-1/2*z+1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+1/2,y,z', 'x,y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,-y,-z', '-x,-y,-z', '-x,y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', '-x,y+1/2,z'], 'universal_h_m': 'C12/m1(b-1/4,a+2*c+1/4,a)'}, {'hall': '-P 2yc (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P12/c1', 'hermann_mauguin_u': 'P12/c1', 'ncsym': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z+1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,-y,z'], 'universal_h_m': 'P12/c1(2*a+c,b,c)'}, {'hall': '-P 2yc (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P12/c1', 'hermann_mauguin_u': 'P12/c1', 'ncsym': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x+1/2,y,-z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x+1/2,y,-z', 'x+1/2,y+1/2,z', '-x,-y+1/2,z', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z'], 'universal_h_m': 'P12/c1(c,2*a+c,b)'}, {'hall': '-P 2yc (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P12/c1', 'hermann_mauguin_u': 'P12/c1', 'ncsym': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y+1/2,z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y+1/2,z', 'x,y+1/2,z+1/2', 'x,-y,-z+1/2', '-x,-y+1/2,-z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'P12/c1(b,c,2*a+c)'}, {'hall': '-P 2ybc (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P121/c1', 'hermann_mauguin_u': 'P12_1/c1', 'ncsym': ['x,y,z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,-y+1/2,z+1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P121/c1(2*a+c,b,c)'}, {'hall': '-P 2ybc (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P121/c1', 'hermann_mauguin_u': 'P12_1/c1', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,-y,-z', 'x+1/2,y,-z+1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,-y,-z', 'x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'P121/c1(c,2*a+c,b)'}, {'hall': '-P 2ybc (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P121/c1', 'hermann_mauguin_u': 'P12_1/c1', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x+1/2,y+1/2,z'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x+1/2,y+1/2,z', 'x,y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x,-y+1/2,-z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'P121/c1(b,c,2*a+c)'}, {'hall': ' A 2 -2 (x,y-1/4,z+1/4)', 'hermann_mauguin': 'Amm2', 'hermann_mauguin_u': 'Amm2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Amm2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Amm2(a,b+1/4,c-1/4)'}, {'hall': ' A 2 -2b (y-1/4,-x,z+1/4)', 'hermann_mauguin': 'Aem2', 'hermann_mauguin_u': 'Aem2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Aem2', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,z', '-x,y,z', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', 'x,-y,z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'Aem2(b,-a+1/4,c-1/4)'}, {'hall': ' I 2 -2a (x+1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'Ima2', 'hermann_mauguin_u': 'Ima2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ima2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,y,z', 'x+1/2,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Ima2(a-1/4,b-1/4,c+1/4)'}, {'hall': ' F 2 -2 (x,y+1/4,z+1/4)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Fmm2(a,b-1/4,c-1/4)'}, {'hall': ' A 2 -2b (x,y-1/4,z+1/4)', 'hermann_mauguin': 'Aem2', 'hermann_mauguin_u': 'Aem2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Aem2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,y+1/2,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Aem2(a,b+1/4,c-1/4)'}, {'hall': ' A 2 -2 (y-1/4,-x,z+1/4)', 'hermann_mauguin': 'Amm2', 'hermann_mauguin_u': 'Amm2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Amm2', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,z', '-x+1/2,y,z', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y,z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'Amm2(b,-a+1/4,c-1/4)'}, {'hall': ' I 2 -2a (y+1/4,-x-1/4,z-1/4)', 'hermann_mauguin': 'Ima2', 'hermann_mauguin_u': 'Ima2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ima2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'Ima2(b-1/4,-a-1/4,c+1/4)'}, {'hall': ' F 2 -2 (x-1/4,y,z-1/4)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x+1/2,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', '-x,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z', '-x,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Fmm2(a+1/4,b,c+1/4)'}, {'hall': ' A 2 -2b (-x,z+1/4,y-1/4)', 'hermann_mauguin': 'Aem2', 'hermann_mauguin_u': 'Aem2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Aem2', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,y,z+1/2', 'x,y,-z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', '-x,y+1/2,z', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'Aem2(-a,c+1/4,b-1/4)'}, {'hall': ' A 2 -2 (y-1/4,z+1/4,x)', 'hermann_mauguin': 'Amm2', 'hermann_mauguin_u': 'Amm2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Amm2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x,y,-z', '-x+1/2,y,z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z'], 'universal_h_m': 'Amm2(b,c+1/4,a-1/4)'}, {'hall': ' I 2 -2a (y+1/4,z-1/4,x+1/4)', 'hermann_mauguin': 'Ima2', 'hermann_mauguin_u': 'Ima2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ima2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y,-z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z'], 'universal_h_m': 'Ima2(b-1/4,c-1/4,a+1/4)'}, {'hall': ' F 2 -2 (y+1/4,z+1/4,x)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x,y,-z', '-x+1/2,y,z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,y,-z+1/2', 'x+1/2,y,-z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'Fmm2(b,c-1/4,a-1/4)'}, {'hall': ' A 2 -2 (-x,z+1/4,y-1/4)', 'hermann_mauguin': 'Amm2', 'hermann_mauguin_u': 'Amm2', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Amm2', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,y,z', 'x,y,-z+1/2', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', '-x,y+1/2,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'Amm2(-a,c+1/4,b-1/4)'}, {'hall': ' A 2 -2b (y-1/4,z+1/4,x)', 'hermann_mauguin': 'Aem2', 'hermann_mauguin_u': 'Aem2', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Aem2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x+1/2,y,-z', '-x,y,z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'Aem2(b,c+1/4,a-1/4)'}, {'hall': ' I 2 -2a (-x-1/4,z-1/4,y+1/4)', 'hermann_mauguin': 'Ima2', 'hermann_mauguin_u': 'Ima2', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ima2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,y,z', 'x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'Ima2(-a-1/4,c-1/4,b+1/4)'}, {'hall': ' F 2 -2 (y,z-1/4,x-1/4)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x,y,-z+1/2', 'x,y,-z+1/2', '-x,y,z', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', 'x,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y,-z', 'x+1/2,y,-z', '-x+1/2,y,z+1/2'], 'universal_h_m': 'Fmm2(b+1/4,c,a+1/4)'}, {'hall': ' F 2 -2 (x-1/4,y-1/4,z+1/2)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x+1/2,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x,-y+1/2,z+1/2', '-x,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Fmm2(a+1/4,b+1/4,c+1/2)'}, {'hall': ' F 2 -2 (y-1/4,z+1/2,x-1/4)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,y,-z', 'x+1/2,y,-z', '-x,y,z+1/2'], 'universal_h_m': 'Fmm2(b+1/4,c+1/4,a+1/2)'}, {'hall': ' C 2 -2 (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cmm2', 'hermann_mauguin_u': 'Cmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'Cmm2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x+1/2,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-x,-y,z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Cmm2(a-1/4,b-1/4,c)'}, {'hall': ' C 2 -2 (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cmm2', 'hermann_mauguin_u': 'Cmm2', 'ncsym': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'Cmm2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x+1/2,y,z+1/2', '-x,y,-z', 'x+1/2,y,-z', '-x,y,z+1/2'], 'universal_h_m': 'Cmm2(b-1/4,c-1/4,a)'}, {'hall': ' A 2 -2ab (x,y-1/4,z+1/4)', 'hermann_mauguin': 'Aea2', 'hermann_mauguin_u': 'Aea2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Aea2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x+1/2,y+1/2,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Aea2(a,b+1/4,c-1/4)'}, {'hall': ' C 2c -2 (y+1/4,-x-1/4,z)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z+1/2', 'x+1/2,-y,z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmc21(b-1/4,-a-1/4,c)'}, {'hall': ' I 2 -2c (x+1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'Iba2', 'hermann_mauguin_u': 'Iba2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'number': 45, 'point_group': 'mm2', 'schoenflies': 'C2v^21', 'short_h_m': 'Iba2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x+1/2,y,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Iba2(a-1/4,b-1/4,c+1/4)'}, {'hall': ' A 2 -2ab (y-1/4,-x,z+1/4)', 'hermann_mauguin': 'Aea2', 'hermann_mauguin_u': 'Aea2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y+1/2,z', 'x,-y+1/2,z+1/2'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Aea2', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y+1/2,z', '-x,y+1/2,z', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', 'x,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Aea2(b,-a+1/4,c-1/4)'}, {'hall': ' C 2c -2 (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y+1/2,z', 'x,-y+1/2,z+1/2'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmc21(a-1/4,b-1/4,c)'}, {'hall': ' C 2c -2 (-x-1/4,z,y+1/4)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', '-x,y+1/2,-z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x,y+1/2,-z', '-x,y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmc21(-a-1/4,c-1/4,b)'}, {'hall': ' A 2 -2ab (y-1/4,z+1/4,x)', 'hermann_mauguin': 'Aea2', 'hermann_mauguin_u': 'Aea2', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', '-x,y+1/2,-z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Aea2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x+1/2,y,-z+1/2', '-x,y,z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Aea2(b,c+1/4,a-1/4)'}, {'hall': ' I 2 -2c (y+1/4,z-1/4,x+1/4)', 'hermann_mauguin': 'Iba2', 'hermann_mauguin_u': 'Iba2', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', '-x,y+1/2,-z'], 'number': 45, 'point_group': 'mm2', 'schoenflies': 'C2v^21', 'short_h_m': 'Iba2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z', 'x+1/2,y,-z', '-x,y,z+1/2'], 'universal_h_m': 'Iba2(b-1/4,c-1/4,a+1/4)'}, {'hall': ' A 2 -2ab (-x,z+1/4,y-1/4)', 'hermann_mauguin': 'Aea2', 'hermann_mauguin_u': 'Aea2', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y+1/2,z', '-x,y+1/2,-z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Aea2', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,y,-z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Aea2(-a,c+1/4,b-1/4)'}, {'hall': ' C 2c -2 (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y+1/2,z', '-x,y+1/2,-z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y+1/2,-z', 'x+1/2,y,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmc21(b-1/4,c-1/4,a)'}, {'hall': ' C 2 -2c (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Ccc2', 'hermann_mauguin_u': 'Ccc2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'number': 37, 'point_group': 'mm2', 'schoenflies': 'C2v^13', 'short_h_m': 'Ccc2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x+1/2,y,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Ccc2(a-1/4,b-1/4,c)'}, {'hall': ' C 2 -2c (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Ccc2', 'hermann_mauguin_u': 'Ccc2', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x,y,-z'], 'number': 37, 'point_group': 'mm2', 'schoenflies': 'C2v^13', 'short_h_m': 'Ccc2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Ccc2(b-1/4,c-1/4,a)'}, {'hall': ' A 2 -2a (x-1/4,y-1/4,z+1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,y,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Ama2(a+1/4,b+1/4,c-1/4)'}, {'hall': ' C 2c -2 (x,y-1/4,z)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y,z', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmc21(a,b+1/4,c)'}, {'hall': ' I 2 -2 (x,y+1/4,z)', 'hermann_mauguin': 'Imm2', 'hermann_mauguin_u': 'Imm2', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Imm2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Imm2(a,b-1/4,c)'}, {'hall': ' A 2 -2a (y-1/4,-x+1/4,z+1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y,z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Ama2(b+1/4,-a+1/4,c-1/4)'}, {'hall': ' C 2c -2 (y-1/4,-x,z)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmc21(b,-a+1/4,c)'}, {'hall': ' I 2 -2 (x+1/4,y,z-1/4)', 'hermann_mauguin': 'Imm2', 'hermann_mauguin_u': 'Imm2', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Imm2', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x+1/2,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Imm2(a-1/4,b,c+1/4)'}, {'hall': ' C 2c -2 (y-1/4,z,x)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', 'x,y,-z', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmc21(b,c+1/4,a)'}, {'hall': ' A 2 -2a (y-1/4,z+1/4,x-1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y,-z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Ama2(b+1/4,c+1/4,a-1/4)'}, {'hall': ' I 2 -2 (y+1/4,z,x)', 'hermann_mauguin': 'Imm2', 'hermann_mauguin_u': 'Imm2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Imm2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x,y,-z', '-x+1/2,y,z', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Imm2(b,c-1/4,a)'}, {'hall': ' A 2 -2a (-x+1/4,z+1/4,y-1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x,y,z', '-x+1/2,y+1/2,-z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,y,z', 'x+1/2,y,-z+1/2', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Ama2(-a+1/4,c+1/4,b-1/4)'}, {'hall': ' C 2c -2 (-x,z,y-1/4)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x,y,z', '-x+1/2,y+1/2,-z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x,y+1/2,-z+1/2', '-x,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmc21(-a,c+1/4,b)'}, {'hall': ' I 2 -2 (y,z-1/4,x+1/4)', 'hermann_mauguin': 'Imm2', 'hermann_mauguin_u': 'Imm2', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x,y,z', '-x+1/2,y+1/2,-z'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Imm2', 'symops': ['x,y,z', '-x,y,-z+1/2', 'x,y,-z+1/2', '-x,y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Imm2(b-1/4,c,a+1/4)'}, {'hall': ' A 2 -2a (x,y-1/4,z+1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x+1/2,y,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Ama2(a,b+1/4,c-1/4)'}, {'hall': ' A 2 -2a (y-1/4,-x,z+1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,z', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Ama2(b,-a+1/4,c-1/4)'}, {'hall': ' A 2 -2a (y-1/4,z+1/4,x)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', '-x,y+1/2,-z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Ama2(b,c+1/4,a-1/4)'}, {'hall': ' A 2 -2a (-x,z+1/4,y-1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x+1/2,y,z', 'x+1/2,y,-z+1/2', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Ama2(-a,c+1/4,b-1/4)'}, {'hall': '-C 2 2c (z+1/4,x,y)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,z', '-x+1/2,-y,-z', '-x+1/2,y,z', 'x+1/2,-y,z', 'x+1/2,y,-z', 'x,y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Cccm(c,a,b-1/4)'}, {'hall': '-C 2 2c (y,z+1/4,x)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,z', 'x,-y,-z', '-x,-y+1/2,-z', 'x,-y+1/2,z', 'x,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Cccm(b,c,a-1/4)'}, {'hall': '-C 2 2c (x,y,z+1/4)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z+1/2', 'x,y,-z+1/2', '-x,y,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Cccm(a,b,c-1/4)'}, {'hall': '-F 2 2 (x+1/4,y+1/4,z+1/4)', 'hermann_mauguin': 'Fmmm', 'hermann_mauguin_u': 'Fmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 69, 'point_group': 'mmm', 'schoenflies': 'D2h^23', 'short_h_m': 'Fmmm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y,-z', '-x,-y+1/2,-z', 'x+1/2,y,-z', '-x,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Fmmm(a-1/4,b-1/4,c-1/4)'}, {'hall': '-C 2 2c (z,x+1/4,y+1/4)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,z', '-x,-y+1/2,-z+1/2', '-x,y,z', 'x+1/2,-y+1/2,z', 'x+1/2,y,-z+1/2', 'x,y+1/2,z+1/2', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,z+1/2', '-x,-y,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cccm(c-1/4,a-1/4,b)'}, {'hall': '-C 2 2c (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,-y,z', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y,-z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,-y,-z', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cccm(b-1/4,c-1/4,a)'}, {'hall': '-C 2 2c (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y,-z', '-x+1/2,y,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cccm(a-1/4,b-1/4,c)'}, {'hall': '-I 2 2 (x-1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'Immm', 'hermann_mauguin_u': 'Immm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 71, 'point_group': 'mmm', 'schoenflies': 'D2h^25', 'short_h_m': 'Immm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Immm(a+1/4,b-1/4,c+1/4)'}, {'hall': '-F 2 2 (x-1/4,y-1/4,z)', 'hermann_mauguin': 'Fmmm', 'hermann_mauguin_u': 'Fmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'number': 69, 'point_group': 'mmm', 'schoenflies': 'D2h^23', 'short_h_m': 'Fmmm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'x,y,-z', '-x+1/2,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Fmmm(a+1/4,b+1/4,c)'}, {'hall': '-F 2 2 (x+1/2,y-1/4,z-1/4)', 'hermann_mauguin': 'Fmmm', 'hermann_mauguin_u': 'Fmmm', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x+1/2,y,-z', '-x,y,z', 'x+1/2,-y,z'], 'number': 69, 'point_group': 'mmm', 'schoenflies': 'D2h^23', 'short_h_m': 'Fmmm', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y+1/2,-z', '-x,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y,-z', '-x+1/2,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Fmmm(a+1/2,b+1/4,c+1/4)'}, {'hall': '-F 2 2 (x+1/4,y+1/2,z-1/4)', 'hermann_mauguin': 'Fmmm', 'hermann_mauguin_u': 'Fmmm', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y+1/2,-z', '-x,y+1/2,z', 'x,-y,z'], 'number': 69, 'point_group': 'mmm', 'schoenflies': 'D2h^23', 'short_h_m': 'Fmmm', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x+1/2,y,-z', '-x,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Fmmm(a-1/4,b+1/2,c+1/4)'}, {'hall': '-I 2 2c (x,y,z-1/4)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z+1/2', 'x,y,-z+1/2', '-x,y,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Ibam(a,b,c+1/4)'}, {'hall': '-C 2 2 (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cmmm', 'hermann_mauguin_u': 'Cmmm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Cmmm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'x,y,-z', '-x+1/2,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-x,-y,z', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Cmmm(a-1/4,b-1/4,c)'}, {'hall': '-I 2 2c (x-1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Ibam(a+1/4,b-1/4,c+1/4)'}, {'hall': '-I 2 2c (z-1/4,x,y)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,z', '-x+1/2,-y,-z', '-x+1/2,y,z', 'x+1/2,-y,z', 'x+1/2,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'Ibam(c,a,b+1/4)'}, {'hall': '-C 2 2 (z,x+1/4,y+1/4)', 'hermann_mauguin': 'Cmmm', 'hermann_mauguin_u': 'Cmmm', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z', '-x,y+1/2,z+1/2', 'x,-y,z+1/2'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Cmmm', 'symops': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,z', '-x,-y+1/2,-z+1/2', '-x,y,z', 'x,-y+1/2,z', 'x,y,-z+1/2', 'x,y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,z+1/2', '-x,-y,-z', '-x,y+1/2,z+1/2', 'x,-y,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'Cmmm(c-1/4,a-1/4,b)'}, {'hall': '-I 2 2c (z-1/4,x-1/4,y+1/4)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z', '-x,y+1/2,z+1/2', 'x,-y,z+1/2'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,z', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,z', 'x+1/2,-y+1/2,z', 'x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,z+1/2', '-x,-y,-z', '-x,y+1/2,z+1/2', 'x,-y,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'Ibam(c+1/4,a-1/4,b+1/4)'}, {'hall': '-I 2 2c (y,z-1/4,x)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,z', 'x,-y,-z', '-x,-y+1/2,-z', 'x,-y+1/2,z', 'x,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'Ibam(b,c,a+1/4)'}, {'hall': '-C 2 2 (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cmmm', 'hermann_mauguin_u': 'Cmmm', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y,-z', '-x,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Cmmm', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,-y,z', 'x,y,-z+1/2', '-x+1/2,y,z', 'x+1/2,y,z+1/2', '-x,y,-z', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x,-y,-z', 'x+1/2,-y,z+1/2', 'x+1/2,y,-z', '-x,y,z+1/2'], 'universal_h_m': 'Cmmm(b-1/4,c-1/4,a)'}, {'hall': '-I 2 2c (y+1/4,z-1/4,x-1/4)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y,-z', '-x,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,-y+1/2,z', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,-y,-z', 'x+1/2,-y,z+1/2', 'x+1/2,y,-z', '-x,y,z+1/2'], 'universal_h_m': 'Ibam(b+1/4,c-1/4,a+1/4)'}, {'hall': '-C 2c 2 (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,-y+1/2,z', 'x,y,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y+1/2,-z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,-y,-z', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmcm(b-1/4,c-1/4,a)'}, {'hall': '-C 2c 2 (z,y+1/4,-x-1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,-y+1/2,z', '-x+1/2,y,-z+1/2', '-x,-y+1/2,-z+1/2', '-x+1/2,y,z', 'x,y,-z+1/2', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', 'x+1/2,-y,-z', '-x,-y,z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', '-x+1/2,y+1/2,z+1/2', 'x,y+1/2,-z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmcm(c-1/4,b-1/4,-a)'}, {'hall': '-C 2c 2 (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmcm(a-1/4,b-1/4,c)'}, {'hall': '-C 2c 2 (-x-1/4,z,y+1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', 'x,-y,-z+1/2', '-x+1/2,-y+1/2,z', '-x+1/2,-y,-z+1/2', 'x,-y+1/2,z', '-x+1/2,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x,y+1/2,-z', 'x+1/2,-y,-z', '-x,-y+1/2,z+1/2', '-x,-y,-z', 'x+1/2,-y+1/2,z+1/2', '-x,y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmcm(-a-1/4,c-1/4,b)'}, {'hall': '-C 2c 2 (z,x+1/4,y+1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x+1/2,-y+1/2,z', '-x,-y+1/2,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z', 'x+1/2,y,-z+1/2', 'x,y+1/2,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x+1/2,-y,z+1/2', '-x,-y,-z', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmcm(c-1/4,a-1/4,b)'}, {'hall': '-C 2c 2 (y+1/4,-x-1/4,z)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y,-z', 'x,-y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y,-z+1/2', 'x,-y+1/2,z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z+1/2', '-x,y+1/2,-z', 'x+1/2,-y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y,z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmcm(b-1/4,-a-1/4,c)'}, {'hall': '-C 2ac 2 (z,x+1/4,y+1/4)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x+1/2,y,-z', '-x+1/2,y,z+1/2', 'x,-y,z+1/2'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x+1/2,-y,z', '-x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,-z+1/2', 'x,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z', '-x+1/2,-y+1/2,z+1/2', '-x,-y,-z', '-x+1/2,y,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,-z'], 'universal_h_m': 'Cmce(c-1/4,a-1/4,b)'}, {'hall': '-C 2ac 2 (-x-1/4,z,y+1/4)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z', '-x,y,z+1/2', 'x,-y+1/2,z+1/2'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', '-x,y+1/2,-z+1/2', 'x,-y,-z+1/2', '-x,-y+1/2,z', '-x+1/2,-y,-z+1/2', 'x+1/2,-y+1/2,z', '-x+1/2,y,z', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z', 'x+1/2,-y,-z', '-x+1/2,-y+1/2,z+1/2', '-x,-y,-z', 'x,-y+1/2,z+1/2', '-x,y,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'Cmce(-a-1/4,c-1/4,b)'}, {'hall': '-C 2ac 2 (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x+1/2,y,-z', '-x,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,-y,-z+1/2', 'x,-y+1/2,z+1/2', 'x,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,-y+1/2,z', 'x+1/2,y,-z', '-x,y+1/2,z'], 'universal_h_m': 'Cmce(b-1/4,c-1/4,a)'}, {'hall': '-C 2ac 2 (y+1/4,-x-1/4,z)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x+1/2,y,-z+1/2', '-x,y,z+1/2', 'x+1/2,-y,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', '-x+1/2,y,-z', 'x,-y,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z+1/2', 'x,-y+1/2,z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,-z', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y,-z+1/2', 'x+1/2,-y,z', '-x,y,z+1/2'], 'universal_h_m': 'Cmce(b-1/4,-a-1/4,c)'}, {'hall': '-C 2ac 2 (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z+1/2', '-x,y+1/2,z', 'x,-y,z+1/2'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y,-z+1/2', '-x+1/2,y,z', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z+1/2', '-x,y+1/2,z', 'x,-y,z+1/2'], 'universal_h_m': 'Cmce(a-1/4,b-1/4,c)'}, {'hall': '-C 2ac 2 (z,y+1/4,-x-1/4)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y+1/2,z', '-x+1/2,y,-z', '-x,-y+1/2,-z+1/2', '-x+1/2,y,z+1/2', 'x,y,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x,-y,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', '-x+1/2,y+1/2,z', 'x,y+1/2,-z', 'x+1/2,-y,z'], 'universal_h_m': 'Cmce(c-1/4,b-1/4,-a)'}, {'hall': '-C 2c 2 (z-1/4,x+1/2,y+1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y,z', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,z', '-x+1/2,-y,-z+1/2', '-x,y,z', 'x,-y,z', 'x+1/2,y,-z+1/2', 'x,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmcm(c+1/2,a-1/4,b+1/4)'}, {'hall': '-C 2c 2 (-x+1/2,z-1/4,y+1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y,z', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x,y+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', '-x,-y,z', '-x,-y+1/2,-z+1/2', 'x,-y,z', '-x,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,-z', '-x+1/2,-y,z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmcm(-a+1/2,c-1/4,b+1/4)'}, {'hall': '-I 2 2 (x,y,z+1/4)', 'hermann_mauguin': 'Immm', 'hermann_mauguin_u': 'Immm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y,z', 'x,-y,z'], 'number': 71, 'point_group': 'mmm', 'schoenflies': 'D2h^25', 'short_h_m': 'Immm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z+1/2', 'x,y,-z+1/2', '-x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Immm(a,b,c-1/4)'}, {'hall': '-C 2c 2 (y+1/4,z-1/4,x+1/2)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,z', 'x,-y,-z', '-x+1/2,-y+1/2,-z', 'x,-y,z', 'x,y,-z', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y,-z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmcm(b+1/2,c-1/4,a+1/4)'}, {'hall': '-C 2c 2 (y+1/4,-x+1/2,z-1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', '-x+1/2,y,-z+1/2', 'x,-y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', 'x,-y,z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z', '-x,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmcm(b+1/2,-a-1/4,c+1/4)'}, {'hall': '-I 2 2 (x+1/4,y,z)', 'hermann_mauguin': 'Immm', 'hermann_mauguin_u': 'Immm', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 71, 'point_group': 'mmm', 'schoenflies': 'D2h^25', 'short_h_m': 'Immm', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x+1/2,-y,-z', 'x,y,-z', '-x+1/2,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Immm(a-1/4,b,c)'}, {'hall': '-C 2c 2 (z-1/4,y+1/4,-x+1/2)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,-y+1/2,z', '-x,y,-z', '-x+1/2,-y+1/2,-z', '-x,y,z', 'x,y,-z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,-y,z+1/2', '-x,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', '-x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmcm(c+1/2,b-1/4,-a+1/4)'}, {'hall': '-C 2c 2 (x+1/2,y+1/4,z-1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y,-z', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y,z', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmcm(a+1/2,b-1/4,c+1/4)'}, {'hall': '-I 2 2 (x,y+1/4,z)', 'hermann_mauguin': 'Immm', 'hermann_mauguin_u': 'Immm', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 71, 'point_group': 'mmm', 'schoenflies': 'D2h^25', 'short_h_m': 'Immm', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y+1/2,-z', 'x,y,-z', '-x,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Immm(a,b-1/4,c)'}, {'hall': '-I 4 (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', '-x+1/2,-y,-z+1/2', 'y+1/2,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x,-z+1/2', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', '-x,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x+1/2,-z+1/2'], 'universal_h_m': 'I4/m(a+b,-a+b,c)'}, {'hall': '-P 4 (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P4/m', 'hermann_mauguin_u': 'P4/m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z'], 'number': 83, 'point_group': '4/m', 'schoenflies': 'C4h^1', 'short_h_m': 'P4/m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z'], 'universal_h_m': 'P4/m(a+b,-a+b,c)'}, {'hall': '-I 4 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x,-z', 'x,y,-z', '-y,x+1/2,-z', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-x,-y,-z', 'y,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-x,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x,-z+1/2'], 'universal_h_m': 'I4/m(a+b+1/2,-a+b,c)'}, {'hall': '-P 4c (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P42/m', 'hermann_mauguin_u': 'P4_2/m', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2'], 'number': 84, 'point_group': '4/m', 'schoenflies': 'C4h^2', 'short_h_m': 'P4_2/m', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z+1/2'], 'universal_h_m': 'P42/m(a+b,-a+b,c)'}, {'hall': '-I 4 (x+1/2,y,z)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', '-x,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y,-z', '-y+1/2,x+1/2,-z', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z+1/2'], 'universal_h_m': 'I4/m(a+1/2,b,c)'}, {'hall': '-I 4 (x+1/2,y,z+1/4)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', '-x,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z'], 'universal_h_m': 'I4/m(a+1/2,b,c-1/4)'}, {'hall': '-P 4 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P4/m', 'hermann_mauguin_u': 'P4/m', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z'], 'number': 83, 'point_group': '4/m', 'schoenflies': 'C4h^1', 'short_h_m': 'P4/m', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y,-z', '-y+1/2,x,-z', 'x+1/2,y+1/2,z', '-y,x+1/2,z', '-x,-y,z', 'y+1/2,-x,z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z'], 'universal_h_m': 'P4/m(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 (x+1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y,z+1/2', 'y+1/2,-x,z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z'], 'universal_h_m': 'I4/m(a-1/4,b-1/4,c+1/4)'}, {'hall': '-I 4 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z+1/4)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x,-z+1/2', 'x,y,-z+1/2', '-y,x+1/2,-z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-x,-y,-z+1/2', 'y,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x,-z+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-x,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y,-z', '-y+1/2,x+1/2,-z', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y+1/2,-z', '-y,x,-z'], 'universal_h_m': 'I4/m(a+b+1/2,-a+b,c-1/4)'}, {'hall': '-P 4c (1/2*x+1/2*y,-1/2*x+1/2*y,z+1/4)', 'hermann_mauguin': 'P42/m', 'hermann_mauguin_u': 'P4_2/m', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z'], 'number': 84, 'point_group': '4/m', 'schoenflies': 'C4h^2', 'short_h_m': 'P4_2/m', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z+1/2', 'y,-x,-z', 'x,y,-z+1/2', '-y,x,-z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z'], 'universal_h_m': 'P42/m(a+b,-a+b,c-1/4)'}, {'hall': '-P 4c (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P42/m', 'hermann_mauguin_u': 'P4_2/m', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z+1/2', '-x,-y,-z', 'y,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z+1/2'], 'number': 84, 'point_group': '4/m', 'schoenflies': 'C4h^2', 'short_h_m': 'P4_2/m', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z+1/2', 'x,y,-z', '-y+1/2,x,-z+1/2', 'x+1/2,y+1/2,z', '-y,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x,z+1/2', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2'], 'universal_h_m': 'P42/m(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 2 (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'y,x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', '-y+1/2,-x,-z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'y+1/2,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x,-z+1/2', 'y+1/2,x,z+1/2', '-x+1/2,y,z+1/2', '-y+1/2,-x,z+1/2', 'x+1/2,-y,z+1/2', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x+1/2,-z+1/2', 'y,x+1/2,z+1/2', '-x,y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'I4/mmm(a+b,-a+b,c)'}, {'hall': '-P 4 2 (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P4/mmm', 'hermann_mauguin_u': 'P4/mmm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 123, 'point_group': '4/mmm', 'schoenflies': 'D4h^1', 'short_h_m': 'P4/mmm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'y,x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P4/mmm(a+b,-a+b,c)'}, {'hall': '-I 4 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z+1/2', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'y,x,z+1/2', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', '-y+1/2,-x,-z', 'x+1/2,-y,-z', 'y+1/2,x,-z', '-x+1/2,y,-z', '-x+1/2,-y,-z+1/2', 'y+1/2,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x,-z+1/2', 'y+1/2,x,z', '-x+1/2,y,z', '-y+1/2,-x,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', '-y,-x+1/2,-z', 'x,-y+1/2,-z', 'y,x+1/2,-z', '-x,y+1/2,-z', '-x,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x+1/2,-z+1/2', 'y,x+1/2,z', '-x,y+1/2,z', '-y,-x+1/2,z', 'x,-y+1/2,z'], 'universal_h_m': 'I4/mcm(a+b,-a+b,c)'}, {'hall': '-P 4 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P4/mcc', 'hermann_mauguin_u': 'P4/mcc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2'], 'number': 124, 'point_group': '4/mmm', 'schoenflies': 'D4h^2', 'short_h_m': 'P4/mcc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z+1/2', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'y,x,z+1/2', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P4/mcc(a+b,-a+b,c)'}, {'hall': '-I 4 2c (x,y,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z+1/2', 'y,-x,-z+1/2', 'x,y,-z+1/2', '-y,x,-z+1/2', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'I4/mcm(a,b,c+1/4)'}, {'hall': '-I 4 2 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z', 'y+1/2,x+1/2,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-y,-x,-z', 'x,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x,-z', 'x,y,-z', '-y,x+1/2,-z', 'y+1/2,x+1/2,z', '-x+1/2,y,z', '-y,-x,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y,-z', 'y,x,-z', '-x,y+1/2,-z', '-x,-y,-z', 'y,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z', 'y,x,z', '-x,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y,z', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-y+1/2,-x,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'y,x+1/2,z+1/2', '-x,y,z+1/2', '-y+1/2,-x,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x,-z+1/2', 'y+1/2,x,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'I4/mmm(a+b+1/2,-a+b,c)'}, {'hall': '-P 4 2 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P4/mmm', 'hermann_mauguin_u': 'P4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z', 'y+1/2,x+1/2,z'], 'number': 123, 'point_group': '4/mmm', 'schoenflies': 'D4h^1', 'short_h_m': 'P4/mmm', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y,-z', '-y+1/2,x,-z', 'y,x,z', '-x+1/2,y,z', '-y+1/2,-x+1/2,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-y,x+1/2,z', '-x,-y,z', 'y+1/2,-x,z', '-y,-x,-z', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', 'y+1/2,x+1/2,z', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z'], 'universal_h_m': 'P4/mmm(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 2c (x+1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z', 'y+1/2,x+1/2,z'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x,-z+1/2', '-x+1/2,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'y,x,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'I4/mcm(a-1/4,b-1/4,c+1/4)'}, {'hall': '-I 4 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-x,-y,-z+1/2', 'y,-x,-z+1/2', 'x,y,-z+1/2', '-y,x,-z+1/2', 'y,x,z+1/2', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', '-y+1/2,-x,-z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y,-z', '-y+1/2,x,-z', 'y+1/2,x,z', '-x+1/2,y,z', '-y+1/2,-x,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y+1/2,-z', '-y,x+1/2,-z', 'y,x+1/2,z', '-x,y+1/2,z', '-y,-x+1/2,z', 'x,-y+1/2,z'], 'universal_h_m': 'I4/mcm(a+b,-a+b,c+1/4)'}, {'hall': '-P 4 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z-1/4)', 'hermann_mauguin': 'P4/mcc', 'hermann_mauguin_u': 'P4/mcc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 124, 'point_group': '4/mmm', 'schoenflies': 'D4h^2', 'short_h_m': 'P4/mcc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-x,-y,-z+1/2', 'y,-x,-z+1/2', 'x,y,-z+1/2', '-y,x,-z+1/2', 'y,x,z+1/2', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P4/mcc(a+b,-a+b,c+1/4)'}, {'hall': '-I 4 2c (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-y,-x,-z+1/2', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x,-z', 'x,y,-z', '-y,x+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y,z+1/2', '-y,-x,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y,-z+1/2', 'y,x,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'y,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z', 'y,x,z+1/2', '-x,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-y+1/2,-x,-z', 'x+1/2,-y+1/2,-z', 'y,x+1/2,-z', '-x,y,-z', '-x,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'y,x+1/2,z', '-x,y,z', '-y+1/2,-x,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-y,-x+1/2,-z', 'x,-y,-z', 'y+1/2,x,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x,-z+1/2', 'y+1/2,x,z', '-x+1/2,y+1/2,z', '-y,-x+1/2,z', 'x,-y,z'], 'universal_h_m': 'I4/mcm(a+b+1/2,-a+b,c)'}, {'hall': '-P 4 2c (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P4/mcc', 'hermann_mauguin_u': 'P4/mcc', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 124, 'point_group': '4/mmm', 'schoenflies': 'D4h^2', 'short_h_m': 'P4/mcc', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y,-z', '-y+1/2,x,-z', 'y,x,z+1/2', '-x+1/2,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-y,x+1/2,z', '-x,-y,z', 'y+1/2,-x,z', '-y,-x,-z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P4/mcc(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 2 (x+1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x,-z+1/2', '-x+1/2,y,z', '-y+1/2,-x+1/2,z', 'x,-y+1/2,z', 'y,x,z', 'x+1/2,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z', '-y,-x,-z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'I4/mmm(a-1/4,b-1/4,c+1/4)'}, {'hall': '-I 4 2 (x+1/2,y,z+1/4)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z', '-y+1/2,-x+1/2,z', 'x,-y,z', 'y+1/2,x+1/2,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x,y,z', '-y+1/2,-x+1/2,z', 'x,-y,z', 'y+1/2,x+1/2,z', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y,x,z+1/2'], 'universal_h_m': 'I4/mmm(a+1/2,b,c-1/4)'}, {'hall': '-I 4 2c (x+1/2,y,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x,-y,-z', 'y+1/2,x+1/2,-z', '-x,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z+1/2', 'y+1/2,x+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x+1/2,y+1/2,z', '-y,-x,z', 'x+1/2,-y+1/2,z', 'y,x,z'], 'universal_h_m': 'I4/mcm(a+1/2,b,c+1/4)'}, {'hall': '-P 4c 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P42/mcm', 'hermann_mauguin_u': 'P4_2/mcm', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'y,x,z+1/2'], 'number': 132, 'point_group': '4/mmm', 'schoenflies': 'D4h^10', 'short_h_m': 'P4_2/mcm', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-y,-x,-z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', 'y,x,z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P42/mcm(a+b,-a+b,c)'}, {'hall': '-I 4 2 (x+1/2,y,z)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'y,x,z+1/2'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x,-y,-z', 'y+1/2,x+1/2,-z', '-x,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y,-z', '-y+1/2,x+1/2,-z', '-x,y,z', '-y+1/2,-x+1/2,z', 'x,-y,z', 'y+1/2,x+1/2,z', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y,x,z+1/2'], 'universal_h_m': 'I4/mmm(a+1/2,b,c)'}, {'hall': '-P 4c 2 (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P42/mmc', 'hermann_mauguin_u': 'P4_2/mmc', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'y,x,z'], 'number': 131, 'point_group': '4/mmm', 'schoenflies': 'D4h^9', 'short_h_m': 'P4_2/mmc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-y,-x,-z', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', 'y,x,z', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z+1/2', 'y+1/2,x+1/2,z', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P42/mmc(a+b,-a+b,c)'}, {'hall': '-I 4 2c (x+1/2,y,z)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'y,x,z'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y,-z', '-y+1/2,x+1/2,-z', '-x,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z+1/2', 'y+1/2,x+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z+1/2', '-x+1/2,y+1/2,z', '-y,-x,z', 'x+1/2,-y+1/2,z', 'y,x,z'], 'universal_h_m': 'I4/mcm(a+1/2,b,c)'}, {'hall': '-I 4 2c (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z', 'y,x,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-y,-x,-z', 'x,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x,-z+1/2', 'x,y,-z+1/2', '-y,x+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y,z+1/2', '-y,-x,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y,-z', 'y,x,-z', '-x,y+1/2,-z', '-x,-y,-z+1/2', 'y,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x,-z+1/2', 'y,x,z+1/2', '-x,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-y+1/2,-x,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y,-z', '-y+1/2,x+1/2,-z', 'y,x+1/2,z', '-x,y,z', '-y+1/2,-x,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y+1/2,-z', '-y,x,-z', 'y+1/2,x,z', '-x+1/2,y+1/2,z', '-y,-x+1/2,z', 'x,-y,z'], 'universal_h_m': 'I4/mcm(a+b+1/2,-a+b,c+1/4)'}, {'hall': '-P 4c 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z-1/4)', 'hermann_mauguin': 'P42/mcm', 'hermann_mauguin_u': 'P4_2/mcm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z', 'y,x,z+1/2'], 'number': 132, 'point_group': '4/mmm', 'schoenflies': 'D4h^10', 'short_h_m': 'P4_2/mcm', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-y,-x,-z', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-x,-y,-z+1/2', 'y,-x,-z', 'x,y,-z+1/2', '-y,x,-z', 'y,x,z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P42/mcm(a+b,-a+b,c+1/4)'}, {'hall': '-P 4c 2c (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P42/mcm', 'hermann_mauguin_u': 'P4_2/mcm', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', '-x,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y,z', 'y+1/2,x+1/2,z+1/2'], 'number': 132, 'point_group': '4/mmm', 'schoenflies': 'D4h^10', 'short_h_m': 'P4_2/mcm', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'x,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z+1/2', 'x,y,-z', '-y+1/2,x,-z+1/2', 'y,x,z+1/2', '-x+1/2,y,z', '-y+1/2,-x+1/2,z+1/2', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-y,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x,z+1/2', '-y,-x,-z+1/2', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y,z'], 'universal_h_m': 'P42/mcm(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 2c (x-1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', '-x,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y,z', 'y+1/2,x+1/2,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', 'x,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x,-z+1/2', 'x,y,-z+1/2', '-y,x+1/2,-z+1/2', '-x+1/2,y,z+1/2', '-y,-x,z+1/2', 'x,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x,z+1/2', '-x,-y,z+1/2', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z+1/2', 'y,x,-z+1/2', '-x,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z', '-x,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y,z', 'y,x,z'], 'universal_h_m': 'I4/mcm(a+1/4,b-1/4,c+1/4)'}, {'hall': '-I 4 2 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z+1/4)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-y,-x,-z+1/2', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x,-z+1/2', 'x,y,-z+1/2', '-y,x+1/2,-z+1/2', 'y+1/2,x+1/2,z', '-x+1/2,y,z', '-y,-x,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y,-z+1/2', 'y,x,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z+1/2', 'y,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x,-z+1/2', 'y,x,z', '-x,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y,z', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-y+1/2,-x,-z', 'x+1/2,-y+1/2,-z', 'y,x+1/2,-z', '-x,y,-z', '-x,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y,-z', '-y+1/2,x+1/2,-z', 'y,x+1/2,z+1/2', '-x,y,z+1/2', '-y+1/2,-x,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-y,-x+1/2,-z', 'x,-y,-z', 'y+1/2,x,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y+1/2,-z', '-y,x,-z', 'y+1/2,x,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'I4/mmm(a+b+1/2,-a+b,c-1/4)'}, {'hall': '-P 4c 2 (1/2*x+1/2*y,-1/2*x+1/2*y,z+1/4)', 'hermann_mauguin': 'P42/mmc', 'hermann_mauguin_u': 'P4_2/mmc', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'number': 131, 'point_group': '4/mmm', 'schoenflies': 'D4h^9', 'short_h_m': 'P4_2/mmc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-y,-x,-z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-x,-y,-z+1/2', 'y,-x,-z', 'x,y,-z+1/2', '-y,x,-z', 'y,x,z', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P42/mmc(a+b,-a+b,c-1/4)'}, {'hall': '-P 4c 2 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P42/mmc', 'hermann_mauguin_u': 'P4_2/mmc', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z'], 'number': 131, 'point_group': '4/mmm', 'schoenflies': 'D4h^9', 'short_h_m': 'P4_2/mmc', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z', 'x,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z+1/2', 'x,y,-z', '-y+1/2,x,-z+1/2', 'y,x,z', '-x+1/2,y,z+1/2', '-y+1/2,-x+1/2,z', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-y,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x,z+1/2', '-y,-x,-z', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', 'y+1/2,x+1/2,z', '-x,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P42/mmc(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 2 (x-1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x,-z+1/2', 'x,y,-z+1/2', '-y,x+1/2,-z+1/2', '-x+1/2,y,z', '-y,-x,z', 'x,-y+1/2,z', 'y+1/2,x+1/2,z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x,z+1/2', '-x,-y,z+1/2', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z', 'y,x,-z', '-x,y+1/2,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z', '-x,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y,z+1/2', 'y,x,z+1/2'], 'universal_h_m': 'I4/mmm(a+1/4,b-1/4,c+1/4)'}, {'hall': '-P 6 (1/2*x,1/2*y,1/2*z)', 'hermann_mauguin': 'P6/m', 'hermann_mauguin_u': 'P6/m', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z'], 'number': 175, 'point_group': '6/m', 'schoenflies': 'C6h^1', 'short_h_m': 'P6/m', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'x+1/2,y,z', 'x-y+1/2,x,z', '-y+1/2,x-y,z', '-x+1/2,-y,z', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z', 'y+1/2,-x+y,-z', 'x+1/2,y,-z', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z', 'x,y+1/2,z', 'x-y,x+1/2,z', '-y,x-y+1/2,z', '-x,-y+1/2,z', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z', 'y,-x+y+1/2,-z', 'x,y+1/2,-z', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z', 'x,y,z+1/2', 'x-y,x,z+1/2', '-y,x-y,z+1/2', '-x,-y,z+1/2', '-x+y,-x,z+1/2', 'y,-x+y,z+1/2', '-x,-y,-z+1/2', '-x+y,-x,-z+1/2', 'y,-x+y,-z+1/2', 'x,y,-z+1/2', 'x-y,x,-z+1/2', '-y,x-y,-z+1/2', 'x+1/2,y,z+1/2', 'x-y+1/2,x,z+1/2', '-y+1/2,x-y,z+1/2', '-x+1/2,-y,z+1/2', '-x+y+1/2,-x,z+1/2', 'y+1/2,-x+y,z+1/2', '-x+1/2,-y,-z+1/2', '-x+y+1/2,-x,-z+1/2', 'y+1/2,-x+y,-z+1/2', 'x+1/2,y,-z+1/2', 'x-y+1/2,x,-z+1/2', '-y+1/2,x-y,-z+1/2', 'x,y+1/2,z+1/2', 'x-y,x+1/2,z+1/2', '-y,x-y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x+y,-x+1/2,z+1/2', 'y,-x+y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', '-x+y,-x+1/2,-z+1/2', 'y,-x+y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', 'x-y,x+1/2,-z+1/2', '-y,x-y+1/2,-z+1/2', 'x+1/2,y+1/2,z+1/2', 'x-y+1/2,x+1/2,z+1/2', '-y+1/2,x-y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+y+1/2,-x+1/2,z+1/2', 'y+1/2,-x+y+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+y+1/2,-x+1/2,-z+1/2', 'y+1/2,-x+y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x-y+1/2,x+1/2,-z+1/2', '-y+1/2,x-y+1/2,-z+1/2'], 'universal_h_m': 'P6/m(2*a,2*b,2*c)'}, {'hall': '-P 6 (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P6/m', 'hermann_mauguin_u': 'P6/m', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z'], 'number': 175, 'point_group': '6/m', 'schoenflies': 'C6h^1', 'short_h_m': 'P6/m', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'x+1/2,y,z', 'x-y+1/2,x,z', '-y+1/2,x-y,z', '-x+1/2,-y,z', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z', 'y+1/2,-x+y,-z', 'x+1/2,y,-z', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z', 'x,y+1/2,z', 'x-y,x+1/2,z', '-y,x-y+1/2,z', '-x,-y+1/2,z', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z', 'y,-x+y+1/2,-z', 'x,y+1/2,-z', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z'], 'universal_h_m': 'P6/m(2*a,2*b,c)'}, {'hall': '-P 6c (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P63/m', 'hermann_mauguin_u': 'P6_3/m', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2'], 'number': 176, 'point_group': '6/m', 'schoenflies': 'C6h^2', 'short_h_m': 'P6_3/m', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2', 'x+1/2,y,z', 'x-y+1/2,x,z+1/2', '-y+1/2,x-y,z', '-x+1/2,-y,z+1/2', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z+1/2', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z+1/2', 'y+1/2,-x+y,-z', 'x+1/2,y,-z+1/2', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z+1/2', 'x,y+1/2,z', 'x-y,x+1/2,z+1/2', '-y,x-y+1/2,z', '-x,-y+1/2,z+1/2', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z+1/2', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z+1/2', 'y,-x+y+1/2,-z', 'x,y+1/2,-z+1/2', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z+1/2', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z+1/2', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z+1/2', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z+1/2', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z+1/2', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z+1/2'], 'universal_h_m': 'P63/m(2*a,2*b,c)'}, {'hall': '-P 6 2 (1/2*x,1/2*y,1/2*z)', 'hermann_mauguin': 'P6/mmm', 'hermann_mauguin_u': 'P6/mmm', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'number': 191, 'point_group': '6/mmm', 'schoenflies': 'D6h^1', 'short_h_m': 'P6/mmm', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z', 'x+1/2,y,z', 'x-y+1/2,x,z', '-y+1/2,x-y,z', '-x+1/2,-y,z', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z', '-y+1/2,-x,-z', 'x-y+1/2,-y,-z', 'x+1/2,x-y,-z', 'y+1/2,x,-z', '-x+y+1/2,y,-z', '-x+1/2,-x+y,-z', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z', 'y+1/2,-x+y,-z', 'x+1/2,y,-z', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z', 'y+1/2,x,z', '-x+y+1/2,y,z', '-x+1/2,-x+y,z', '-y+1/2,-x,z', 'x-y+1/2,-y,z', 'x+1/2,x-y,z', 'x,y+1/2,z', 'x-y,x+1/2,z', '-y,x-y+1/2,z', '-x,-y+1/2,z', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z', '-y,-x+1/2,-z', 'x-y,-y+1/2,-z', 'x,x-y+1/2,-z', 'y,x+1/2,-z', '-x+y,y+1/2,-z', '-x,-x+y+1/2,-z', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z', 'y,-x+y+1/2,-z', 'x,y+1/2,-z', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z', 'y,x+1/2,z', '-x+y,y+1/2,z', '-x,-x+y+1/2,z', '-y,-x+1/2,z', 'x-y,-y+1/2,z', 'x,x-y+1/2,z', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,-z', 'x-y+1/2,-y+1/2,-z', 'x+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+y+1/2,y+1/2,-z', '-x+1/2,-x+y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,z', '-x+y+1/2,y+1/2,z', '-x+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,z', 'x-y+1/2,-y+1/2,z', 'x+1/2,x-y+1/2,z', 'x,y,z+1/2', 'x-y,x,z+1/2', '-y,x-y,z+1/2', '-x,-y,z+1/2', '-x+y,-x,z+1/2', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z+1/2', 'x,x-y,-z+1/2', 'y,x,-z+1/2', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/2', '-x,-y,-z+1/2', '-x+y,-x,-z+1/2', 'y,-x+y,-z+1/2', 'x,y,-z+1/2', 'x-y,x,-z+1/2', '-y,x-y,-z+1/2', 'y,x,z+1/2', '-x+y,y,z+1/2', '-x,-x+y,z+1/2', '-y,-x,z+1/2', 'x-y,-y,z+1/2', 'x,x-y,z+1/2', 'x+1/2,y,z+1/2', 'x-y+1/2,x,z+1/2', '-y+1/2,x-y,z+1/2', '-x+1/2,-y,z+1/2', '-x+y+1/2,-x,z+1/2', 'y+1/2,-x+y,z+1/2', '-y+1/2,-x,-z+1/2', 'x-y+1/2,-y,-z+1/2', 'x+1/2,x-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+y+1/2,y,-z+1/2', '-x+1/2,-x+y,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+y+1/2,-x,-z+1/2', 'y+1/2,-x+y,-z+1/2', 'x+1/2,y,-z+1/2', 'x-y+1/2,x,-z+1/2', '-y+1/2,x-y,-z+1/2', 'y+1/2,x,z+1/2', '-x+y+1/2,y,z+1/2', '-x+1/2,-x+y,z+1/2', '-y+1/2,-x,z+1/2', 'x-y+1/2,-y,z+1/2', 'x+1/2,x-y,z+1/2', 'x,y+1/2,z+1/2', 'x-y,x+1/2,z+1/2', '-y,x-y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x+y,-x+1/2,z+1/2', 'y,-x+y+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x-y,-y+1/2,-z+1/2', 'x,x-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x+y,y+1/2,-z+1/2', '-x,-x+y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', '-x+y,-x+1/2,-z+1/2', 'y,-x+y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', 'x-y,x+1/2,-z+1/2', '-y,x-y+1/2,-z+1/2', 'y,x+1/2,z+1/2', '-x+y,y+1/2,z+1/2', '-x,-x+y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x-y,-y+1/2,z+1/2', 'x,x-y+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', 'x-y+1/2,x+1/2,z+1/2', '-y+1/2,x-y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+y+1/2,-x+1/2,z+1/2', 'y+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'x-y+1/2,-y+1/2,-z+1/2', 'x+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+y+1/2,y+1/2,-z+1/2', '-x+1/2,-x+y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+y+1/2,-x+1/2,-z+1/2', 'y+1/2,-x+y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x-y+1/2,x+1/2,-z+1/2', '-y+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+y+1/2,y+1/2,z+1/2', '-x+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x-y+1/2,-y+1/2,z+1/2', 'x+1/2,x-y+1/2,z+1/2'], 'universal_h_m': 'P6/mmm(2*a,2*b,2*c)'}, {'hall': '-P 6 2 (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P6/mmm', 'hermann_mauguin_u': 'P6/mmm', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'number': 191, 'point_group': '6/mmm', 'schoenflies': 'D6h^1', 'short_h_m': 'P6/mmm', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z', 'x+1/2,y,z', 'x-y+1/2,x,z', '-y+1/2,x-y,z', '-x+1/2,-y,z', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z', '-y+1/2,-x,-z', 'x-y+1/2,-y,-z', 'x+1/2,x-y,-z', 'y+1/2,x,-z', '-x+y+1/2,y,-z', '-x+1/2,-x+y,-z', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z', 'y+1/2,-x+y,-z', 'x+1/2,y,-z', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z', 'y+1/2,x,z', '-x+y+1/2,y,z', '-x+1/2,-x+y,z', '-y+1/2,-x,z', 'x-y+1/2,-y,z', 'x+1/2,x-y,z', 'x,y+1/2,z', 'x-y,x+1/2,z', '-y,x-y+1/2,z', '-x,-y+1/2,z', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z', '-y,-x+1/2,-z', 'x-y,-y+1/2,-z', 'x,x-y+1/2,-z', 'y,x+1/2,-z', '-x+y,y+1/2,-z', '-x,-x+y+1/2,-z', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z', 'y,-x+y+1/2,-z', 'x,y+1/2,-z', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z', 'y,x+1/2,z', '-x+y,y+1/2,z', '-x,-x+y+1/2,z', '-y,-x+1/2,z', 'x-y,-y+1/2,z', 'x,x-y+1/2,z', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,-z', 'x-y+1/2,-y+1/2,-z', 'x+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+y+1/2,y+1/2,-z', '-x+1/2,-x+y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,z', '-x+y+1/2,y+1/2,z', '-x+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,z', 'x-y+1/2,-y+1/2,z', 'x+1/2,x-y+1/2,z'], 'universal_h_m': 'P6/mmm(2*a,2*b,c)'}, {'hall': '-P 6 2c (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P6/mcc', 'hermann_mauguin_u': 'P6/mcc', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z+1/2', 'x-y,-y,-z+1/2', 'x,x-y,-z+1/2', 'y,x,-z+1/2', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z+1/2', '-x+y,y,z+1/2', '-x,-x+y,z+1/2', '-y,-x,z+1/2', 'x-y,-y,z+1/2', 'x,x-y,z+1/2'], 'number': 192, 'point_group': '6/mmm', 'schoenflies': 'D6h^2', 'short_h_m': 'P6/mcc', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z+1/2', 'x-y,-y,-z+1/2', 'x,x-y,-z+1/2', 'y,x,-z+1/2', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z+1/2', '-x+y,y,z+1/2', '-x,-x+y,z+1/2', '-y,-x,z+1/2', 'x-y,-y,z+1/2', 'x,x-y,z+1/2', 'x+1/2,y,z', 'x-y+1/2,x,z', '-y+1/2,x-y,z', '-x+1/2,-y,z', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z', '-y+1/2,-x,-z+1/2', 'x-y+1/2,-y,-z+1/2', 'x+1/2,x-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+y+1/2,y,-z+1/2', '-x+1/2,-x+y,-z+1/2', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z', 'y+1/2,-x+y,-z', 'x+1/2,y,-z', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z', 'y+1/2,x,z+1/2', '-x+y+1/2,y,z+1/2', '-x+1/2,-x+y,z+1/2', '-y+1/2,-x,z+1/2', 'x-y+1/2,-y,z+1/2', 'x+1/2,x-y,z+1/2', 'x,y+1/2,z', 'x-y,x+1/2,z', '-y,x-y+1/2,z', '-x,-y+1/2,z', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z', '-y,-x+1/2,-z+1/2', 'x-y,-y+1/2,-z+1/2', 'x,x-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x+y,y+1/2,-z+1/2', '-x,-x+y+1/2,-z+1/2', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z', 'y,-x+y+1/2,-z', 'x,y+1/2,-z', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z', 'y,x+1/2,z+1/2', '-x+y,y+1/2,z+1/2', '-x,-x+y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x-y,-y+1/2,z+1/2', 'x,x-y+1/2,z+1/2', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x-y+1/2,-y+1/2,-z+1/2', 'x+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+y+1/2,y+1/2,-z+1/2', '-x+1/2,-x+y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x+y+1/2,y+1/2,z+1/2', '-x+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x-y+1/2,-y+1/2,z+1/2', 'x+1/2,x-y+1/2,z+1/2'], 'universal_h_m': 'P6/mcc(2*a,2*b,c)'}, {'hall': '-P 6c 2 (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P63/mcm', 'hermann_mauguin_u': 'P6_3/mcm', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z', 'x-y,-y,-z+1/2', 'x,x-y,-z', 'y,x,-z+1/2', '-x+y,y,-z', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2', 'y,x,z', '-x+y,y,z+1/2', '-x,-x+y,z', '-y,-x,z+1/2', 'x-y,-y,z', 'x,x-y,z+1/2'], 'number': 193, 'point_group': '6/mmm', 'schoenflies': 'D6h^3', 'short_h_m': 'P6_3/mcm', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z', 'x-y,-y,-z+1/2', 'x,x-y,-z', 'y,x,-z+1/2', '-x+y,y,-z', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2', 'y,x,z', '-x+y,y,z+1/2', '-x,-x+y,z', '-y,-x,z+1/2', 'x-y,-y,z', 'x,x-y,z+1/2', 'x+1/2,y,z', 'x-y+1/2,x,z+1/2', '-y+1/2,x-y,z', '-x+1/2,-y,z+1/2', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z+1/2', '-y+1/2,-x,-z', 'x-y+1/2,-y,-z+1/2', 'x+1/2,x-y,-z', 'y+1/2,x,-z+1/2', '-x+y+1/2,y,-z', '-x+1/2,-x+y,-z+1/2', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z+1/2', 'y+1/2,-x+y,-z', 'x+1/2,y,-z+1/2', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z+1/2', 'y+1/2,x,z', '-x+y+1/2,y,z+1/2', '-x+1/2,-x+y,z', '-y+1/2,-x,z+1/2', 'x-y+1/2,-y,z', 'x+1/2,x-y,z+1/2', 'x,y+1/2,z', 'x-y,x+1/2,z+1/2', '-y,x-y+1/2,z', '-x,-y+1/2,z+1/2', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z+1/2', '-y,-x+1/2,-z', 'x-y,-y+1/2,-z+1/2', 'x,x-y+1/2,-z', 'y,x+1/2,-z+1/2', '-x+y,y+1/2,-z', '-x,-x+y+1/2,-z+1/2', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z+1/2', 'y,-x+y+1/2,-z', 'x,y+1/2,-z+1/2', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z+1/2', 'y,x+1/2,z', '-x+y,y+1/2,z+1/2', '-x,-x+y+1/2,z', '-y,-x+1/2,z+1/2', 'x-y,-y+1/2,z', 'x,x-y+1/2,z+1/2', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z+1/2', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,-z', 'x-y+1/2,-y+1/2,-z+1/2', 'x+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,-z+1/2', '-x+y+1/2,y+1/2,-z', '-x+1/2,-x+y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z+1/2', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z+1/2', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,z', '-x+y+1/2,y+1/2,z+1/2', '-x+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,z+1/2', 'x-y+1/2,-y+1/2,z', 'x+1/2,x-y+1/2,z+1/2'], 'universal_h_m': 'P63/mcm(2*a,2*b,c)'}, {'hall': '-P 6c 2c (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P63/mmc', 'hermann_mauguin_u': 'P6_3/mmc', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2', 'y,x,z+1/2', '-x+y,y,z', '-x,-x+y,z+1/2', '-y,-x,z', 'x-y,-y,z+1/2', 'x,x-y,z'], 'number': 194, 'point_group': '6/mmm', 'schoenflies': 'D6h^4', 'short_h_m': 'P6_3/mmc', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2', 'y,x,z+1/2', '-x+y,y,z', '-x,-x+y,z+1/2', '-y,-x,z', 'x-y,-y,z+1/2', 'x,x-y,z', 'x+1/2,y,z', 'x-y+1/2,x,z+1/2', '-y+1/2,x-y,z', '-x+1/2,-y,z+1/2', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z+1/2', '-y+1/2,-x,-z+1/2', 'x-y+1/2,-y,-z', 'x+1/2,x-y,-z+1/2', 'y+1/2,x,-z', '-x+y+1/2,y,-z+1/2', '-x+1/2,-x+y,-z', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z+1/2', 'y+1/2,-x+y,-z', 'x+1/2,y,-z+1/2', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z+1/2', 'y+1/2,x,z+1/2', '-x+y+1/2,y,z', '-x+1/2,-x+y,z+1/2', '-y+1/2,-x,z', 'x-y+1/2,-y,z+1/2', 'x+1/2,x-y,z', 'x,y+1/2,z', 'x-y,x+1/2,z+1/2', '-y,x-y+1/2,z', '-x,-y+1/2,z+1/2', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x-y,-y+1/2,-z', 'x,x-y+1/2,-z+1/2', 'y,x+1/2,-z', '-x+y,y+1/2,-z+1/2', '-x,-x+y+1/2,-z', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z+1/2', 'y,-x+y+1/2,-z', 'x,y+1/2,-z+1/2', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z+1/2', 'y,x+1/2,z+1/2', '-x+y,y+1/2,z', '-x,-x+y+1/2,z+1/2', '-y,-x+1/2,z', 'x-y,-y+1/2,z+1/2', 'x,x-y+1/2,z', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z+1/2', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'x-y+1/2,-y+1/2,-z', 'x+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z', '-x+y+1/2,y+1/2,-z+1/2', '-x+1/2,-x+y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z+1/2', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z+1/2', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+y+1/2,y+1/2,z', '-x+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,z', 'x-y+1/2,-y+1/2,z+1/2', 'x+1/2,x-y+1/2,z'], 'universal_h_m': 'P63/mmc(2*a,2*b,c)'}, {'hall': '-F 2 2 3 (x+1/4,y+1/4,z+1/4)', 'hermann_mauguin': 'Fm-3', 'hermann_mauguin_u': 'Fm-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2'], 'number': 202, 'point_group': 'm-3', 'schoenflies': 'Th^3', 'short_h_m': 'Fm-3', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', 'z,x,y', '-z+1/2,-x+1/2,y', 'z,-x+1/2,-y+1/2', '-z+1/2,x,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z+1/2,x', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z', '-z+1/2,-x+1/2,-y+1/2', 'z,x,-y+1/2', '-z+1/2,x,y', 'z,-x+1/2,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z,x', 'y,-z+1/2,x', 'y,z,-x+1/2', 'x,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y+1/2,-z', 'z,x+1/2,y+1/2', '-z+1/2,-x,y+1/2', 'z,-x,-y', '-z+1/2,x+1/2,-y', 'y,z+1/2,x+1/2', 'y,-z,-x', '-y+1/2,z+1/2,-x', '-y+1/2,-z,x+1/2', '-x+1/2,-y,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2', '-z+1/2,-x,-y', 'z,x+1/2,-y', '-z+1/2,x+1/2,y+1/2', 'z,-x,y+1/2', '-y+1/2,-z,-x', '-y+1/2,z+1/2,x+1/2', 'y,-z,x+1/2', 'y,z+1/2,-x', 'x+1/2,y,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y,-z', 'z+1/2,x,y+1/2', '-z,-x+1/2,y+1/2', 'z+1/2,-x+1/2,-y', '-z,x,-y', 'y+1/2,z,x+1/2', 'y+1/2,-z+1/2,-x', '-y,z,-x', '-y,-z+1/2,x+1/2', '-x,-y+1/2,-z', 'x+1/2,y,-z', '-x,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-z,-x+1/2,-y', 'z+1/2,x,-y', '-z,x,y+1/2', 'z+1/2,-x+1/2,y+1/2', '-y,-z+1/2,-x', '-y,z,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'y+1/2,z,-x', 'x+1/2,y+1/2,z', '-x,-y,z', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'z+1/2,x+1/2,y', '-z,-x,y', 'z+1/2,-x,-y+1/2', '-z,x+1/2,-y+1/2', 'y+1/2,z+1/2,x', 'y+1/2,-z,-x+1/2', '-y,z+1/2,-x+1/2', '-y,-z,x', '-x,-y,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z', '-z,-x,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-z,x+1/2,y', 'z+1/2,-x,y', '-y,-z,-x+1/2', '-y,z+1/2,x', 'y+1/2,-z,x', 'y+1/2,z+1/2,-x+1/2'], 'universal_h_m': 'Fm-3(a-1/4,b-1/4,c-1/4)'}, {'hall': '-I 2 2 3 (x+1/4,y+1/4,z+1/4)', 'hermann_mauguin': 'Im-3', 'hermann_mauguin_u': 'Im-3', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', 'z,x,y', '-z+1/2,-x+1/2,y', 'z,-x+1/2,-y+1/2', '-z+1/2,x,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z+1/2,x', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2', '-z,-x,-y', 'z+1/2,x+1/2,-y', '-z,x+1/2,y+1/2', 'z+1/2,-x,y+1/2', '-y,-z,-x', '-y,z+1/2,x+1/2', 'y+1/2,-z,x+1/2', 'y+1/2,z+1/2,-x'], 'number': 204, 'point_group': 'm-3', 'schoenflies': 'Th^5', 'short_h_m': 'Im-3', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', 'z,x,y', '-z+1/2,-x+1/2,y', 'z,-x+1/2,-y+1/2', '-z+1/2,x,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z+1/2,x', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z', '-z+1/2,-x+1/2,-y+1/2', 'z,x,-y+1/2', '-z+1/2,x,y', 'z,-x+1/2,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z,x', 'y,-z+1/2,x', 'y,z,-x+1/2', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z', 'z+1/2,x+1/2,y+1/2', '-z,-x,y+1/2', 'z+1/2,-x,-y', '-z,x+1/2,-y', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z,-x', '-y,z+1/2,-x', '-y,-z,x+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2', '-z,-x,-y', 'z+1/2,x+1/2,-y', '-z,x+1/2,y+1/2', 'z+1/2,-x,y+1/2', '-y,-z,-x', '-y,z+1/2,x+1/2', 'y+1/2,-z,x+1/2', 'y+1/2,z+1/2,-x'], 'universal_h_m': 'Im-3(a-1/4,b-1/4,c-1/4)'}, {'hall': '-F 4a 2 3 (x-1/4,y-1/4,z-1/4)', 'hermann_mauguin': 'Fm-3c', 'hermann_mauguin_u': 'Fm-3c', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'x+1/2,-z+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', '-x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'number': 226, 'point_group': 'm-3m', 'schoenflies': 'Oh^6', 'short_h_m': 'Fm-3c', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y+1/2,-z+1/2', 'y+1/2,x,-z+1/2', '-x,y+1/2,-z+1/2', '-y+1/2,-x,-z+1/2', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x+1/2,-y+1/2', 'x+1/2,z,-y+1/2', '-z,x+1/2,-y+1/2', '-x+1/2,-z,-y+1/2', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x+1/2', '-z,y+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y,z', '-y,-x+1/2,z', 'x+1/2,-y,z', 'y,x+1/2,z', '-z+1/2,-x+1/2,-y+1/2', 'x+1/2,-z+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x+1/2,z+1/2,-y+1/2', '-z+1/2,x,y', '-x,-z+1/2,y', 'z+1/2,-x,y', 'x,z+1/2,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y,x', 'y,z,-x+1/2', '-z+1/2,y,-x', 'z+1/2,-y,-x', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z', '-x,y,-z', '-y+1/2,-x+1/2,-z', 'z,x+1/2,y+1/2', '-x,z+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'x,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y', '-z,x,-y', '-x+1/2,-z+1/2,-y', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', 'z,y+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-z,-y,-x', '-y+1/2,-z,x+1/2', 'z,-y,x', '-z,y,x', '-x+1/2,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y,-z', '-y+1/2,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y,x,z+1/2', '-z+1/2,-x,-y', 'x+1/2,-z,-y', 'z+1/2,x,-y', '-x+1/2,z,-y', '-z+1/2,x+1/2,y+1/2', '-x,-z,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x,z,y+1/2', '-y+1/2,-z,-x', '-y+1/2,z,x', '-z+1/2,-y,x', 'y+1/2,-z,x', 'z+1/2,y+1/2,x+1/2', 'y,z+1/2,-x', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', 'z+1/2,x,y+1/2', '-x+1/2,z,y+1/2', '-z+1/2,-x,y+1/2', 'x+1/2,-z,y+1/2', 'z+1/2,-x+1/2,-y', 'x,z,-y', '-z+1/2,x+1/2,-y', '-x,-z,-y', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', 'z+1/2,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x', '-y,-z+1/2,x+1/2', 'z+1/2,-y+1/2,x', '-z+1/2,y+1/2,x', '-x,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y+1/2,-z', '-y,x+1/2,-z', '-x,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z,-x+1/2,-y', 'x,-z+1/2,-y', 'z,x+1/2,-y', '-x,z+1/2,-y', '-z,x,y+1/2', '-x+1/2,-z+1/2,y+1/2', 'z,-x,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y,-z+1/2,-x', '-y,z+1/2,x', '-z,-y+1/2,x', 'y,-z+1/2,x', 'z,y,x+1/2', 'y+1/2,z,-x', '-z,y,-x+1/2', 'z,-y,-x+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y,-z+1/2', 'y,x+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-y,-x+1/2,-z+1/2', 'z+1/2,x+1/2,y', '-x+1/2,z+1/2,y', '-z+1/2,-x+1/2,y', 'x+1/2,-z+1/2,y', 'z+1/2,-x,-y+1/2', 'x,z+1/2,-y+1/2', '-z+1/2,x,-y+1/2', '-x,-z+1/2,-y+1/2', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', 'z+1/2,y+1/2,-x', '-y+1/2,z+1/2,-x', '-z+1/2,-y,-x+1/2', '-y,-z,x', 'z+1/2,-y,x+1/2', '-z+1/2,y,x+1/2', '-x,-y,-z+1/2', 'y,-x,-z+1/2', 'x,y,-z+1/2', '-y,x,-z+1/2', '-x,y+1/2,z', '-y+1/2,-x,z', 'x,-y+1/2,z', 'y+1/2,x,z', '-z,-x,-y+1/2', 'x,-z,-y+1/2', 'z,x,-y+1/2', '-x,z,-y+1/2', '-z,x+1/2,y', '-x+1/2,-z,y', 'z,-x+1/2,y', 'x+1/2,z,y', '-y,-z,-x+1/2', '-y,z,x+1/2', '-z,-y,x+1/2', 'y,-z,x+1/2', 'z,y+1/2,x', 'y+1/2,z+1/2,-x+1/2', '-z,y+1/2,-x', 'z,-y+1/2,-x'], 'universal_h_m': 'Fm-3c(a+1/4,b+1/4,c+1/4)'}, {'hall': '-I 4 2 3 (x+1/4,y+1/4,z+1/4)', 'hermann_mauguin': 'Im-3m', 'hermann_mauguin_u': 'Im-3m', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x+1/2,-y+1/2', 'x,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x', '-z+1/2,y,x', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z,-x,-y', 'x+1/2,-z,-y', 'z+1/2,x+1/2,-y', '-x,z+1/2,-y', '-z,x+1/2,y+1/2', '-x,-z,y+1/2', 'z+1/2,-x,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y,-z,-x', '-y,z+1/2,x+1/2', '-z,-y,x+1/2', 'y+1/2,-z,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x', '-z,y+1/2,-x', 'z+1/2,-y,-x'], 'number': 229, 'point_group': 'm-3m', 'schoenflies': 'Oh^9', 'short_h_m': 'Im-3m', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x+1/2,-y+1/2', 'x,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x', '-z+1/2,y,x', '-x+1/2,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x,-z+1/2', '-x+1/2,y,z', '-y+1/2,-x+1/2,z', 'x,-y+1/2,z', 'y,x,z', '-z+1/2,-x+1/2,-y+1/2', 'x,-z+1/2,-y+1/2', 'z,x,-y+1/2', '-x+1/2,z,-y+1/2', '-z+1/2,x,y', '-x+1/2,-z+1/2,y', 'z,-x+1/2,y', 'x,z,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z,x', '-z+1/2,-y+1/2,x', 'y,-z+1/2,x', 'z,y,x', 'y,z,-x+1/2', '-z+1/2,y,-x+1/2', 'z,-y+1/2,-x+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z', '-y,-x,-z', 'z+1/2,x+1/2,y+1/2', '-x,z+1/2,y+1/2', '-z,-x,y+1/2', 'x+1/2,-z,y+1/2', 'z+1/2,-x,-y', 'x+1/2,z+1/2,-y', '-z,x+1/2,-y', '-x,-z,-y', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z,-x', 'z+1/2,y+1/2,-x', '-y,z+1/2,-x', '-z,-y,-x', '-y,-z,x+1/2', 'z+1/2,-y,x+1/2', '-z,y+1/2,x+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z,-x,-y', 'x+1/2,-z,-y', 'z+1/2,x+1/2,-y', '-x,z+1/2,-y', '-z,x+1/2,y+1/2', '-x,-z,y+1/2', 'z+1/2,-x,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y,-z,-x', '-y,z+1/2,x+1/2', '-z,-y,x+1/2', 'y+1/2,-z,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x', '-z,y+1/2,-x', 'z+1/2,-y,-x'], 'universal_h_m': 'Im-3m(a-1/4,b-1/4,c-1/4)'}, {'hall': '-F 4 2 3 (x+1/4,y+1/4,z+1/4)', 'hermann_mauguin': 'Fm-3m', 'hermann_mauguin_u': 'Fm-3m', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z', '-z+1/2,-x+1/2,-y+1/2', 'x,-z,-y', 'z+1/2,x+1/2,-y+1/2', '-x,z,-y', '-z+1/2,x+1/2,y+1/2', '-x,-z,y', 'z+1/2,-x+1/2,y+1/2', 'x,z,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z,-y,x', 'y+1/2,-z+1/2,x+1/2', 'z,y,x', 'y+1/2,z+1/2,-x+1/2', '-z,y,-x', 'z,-y,-x'], 'number': 225, 'point_group': 'm-3m', 'schoenflies': 'Oh^5', 'short_h_m': 'Fm-3m', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x+1/2,-y+1/2', 'x,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x', '-z+1/2,y,x', '-x+1/2,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x,-z+1/2', '-x+1/2,y,z', '-y+1/2,-x+1/2,z', 'x,-y+1/2,z', 'y,x,z', '-z+1/2,-x+1/2,-y+1/2', 'x,-z+1/2,-y+1/2', 'z,x,-y+1/2', '-x+1/2,z,-y+1/2', '-z+1/2,x,y', '-x+1/2,-z+1/2,y', 'z,-x+1/2,y', 'x,z,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z,x', '-z+1/2,-y+1/2,x', 'y,-z+1/2,x', 'z,y,x', 'y,z,-x+1/2', '-z+1/2,y,-x+1/2', 'z,-y+1/2,-x+1/2', 'x,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y,z+1/2', 'y,-x,z+1/2', 'x,-y,-z', 'y,x+1/2,-z', '-x+1/2,y+1/2,-z', '-y+1/2,-x,-z', 'z,x+1/2,y+1/2', '-x+1/2,z+1/2,y+1/2', '-z+1/2,-x,y+1/2', 'x,-z,y+1/2', 'z,-x,-y', 'x,z+1/2,-y', '-z+1/2,x+1/2,-y', '-x+1/2,-z,-y', 'y,z+1/2,x+1/2', 'y,-z,-x', 'z,y+1/2,-x', '-y+1/2,z+1/2,-x', '-z+1/2,-y,-x', '-y+1/2,-z,x+1/2', 'z,-y,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x+1/2,-y,-z', 'y,-x,-z', 'x,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x,z+1/2', 'x,-y,z+1/2', 'y,x+1/2,z+1/2', '-z+1/2,-x,-y', 'x,-z,-y', 'z,x+1/2,-y', '-x+1/2,z+1/2,-y', '-z+1/2,x+1/2,y+1/2', '-x+1/2,-z,y+1/2', 'z,-x,y+1/2', 'x,z+1/2,y+1/2', '-y+1/2,-z,-x', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y,x+1/2', 'y,-z,x+1/2', 'z,y+1/2,x+1/2', 'y,z+1/2,-x', '-z+1/2,y+1/2,-x', 'z,-y,-x', 'x+1/2,y,z+1/2', '-y,x,z+1/2', '-x,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z', 'y+1/2,x,-z', '-x,y,-z', '-y,-x+1/2,-z', 'z+1/2,x,y+1/2', '-x,z,y+1/2', '-z,-x+1/2,y+1/2', 'x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,-y', 'x+1/2,z,-y', '-z,x,-y', '-x,-z+1/2,-y', 'y+1/2,z,x+1/2', 'y+1/2,-z+1/2,-x', 'z+1/2,y,-x', '-y,z,-x', '-z,-y+1/2,-x', '-y,-z+1/2,x+1/2', 'z+1/2,-y+1/2,x+1/2', '-z,y,x+1/2', '-x,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y,-z', '-y,x,-z', '-x,y,z+1/2', '-y,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x,z+1/2', '-z,-x+1/2,-y', 'x+1/2,-z+1/2,-y', 'z+1/2,x,-y', '-x,z,-y', '-z,x,y+1/2', '-x,-z+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x+1/2,z,y+1/2', '-y,-z+1/2,-x', '-y,z,x+1/2', '-z,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y,x+1/2', 'y+1/2,z,-x', '-z,y,-x', 'z+1/2,-y+1/2,-x', 'x+1/2,y+1/2,z', '-y,x+1/2,z', '-x,-y,z', 'y+1/2,-x,z', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x,-z+1/2', 'z+1/2,x+1/2,y', '-x,z+1/2,y', '-z,-x,y', 'x+1/2,-z,y', 'z+1/2,-x,-y+1/2', 'x+1/2,z+1/2,-y+1/2', '-z,x+1/2,-y+1/2', '-x,-z,-y+1/2', 'y+1/2,z+1/2,x', 'y+1/2,-z,-x+1/2', 'z+1/2,y+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-z,-y,-x+1/2', '-y,-z,x', 'z+1/2,-y,x', '-z,y+1/2,x', '-x,-y,-z+1/2', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y,x+1/2,-z+1/2', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z', 'y+1/2,x+1/2,z', '-z,-x,-y+1/2', 'x+1/2,-z,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x,z+1/2,-y+1/2', '-z,x+1/2,y', '-x,-z,y', 'z+1/2,-x,y', 'x+1/2,z+1/2,y', '-y,-z,-x+1/2', '-y,z+1/2,x', '-z,-y,x', 'y+1/2,-z,x', 'z+1/2,y+1/2,x', 'y+1/2,z+1/2,-x+1/2', '-z,y+1/2,-x+1/2', 'z+1/2,-y,-x+1/2'], 'universal_h_m': 'Fm-3m(a-1/4,b-1/4,c-1/4)'}, {'hall': ' P 4 -2ab (x,y,1/2*z)', 'hermann_mauguin': 'P4bm', 'hermann_mauguin_u': 'P4bm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z', 'x,y,z+1/2', '-y,x,z+1/2', '-x,-y,z+1/2', 'y,-x,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 100, 'point_group': '4mm', 'schoenflies': 'C4v^2', 'short_h_m': 'P4bm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z', 'x,y,z+1/2', '-y,x,z+1/2', '-x,-y,z+1/2', 'y,-x,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P4bm(a,b,2*c)'}, {'hall': ' C -2yc (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'C1c1', 'hermann_mauguin_u': 'C1c1', 'ncsym': ['x,y,z', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Cc', 'symops': ['x,y,z', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,-y,z', 'x+1/4,y+1/2,z+3/4', 'x+1/4,-y+1/2,z+1/4', 'x+3/4,y+1/2,z+1/4', 'x+3/4,-y+1/2,z+3/4'], 'universal_h_m': 'C1c1(2*a+c,b,c)'}, {'hall': ' P 2c -2 (1/2*x,y,z)', 'hermann_mauguin': 'Pmc21', 'hermann_mauguin_u': 'Pmc2_1', 'ncsym': ['x,y,z', '-x,y,z', 'x,-y,z+1/2', '-x,-y,z+1/2'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'Pmc2_1', 'symops': ['x,y,z', '-x,y,z', 'x,-y,z+1/2', '-x,-y,z+1/2', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,-y,z+1/2', '-x+1/2,-y,z+1/2'], 'universal_h_m': 'Pmc21(2*a,b,c)'}, {'hall': ' C 2 -2 (1/2*z,x,y)', 'hermann_mauguin': 'Cmm2', 'hermann_mauguin_u': 'Cmm2', 'ncsym': ['x,y,z', 'x,-y,z', 'x,y,-z', 'x,-y,-z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'Cmm2', 'symops': ['x,y,z', 'x,-y,z', 'x,y,-z', 'x,-y,-z', 'x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'x+1/2,y,z', 'x+1/2,-y,z', 'x+1/2,y,-z', 'x+1/2,-y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2'], 'universal_h_m': 'Cmm2(2*c,a,b)'}, {'hall': '-P 2ybc (-1/4*x+1/2*z,1/2*x,y)', 'hermann_mauguin': 'P121/c1', 'hermann_mauguin_u': 'P12_1/c1', 'ncsym': ['x,y,z', '-x+1/4,-y,z+1/2', '-x,-y,-z', 'x-1/4,y,-z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', '-x+1/4,-y,z+1/2', '-x,-y,-z', 'x-1/4,y,-z-1/2', 'x+3/4,y+1/2,z', '-x+1,-y+1/2,z+1/2', '-x+3/4,-y+1/2,-z', 'x+1/2,y+1/2,-z-1/2', 'x+1/4,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/4,-y+1/2,-z', 'x,y+1/2,-z-1/2', 'x+1/2,y,z', '-x+3/4,-y,z+1/2', '-x+1/2,-y,-z', 'x+1/4,y,-z-1/2'], 'universal_h_m': 'P121/c1(2*c,2*a+c,b)'}, {'hall': '-P 2a 2a (1/2*y,z,x)', 'hermann_mauguin': 'Pmma', 'hermann_mauguin_u': 'Pmma', 'ncsym': ['x,y,z', '-x,y,z', 'x,y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,-z', '-x,-y,z-1/2', 'x,-y,z-1/2'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmma', 'symops': ['x,y,z', '-x,y,z', 'x,y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,-z', '-x,-y,z-1/2', 'x,-y,z-1/2', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z', 'x+1/2,-y,-z', '-x+1/2,-y,z-1/2', 'x+1/2,-y,z-1/2'], 'universal_h_m': 'Pmma(2*b,c,a)'}, {'hall': '-P 2a 2a (1/2*y,z+1/3,x-1/4)', 'hermann_mauguin': 'Pmma', 'hermann_mauguin_u': 'Pmma', 'ncsym': ['x,y,z', '-x,y,z', 'x,y,-z', '-x,y,-z', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,y,-z', '-x+1/2,y,-z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmma', 'symops': ['x,y,z', '-x,y,z', 'x,y,-z', '-x,y,-z', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,y,-z', '-x+1/2,y,-z', '-x,-y+2/3,-z+1/2', 'x,-y+2/3,-z+1/2', '-x,-y+2/3,z+1/2', 'x,-y+2/3,z+1/2', '-x+1/2,-y+2/3,-z+1/2', 'x+1/2,-y+2/3,-z+1/2', '-x+1/2,-y+2/3,z+1/2', 'x+1/2,-y+2/3,z+1/2'], 'universal_h_m': 'Pmma(2*b+1/4,c,a-1/3)'}, {'hall': '-P 2yc (x,1/2*y,z)', 'hermann_mauguin': 'P12/c1', 'hermann_mauguin_u': 'P12/c1', 'ncsym': ['x,y,z', '-x,y,-z+1/2', 'x,y+1/2,z', '-x,y+1/2,-z+1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', '-x,y,-z+1/2', 'x,y+1/2,z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,-y,z+1/2', '-x,-y+1/2,-z', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'P12/c1(a,2*b,c)'}, {'hall': '-P 2 2 (1/2*x,1/2*y,z)', 'hermann_mauguin': 'Pmmm', 'hermann_mauguin_u': 'Pmmm', 'ncsym': ['x,y,z', '-x,y,z', 'x,-y,z', '-x,-y,z', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,-y,z', '-x+1/2,-y,z'], 'number': 47, 'point_group': 'mmm', 'schoenflies': 'D2h^1', 'short_h_m': 'Pmmm', 'symops': ['x,y,z', '-x,y,z', 'x,-y,z', '-x,-y,z', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,-y,z', '-x+1/2,-y,z', 'x,y+1/2,z', '-x,y+1/2,z', 'x,-y+1/2,z', '-x,-y+1/2,z', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x,-y,-z', '-x,y,-z', 'x,y,-z', '-x+1/2,-y,-z', 'x+1/2,-y,-z', '-x+1/2,y,-z', 'x+1/2,y,-z', '-x,-y+1/2,-z', 'x,-y+1/2,-z', '-x,y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Pmmm(2*a,2*b,c)'}, {'hall': ' P 2yb (x+1/4,y,z)', 'hermann_mauguin': 'P1211', 'hermann_mauguin_u': 'P12_11', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'P2_1', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'P1211(a-1/4,b,c)'}, {'hall': '-P 2ac 2n (z,x,y+1/4)', 'hermann_mauguin': 'Pnma', 'hermann_mauguin_u': 'Pnma', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y,-z', '-x+1/2,y+1/2,z'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pnma', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y,-z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'Pnma(c,a-1/4,b)'}][source]
                                                                              +SYMM_OPS = [{'hall': ' P 1', 'hermann_mauguin': 'P1', 'hermann_mauguin_u': 'P1', 'ncsym': ['x,y,z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'P1', 'symops': ['x,y,z'], 'universal_h_m': 'P1'}, {'hall': '-P 1', 'hermann_mauguin': 'P-1', 'hermann_mauguin_u': 'P-1', 'ncsym': ['x,y,z', '-x,-y,-z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'Ci^1', 'short_h_m': 'P-1', 'symops': ['x,y,z', '-x,-y,-z'], 'universal_h_m': 'P-1'}, {'hall': ' P 2y', 'hermann_mauguin': 'P121', 'hermann_mauguin_u': 'P121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 3, 'point_group': '2', 'schoenflies': 'C2^1', 'short_h_m': 'P2', 'symops': ['x,y,z', '-x,y,-z'], 'universal_h_m': 'P121'}, {'hall': ' P 2', 'hermann_mauguin': 'P112', 'hermann_mauguin_u': 'P112', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 3, 'point_group': '2', 'schoenflies': 'C2^1', 'short_h_m': 'P2', 'symops': ['x,y,z', '-x,-y,z'], 'universal_h_m': 'P112'}, {'hall': ' P 2x', 'hermann_mauguin': 'P211', 'hermann_mauguin_u': 'P211', 'ncsym': ['x,y,z', 'x,-y,-z'], 'number': 3, 'point_group': '2', 'schoenflies': 'C2^1', 'short_h_m': 'P2', 'symops': ['x,y,z', 'x,-y,-z'], 'universal_h_m': 'P211'}, {'hall': ' P 2yb', 'hermann_mauguin': 'P1211', 'hermann_mauguin_u': 'P12_11', 'ncsym': ['x,y,z', '-x,y+1/2,-z'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'P2_1', 'symops': ['x,y,z', '-x,y+1/2,-z'], 'universal_h_m': 'P1211'}, {'hall': ' P 2c', 'hermann_mauguin': 'P1121', 'hermann_mauguin_u': 'P112_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'P2_1', 'symops': ['x,y,z', '-x,-y,z+1/2'], 'universal_h_m': 'P1121'}, {'hall': ' P 2xa', 'hermann_mauguin': 'P2111', 'hermann_mauguin_u': 'P2_111', 'ncsym': ['x,y,z', 'x+1/2,-y,-z'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'P2_1', 'symops': ['x,y,z', 'x+1/2,-y,-z'], 'universal_h_m': 'P2111'}, {'hall': ' C 2y', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,y,-z', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'C121'}, {'hall': ' A 2y', 'hermann_mauguin': 'A121', 'hermann_mauguin_u': 'A121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'A2', 'symops': ['x,y,z', '-x,y,-z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'A121'}, {'hall': ' I 2y', 'hermann_mauguin': 'I121', 'hermann_mauguin_u': 'I121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'I2', 'symops': ['x,y,z', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'I121'}, {'hall': ' A 2', 'hermann_mauguin': 'A112', 'hermann_mauguin_u': 'A112', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'A2', 'symops': ['x,y,z', '-x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2'], 'universal_h_m': 'A112'}, {'hall': ' B 2', 'hermann_mauguin': 'B112', 'hermann_mauguin_u': 'B112', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'B2', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2'], 'universal_h_m': 'B112'}, {'hall': ' I 2', 'hermann_mauguin': 'I112', 'hermann_mauguin_u': 'I112', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'I2', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'I112'}, {'hall': ' B 2x', 'hermann_mauguin': 'B211', 'hermann_mauguin_u': 'B211', 'ncsym': ['x,y,z', 'x,-y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'B2', 'symops': ['x,y,z', 'x,-y,-z', 'x+1/2,y,z+1/2', 'x+1/2,-y,-z+1/2'], 'universal_h_m': 'B211'}, {'hall': ' C 2x', 'hermann_mauguin': 'C211', 'hermann_mauguin_u': 'C211', 'ncsym': ['x,y,z', 'x,-y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', 'x,-y,-z', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,-z'], 'universal_h_m': 'C211'}, {'hall': ' I 2x', 'hermann_mauguin': 'I211', 'hermann_mauguin_u': 'I211', 'ncsym': ['x,y,z', 'x,-y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'I2', 'symops': ['x,y,z', 'x,-y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2'], 'universal_h_m': 'I211'}, {'hall': ' P -2y', 'hermann_mauguin': 'P1m1', 'hermann_mauguin_u': 'P1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', 'x,-y,z'], 'universal_h_m': 'P1m1'}, {'hall': ' P -2', 'hermann_mauguin': 'P11m', 'hermann_mauguin_u': 'P11m', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', 'x,y,-z'], 'universal_h_m': 'P11m'}, {'hall': ' P -2x', 'hermann_mauguin': 'Pm11', 'hermann_mauguin_u': 'Pm11', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', '-x,y,z'], 'universal_h_m': 'Pm11'}, {'hall': ' P -2yc', 'hermann_mauguin': 'P1c1', 'hermann_mauguin_u': 'P1c1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pc', 'symops': ['x,y,z', 'x,-y,z+1/2'], 'universal_h_m': 'P1c1'}, {'hall': ' P -2yac', 'hermann_mauguin': 'P1n1', 'hermann_mauguin_u': 'P1n1', 'ncsym': ['x,y,z', 'x+1/2,-y,z+1/2'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pn', 'symops': ['x,y,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P1n1'}, {'hall': ' P -2ya', 'hermann_mauguin': 'P1a1', 'hermann_mauguin_u': 'P1a1', 'ncsym': ['x,y,z', 'x+1/2,-y,z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pa', 'symops': ['x,y,z', 'x+1/2,-y,z'], 'universal_h_m': 'P1a1'}, {'hall': ' P -2a', 'hermann_mauguin': 'P11a', 'hermann_mauguin_u': 'P11a', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pa', 'symops': ['x,y,z', 'x+1/2,y,-z'], 'universal_h_m': 'P11a'}, {'hall': ' P -2ab', 'hermann_mauguin': 'P11n', 'hermann_mauguin_u': 'P11n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pn', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'P11n'}, {'hall': ' P -2b', 'hermann_mauguin': 'P11b', 'hermann_mauguin_u': 'P11b', 'ncsym': ['x,y,z', 'x,y+1/2,-z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pb', 'symops': ['x,y,z', 'x,y+1/2,-z'], 'universal_h_m': 'P11b'}, {'hall': ' P -2xb', 'hermann_mauguin': 'Pb11', 'hermann_mauguin_u': 'Pb11', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pb', 'symops': ['x,y,z', '-x,y+1/2,z'], 'universal_h_m': 'Pb11'}, {'hall': ' P -2xbc', 'hermann_mauguin': 'Pn11', 'hermann_mauguin_u': 'Pn11', 'ncsym': ['x,y,z', '-x,y+1/2,z+1/2'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pn', 'symops': ['x,y,z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Pn11'}, {'hall': ' P -2xc', 'hermann_mauguin': 'Pc11', 'hermann_mauguin_u': 'Pc11', 'ncsym': ['x,y,z', '-x,y,z+1/2'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pc', 'symops': ['x,y,z', '-x,y,z+1/2'], 'universal_h_m': 'Pc11'}, {'hall': ' C -2y', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'C1m1'}, {'hall': ' A -2y', 'hermann_mauguin': 'A1m1', 'hermann_mauguin_u': 'A1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Am', 'symops': ['x,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'A1m1'}, {'hall': ' I -2y', 'hermann_mauguin': 'I1m1', 'hermann_mauguin_u': 'I1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Im', 'symops': ['x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'I1m1'}, {'hall': ' A -2', 'hermann_mauguin': 'A11m', 'hermann_mauguin_u': 'A11m', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Am', 'symops': ['x,y,z', 'x,y,-z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'A11m'}, {'hall': ' B -2', 'hermann_mauguin': 'B11m', 'hermann_mauguin_u': 'B11m', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Bm', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2'], 'universal_h_m': 'B11m'}, {'hall': ' I -2', 'hermann_mauguin': 'I11m', 'hermann_mauguin_u': 'I11m', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Im', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'I11m'}, {'hall': ' B -2x', 'hermann_mauguin': 'Bm11', 'hermann_mauguin_u': 'Bm11', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Bm', 'symops': ['x,y,z', '-x,y,z', 'x+1/2,y,z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'Bm11'}, {'hall': ' C -2x', 'hermann_mauguin': 'Cm11', 'hermann_mauguin_u': 'Cm11', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x,y,z', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'Cm11'}, {'hall': ' I -2x', 'hermann_mauguin': 'Im11', 'hermann_mauguin_u': 'Im11', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Im', 'symops': ['x,y,z', '-x,y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Im11'}, {'hall': ' C -2yc', 'hermann_mauguin': 'C1c1', 'hermann_mauguin_u': 'C1c1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Cc', 'symops': ['x,y,z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'C1c1'}, {'hall': ' A -2yab', 'hermann_mauguin': 'A1n1', 'hermann_mauguin_u': 'A1n1', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'An', 'symops': ['x,y,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', 'x+1/2,-y+1,z+1/2'], 'universal_h_m': 'A1n1'}, {'hall': ' I -2ya', 'hermann_mauguin': 'I1a1', 'hermann_mauguin_u': 'I1a1', 'ncsym': ['x,y,z', 'x+1/2,-y,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ia', 'symops': ['x,y,z', 'x+1/2,-y,z', 'x+1/2,y+1/2,z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'I1a1'}, {'hall': ' A -2ya', 'hermann_mauguin': 'A1a1', 'hermann_mauguin_u': 'A1a1', 'ncsym': ['x,y,z', 'x+1/2,-y,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Aa', 'symops': ['x,y,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'A1a1'}, {'hall': ' C -2yac', 'hermann_mauguin': 'C1n1', 'hermann_mauguin_u': 'C1n1', 'ncsym': ['x,y,z', 'x+1/2,-y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Cn', 'symops': ['x,y,z', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'C1n1'}, {'hall': ' I -2yc', 'hermann_mauguin': 'I1c1', 'hermann_mauguin_u': 'I1c1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ic', 'symops': ['x,y,z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1'], 'universal_h_m': 'I1c1'}, {'hall': ' A -2a', 'hermann_mauguin': 'A11a', 'hermann_mauguin_u': 'A11a', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Aa', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'A11a'}, {'hall': ' B -2ab', 'hermann_mauguin': 'B11n', 'hermann_mauguin_u': 'B11n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Bn', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', 'x+1/2,y,z+1/2', 'x+1,y+1/2,-z+1/2'], 'universal_h_m': 'B11n'}, {'hall': ' I -2b', 'hermann_mauguin': 'I11b', 'hermann_mauguin_u': 'I11b', 'ncsym': ['x,y,z', 'x,y+1/2,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ib', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1,-z+1/2'], 'universal_h_m': 'I11b'}, {'hall': ' B -2b', 'hermann_mauguin': 'B11b', 'hermann_mauguin_u': 'B11b', 'ncsym': ['x,y,z', 'x,y+1/2,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Bb', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'B11b'}, {'hall': ' A -2ab', 'hermann_mauguin': 'A11n', 'hermann_mauguin_u': 'A11n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'An', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', 'x,y+1/2,z+1/2', 'x+1/2,y+1,-z+1/2'], 'universal_h_m': 'A11n'}, {'hall': ' I -2a', 'hermann_mauguin': 'I11a', 'hermann_mauguin_u': 'I11a', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ia', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1,y+1/2,-z+1/2'], 'universal_h_m': 'I11a'}, {'hall': ' B -2xb', 'hermann_mauguin': 'Bb11', 'hermann_mauguin_u': 'Bb11', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Bb', 'symops': ['x,y,z', '-x,y+1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Bb11'}, {'hall': ' C -2xac', 'hermann_mauguin': 'Cn11', 'hermann_mauguin_u': 'Cn11', 'ncsym': ['x,y,z', '-x+1/2,y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Cn', 'symops': ['x,y,z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x+1,y+1/2,z+1/2'], 'universal_h_m': 'Cn11'}, {'hall': ' I -2xc', 'hermann_mauguin': 'Ic11', 'hermann_mauguin_u': 'Ic11', 'ncsym': ['x,y,z', '-x,y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ic', 'symops': ['x,y,z', '-x,y,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,z+1'], 'universal_h_m': 'Ic11'}, {'hall': ' C -2xc', 'hermann_mauguin': 'Cc11', 'hermann_mauguin_u': 'Cc11', 'ncsym': ['x,y,z', '-x,y,z+1/2'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Cc', 'symops': ['x,y,z', '-x,y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Cc11'}, {'hall': ' B -2xab', 'hermann_mauguin': 'Bn11', 'hermann_mauguin_u': 'Bn11', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Bn', 'symops': ['x,y,z', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x+1,y+1/2,z+1/2'], 'universal_h_m': 'Bn11'}, {'hall': ' I -2xb', 'hermann_mauguin': 'Ib11', 'hermann_mauguin_u': 'Ib11', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Ib', 'symops': ['x,y,z', '-x,y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1,z+1/2'], 'universal_h_m': 'Ib11'}, {'hall': '-P 2y', 'hermann_mauguin': 'P12/m1', 'hermann_mauguin_u': 'P12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'universal_h_m': 'P12/m1'}, {'hall': '-P 2', 'hermann_mauguin': 'P112/m', 'hermann_mauguin_u': 'P112/m', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'universal_h_m': 'P112/m'}, {'hall': '-P 2x', 'hermann_mauguin': 'P2/m11', 'hermann_mauguin_u': 'P2/m11', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'universal_h_m': 'P2/m11'}, {'hall': '-P 2yb', 'hermann_mauguin': 'P121/m1', 'hermann_mauguin_u': 'P12_1/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y-1/2,z'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'P2_1/m', 'symops': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y-1/2,z'], 'universal_h_m': 'P121/m1'}, {'hall': '-P 2c', 'hermann_mauguin': 'P1121/m', 'hermann_mauguin_u': 'P112_1/m', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z-1/2'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'P2_1/m', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z-1/2'], 'universal_h_m': 'P1121/m'}, {'hall': '-P 2xa', 'hermann_mauguin': 'P21/m11', 'hermann_mauguin_u': 'P2_1/m11', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x-1/2,y,z'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'P2_1/m', 'symops': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x-1/2,y,z'], 'universal_h_m': 'P21/m11'}, {'hall': '-C 2y', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'C12/m1'}, {'hall': '-A 2y', 'hermann_mauguin': 'A12/m1', 'hermann_mauguin_u': 'A12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'A2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'A12/m1'}, {'hall': '-I 2y', 'hermann_mauguin': 'I12/m1', 'hermann_mauguin_u': 'I12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'I2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'I12/m1'}, {'hall': '-A 2', 'hermann_mauguin': 'A112/m', 'hermann_mauguin_u': 'A112/m', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'A2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'A112/m'}, {'hall': '-B 2', 'hermann_mauguin': 'B112/m', 'hermann_mauguin_u': 'B112/m', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'B2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2'], 'universal_h_m': 'B112/m'}, {'hall': '-I 2', 'hermann_mauguin': 'I112/m', 'hermann_mauguin_u': 'I112/m', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'I2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'I112/m'}, {'hall': '-B 2x', 'hermann_mauguin': 'B2/m11', 'hermann_mauguin_u': 'B2/m11', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'B2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z', 'x+1/2,y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'B2/m11'}, {'hall': '-C 2x', 'hermann_mauguin': 'C2/m11', 'hermann_mauguin_u': 'C2/m11', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'C2/m11'}, {'hall': '-I 2x', 'hermann_mauguin': 'I2/m11', 'hermann_mauguin_u': 'I2/m11', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'I2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'I2/m11'}, {'hall': '-P 2yc', 'hermann_mauguin': 'P12/c1', 'hermann_mauguin_u': 'P12/c1', 'ncsym': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2'], 'universal_h_m': 'P12/c1'}, {'hall': '-P 2yac', 'hermann_mauguin': 'P12/n1', 'hermann_mauguin_u': 'P12/n1', 'ncsym': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,-y,z-1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/n', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'P12/n1'}, {'hall': '-P 2ya', 'hermann_mauguin': 'P12/a1', 'hermann_mauguin_u': 'P12/a1', 'ncsym': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/a', 'symops': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z'], 'universal_h_m': 'P12/a1'}, {'hall': '-P 2a', 'hermann_mauguin': 'P112/a', 'hermann_mauguin_u': 'P112/a', 'ncsym': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/a', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z'], 'universal_h_m': 'P112/a'}, {'hall': '-P 2ab', 'hermann_mauguin': 'P112/n', 'hermann_mauguin_u': 'P112/n', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/n', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z'], 'universal_h_m': 'P112/n'}, {'hall': '-P 2b', 'hermann_mauguin': 'P112/b', 'hermann_mauguin_u': 'P112/b', 'ncsym': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/b', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z'], 'universal_h_m': 'P112/b'}, {'hall': '-P 2xb', 'hermann_mauguin': 'P2/b11', 'hermann_mauguin_u': 'P2/b11', 'ncsym': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/b', 'symops': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z'], 'universal_h_m': 'P2/b11'}, {'hall': '-P 2xbc', 'hermann_mauguin': 'P2/n11', 'hermann_mauguin_u': 'P2/n11', 'ncsym': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x,-y,-z', '-x,y-1/2,z-1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/n', 'symops': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x,-y,-z', '-x,y-1/2,z-1/2'], 'universal_h_m': 'P2/n11'}, {'hall': '-P 2xc', 'hermann_mauguin': 'P2/c11', 'hermann_mauguin_u': 'P2/c11', 'ncsym': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2'], 'universal_h_m': 'P2/c11'}, {'hall': '-P 2ybc', 'hermann_mauguin': 'P121/c1', 'hermann_mauguin_u': 'P12_1/c1', 'ncsym': ['x,y,z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,-y-1/2,z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'P121/c1'}, {'hall': '-P 2yn', 'hermann_mauguin': 'P121/n1', 'hermann_mauguin_u': 'P12_1/n1', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,-y-1/2,z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/n', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'P121/n1'}, {'hall': '-P 2yab', 'hermann_mauguin': 'P121/a1', 'hermann_mauguin_u': 'P12_1/a1', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,-y-1/2,z'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/a', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'P121/a1'}, {'hall': '-P 2ac', 'hermann_mauguin': 'P1121/a', 'hermann_mauguin_u': 'P112_1/a', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/a', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2'], 'universal_h_m': 'P1121/a'}, {'hall': '-P 2n', 'hermann_mauguin': 'P1121/n', 'hermann_mauguin_u': 'P112_1/n', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/n', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2'], 'universal_h_m': 'P1121/n'}, {'hall': '-P 2bc', 'hermann_mauguin': 'P1121/b', 'hermann_mauguin_u': 'P112_1/b', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/b', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2'], 'universal_h_m': 'P1121/b'}, {'hall': '-P 2xab', 'hermann_mauguin': 'P21/b11', 'hermann_mauguin_u': 'P2_1/b11', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x-1/2,y-1/2,z'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/b', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x-1/2,y-1/2,z'], 'universal_h_m': 'P21/b11'}, {'hall': '-P 2xn', 'hermann_mauguin': 'P21/n11', 'hermann_mauguin_u': 'P2_1/n11', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z', '-x-1/2,y-1/2,z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/n', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z', '-x-1/2,y-1/2,z-1/2'], 'universal_h_m': 'P21/n11'}, {'hall': '-P 2xac', 'hermann_mauguin': 'P21/c11', 'hermann_mauguin_u': 'P2_1/c11', 'ncsym': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x,-y,-z', '-x-1/2,y,z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x,-y,-z', '-x-1/2,y,z-1/2'], 'universal_h_m': 'P21/c11'}, {'hall': '-C 2yc', 'hermann_mauguin': 'C12/c1', 'hermann_mauguin_u': 'C12/c1', 'ncsym': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'C2/c', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z-1/2'], 'universal_h_m': 'C12/c1'}, {'hall': '-A 2yab', 'hermann_mauguin': 'A12/n1', 'hermann_mauguin_u': 'A12/n1', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,-y-1/2,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'A2/n', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,-y-1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,-y,z+1/2'], 'universal_h_m': 'A12/n1'}, {'hall': '-I 2ya', 'hermann_mauguin': 'I12/a1', 'hermann_mauguin_u': 'I12/a1', 'ncsym': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/a', 'symops': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'I12/a1'}, {'hall': '-A 2ya', 'hermann_mauguin': 'A12/a1', 'hermann_mauguin_u': 'A12/a1', 'ncsym': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'A2/a', 'symops': ['x,y,z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,-y+1/2,z+1/2'], 'universal_h_m': 'A12/a1'}, {'hall': '-C 2yac', 'hermann_mauguin': 'C12/n1', 'hermann_mauguin_u': 'C12/n1', 'ncsym': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,-y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'C2/n', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,-y+1/2,z-1/2'], 'universal_h_m': 'C12/n1'}, {'hall': '-I 2yc', 'hermann_mauguin': 'I12/c1', 'hermann_mauguin_u': 'I12/c1', 'ncsym': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/c', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z-1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'I12/c1'}, {'hall': '-A 2a', 'hermann_mauguin': 'A112/a', 'hermann_mauguin_u': 'A112/a', 'ncsym': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'A2/a', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y+1/2,-z+1/2'], 'universal_h_m': 'A112/a'}, {'hall': '-B 2ab', 'hermann_mauguin': 'B112/n', 'hermann_mauguin_u': 'B112/n', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'B2/n', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z', 'x+1/2,y,z+1/2', '-x+1,-y+1/2,z+1/2', '-x+1/2,-y,-z+1/2', 'x,y-1/2,-z+1/2'], 'universal_h_m': 'B112/n'}, {'hall': '-I 2b', 'hermann_mauguin': 'I112/b', 'hermann_mauguin_u': 'I112/b', 'ncsym': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/b', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2'], 'universal_h_m': 'I112/b'}, {'hall': '-B 2b', 'hermann_mauguin': 'B112/b', 'hermann_mauguin_u': 'B112/b', 'ncsym': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'B2/b', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,-y,-z', 'x,y-1/2,-z', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y-1/2,-z+1/2'], 'universal_h_m': 'B112/b'}, {'hall': '-A 2ab', 'hermann_mauguin': 'A112/n', 'hermann_mauguin_u': 'A112/n', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'A2/n', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x-1/2,y-1/2,-z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y,-z+1/2'], 'universal_h_m': 'A112/n'}, {'hall': '-I 2a', 'hermann_mauguin': 'I112/a', 'hermann_mauguin_u': 'I112/a', 'ncsym': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/a', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x-1/2,y,-z', 'x+1/2,y+1/2,z+1/2', '-x+1,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'I112/a'}, {'hall': '-B 2xb', 'hermann_mauguin': 'B2/b11', 'hermann_mauguin_u': 'B2/b11', 'ncsym': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'B2/b', 'symops': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z', 'x+1/2,y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+1/2,y-1/2,z+1/2'], 'universal_h_m': 'B2/b11'}, {'hall': '-C 2xac', 'hermann_mauguin': 'C2/n11', 'hermann_mauguin_u': 'C2/n11', 'ncsym': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x,-y,-z', '-x-1/2,y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'C2/n', 'symops': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x,-y,-z', '-x-1/2,y,z-1/2', 'x+1/2,y+1/2,z', 'x+1,-y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', '-x,y+1/2,z-1/2'], 'universal_h_m': 'C2/n11'}, {'hall': '-I 2xc', 'hermann_mauguin': 'I2/c11', 'hermann_mauguin_u': 'I2/c11', 'ncsym': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/c', 'symops': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,z'], 'universal_h_m': 'I2/c11'}, {'hall': '-C 2xc', 'hermann_mauguin': 'C2/c11', 'hermann_mauguin_u': 'C2/c11', 'ncsym': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'C2/c', 'symops': ['x,y,z', 'x,-y,-z+1/2', '-x,-y,-z', '-x,y,z-1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,z-1/2'], 'universal_h_m': 'C2/c11'}, {'hall': '-B 2xab', 'hermann_mauguin': 'B2/n11', 'hermann_mauguin_u': 'B2/n11', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x-1/2,y-1/2,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'B2/n', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x-1/2,y-1/2,z', 'x+1/2,y,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', '-x,y-1/2,z+1/2'], 'universal_h_m': 'B2/n11'}, {'hall': '-I 2xb', 'hermann_mauguin': 'I2/b11', 'hermann_mauguin_u': 'I2/b11', 'ncsym': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'I2/b', 'symops': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y-1/2,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'I2/b11'}, {'hall': ' P 2 2', 'hermann_mauguin': 'P222', 'hermann_mauguin_u': 'P222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 16, 'point_group': '222', 'schoenflies': 'D2^1', 'short_h_m': 'P222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'universal_h_m': 'P222'}, {'hall': ' P 2c 2', 'hermann_mauguin': 'P2221', 'hermann_mauguin_u': 'P222_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2'], 'number': 17, 'point_group': '222', 'schoenflies': 'D2^2', 'short_h_m': 'P222_1', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2'], 'universal_h_m': 'P2221'}, {'hall': ' P 2a 2a', 'hermann_mauguin': 'P2122', 'hermann_mauguin_u': 'P2_122', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z'], 'number': 17, 'point_group': '222', 'schoenflies': 'D2^2', 'short_h_m': 'P2_122', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z'], 'universal_h_m': 'P2122'}, {'hall': ' P 2 2b', 'hermann_mauguin': 'P2212', 'hermann_mauguin_u': 'P22_12', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z'], 'number': 17, 'point_group': '222', 'schoenflies': 'D2^2', 'short_h_m': 'P22_12', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z'], 'universal_h_m': 'P2212'}, {'hall': ' P 2 2ab', 'hermann_mauguin': 'P21212', 'hermann_mauguin_u': 'P2_12_12', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z'], 'number': 18, 'point_group': '222', 'schoenflies': 'D2^3', 'short_h_m': 'P2_12_12', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'P21212'}, {'hall': ' P 2bc 2', 'hermann_mauguin': 'P22121', 'hermann_mauguin_u': 'P22_12_1', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2'], 'number': 18, 'point_group': '222', 'schoenflies': 'D2^3', 'short_h_m': 'P22_12_1', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'P22121'}, {'hall': ' P 2ac 2ac', 'hermann_mauguin': 'P21221', 'hermann_mauguin_u': 'P2_122_1', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z'], 'number': 18, 'point_group': '222', 'schoenflies': 'D2^3', 'short_h_m': 'P2_122_1', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z'], 'universal_h_m': 'P21221'}, {'hall': ' P 2ac 2ab', 'hermann_mauguin': 'P212121', 'hermann_mauguin_u': 'P2_12_12_1', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2'], 'number': 19, 'point_group': '222', 'schoenflies': 'D2^4', 'short_h_m': 'P2_12_12_1', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'P212121'}, {'hall': ' C 2c 2', 'hermann_mauguin': 'C2221', 'hermann_mauguin_u': 'C222_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2'], 'number': 20, 'point_group': '222', 'schoenflies': 'D2^5', 'short_h_m': 'C222_1', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'C2221'}, {'hall': ' A 2a 2a', 'hermann_mauguin': 'A2122', 'hermann_mauguin_u': 'A2_122', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z'], 'number': 20, 'point_group': '222', 'schoenflies': 'D2^5', 'short_h_m': 'A2_122', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'A2122'}, {'hall': ' B 2 2b', 'hermann_mauguin': 'B2212', 'hermann_mauguin_u': 'B22_12', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z'], 'number': 20, 'point_group': '222', 'schoenflies': 'D2^5', 'short_h_m': 'B22_12', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'B2212'}, {'hall': ' C 2 2', 'hermann_mauguin': 'C222', 'hermann_mauguin_u': 'C222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 21, 'point_group': '222', 'schoenflies': 'D2^6', 'short_h_m': 'C222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'C222'}, {'hall': ' A 2 2', 'hermann_mauguin': 'A222', 'hermann_mauguin_u': 'A222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 21, 'point_group': '222', 'schoenflies': 'D2^6', 'short_h_m': 'A222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'A222'}, {'hall': ' B 2 2', 'hermann_mauguin': 'B222', 'hermann_mauguin_u': 'B222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 21, 'point_group': '222', 'schoenflies': 'D2^6', 'short_h_m': 'B222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2'], 'universal_h_m': 'B222'}, {'hall': ' F 2 2', 'hermann_mauguin': 'F222', 'hermann_mauguin_u': 'F222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 22, 'point_group': '222', 'schoenflies': 'D2^7', 'short_h_m': 'F222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'F222'}, {'hall': ' I 2 2', 'hermann_mauguin': 'I222', 'hermann_mauguin_u': 'I222', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z'], 'number': 23, 'point_group': '222', 'schoenflies': 'D2^8', 'short_h_m': 'I222', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'I222'}, {'hall': ' I 2b 2c', 'hermann_mauguin': 'I212121', 'hermann_mauguin_u': 'I2_12_12_1', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2'], 'number': 24, 'point_group': '222', 'schoenflies': 'D2^9', 'short_h_m': 'I2_12_12_1', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1,-z+1'], 'universal_h_m': 'I212121'}, {'hall': ' P 2 -2', 'hermann_mauguin': 'Pmm2', 'hermann_mauguin_u': 'Pmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 25, 'point_group': 'mm2', 'schoenflies': 'C2v^1', 'short_h_m': 'Pmm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'universal_h_m': 'Pmm2'}, {'hall': ' P -2 2', 'hermann_mauguin': 'P2mm', 'hermann_mauguin_u': 'P2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 25, 'point_group': 'mm2', 'schoenflies': 'C2v^1', 'short_h_m': 'P2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'universal_h_m': 'P2mm'}, {'hall': ' P -2 -2', 'hermann_mauguin': 'Pm2m', 'hermann_mauguin_u': 'Pm2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 25, 'point_group': 'mm2', 'schoenflies': 'C2v^1', 'short_h_m': 'Pm2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'universal_h_m': 'Pm2m'}, {'hall': ' P 2c -2', 'hermann_mauguin': 'Pmc21', 'hermann_mauguin_u': 'Pmc2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'Pmc2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'universal_h_m': 'Pmc21'}, {'hall': ' P 2c -2c', 'hermann_mauguin': 'Pcm21', 'hermann_mauguin_u': 'Pcm2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'Pcm2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'universal_h_m': 'Pcm21'}, {'hall': ' P -2a 2a', 'hermann_mauguin': 'P21ma', 'hermann_mauguin_u': 'P2_1ma', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,-y,-z', 'x,-y,z'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'P2_1ma', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,-y,-z', 'x,-y,z'], 'universal_h_m': 'P21ma'}, {'hall': ' P -2 2a', 'hermann_mauguin': 'P21am', 'hermann_mauguin_u': 'P2_1am', 'ncsym': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z', 'x+1/2,-y,z'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'P2_1am', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z', 'x+1/2,-y,z'], 'universal_h_m': 'P21am'}, {'hall': ' P -2 -2b', 'hermann_mauguin': 'Pb21m', 'hermann_mauguin_u': 'Pb2_1m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'Pb2_1m', 'symops': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'universal_h_m': 'Pb21m'}, {'hall': ' P -2b -2', 'hermann_mauguin': 'Pm21b', 'hermann_mauguin_u': 'Pm2_1b', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'Pm2_1b', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'universal_h_m': 'Pm21b'}, {'hall': ' P 2 -2c', 'hermann_mauguin': 'Pcc2', 'hermann_mauguin_u': 'Pcc2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'number': 27, 'point_group': 'mm2', 'schoenflies': 'C2v^3', 'short_h_m': 'Pcc2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Pcc2'}, {'hall': ' P -2a 2', 'hermann_mauguin': 'P2aa', 'hermann_mauguin_u': 'P2aa', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'number': 27, 'point_group': 'mm2', 'schoenflies': 'C2v^3', 'short_h_m': 'P2aa', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'universal_h_m': 'P2aa'}, {'hall': ' P -2b -2b', 'hermann_mauguin': 'Pb2b', 'hermann_mauguin_u': 'Pb2b', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'number': 27, 'point_group': 'mm2', 'schoenflies': 'C2v^3', 'short_h_m': 'Pb2b', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'universal_h_m': 'Pb2b'}, {'hall': ' P 2 -2a', 'hermann_mauguin': 'Pma2', 'hermann_mauguin_u': 'Pma2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'Pma2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'universal_h_m': 'Pma2'}, {'hall': ' P 2 -2b', 'hermann_mauguin': 'Pbm2', 'hermann_mauguin_u': 'Pbm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'Pbm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z'], 'universal_h_m': 'Pbm2'}, {'hall': ' P -2b 2', 'hermann_mauguin': 'P2mb', 'hermann_mauguin_u': 'P2mb', 'ncsym': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'P2mb', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z'], 'universal_h_m': 'P2mb'}, {'hall': ' P -2c 2', 'hermann_mauguin': 'P2cm', 'hermann_mauguin_u': 'P2cm', 'ncsym': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'P2cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2'], 'universal_h_m': 'P2cm'}, {'hall': ' P -2c -2c', 'hermann_mauguin': 'Pc2m', 'hermann_mauguin_u': 'Pc2m', 'ncsym': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'Pc2m', 'symops': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z'], 'universal_h_m': 'Pc2m'}, {'hall': ' P -2a -2a', 'hermann_mauguin': 'Pm2a', 'hermann_mauguin_u': 'Pm2a', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z'], 'number': 28, 'point_group': 'mm2', 'schoenflies': 'C2v^4', 'short_h_m': 'Pm2a', 'symops': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z'], 'universal_h_m': 'Pm2a'}, {'hall': ' P 2c -2ac', 'hermann_mauguin': 'Pca21', 'hermann_mauguin_u': 'Pca2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'Pca2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'universal_h_m': 'Pca21'}, {'hall': ' P 2c -2b', 'hermann_mauguin': 'Pbc21', 'hermann_mauguin_u': 'Pbc2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y+1/2,z', 'x,-y+1/2,z+1/2'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'Pbc2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,y+1/2,z', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Pbc21'}, {'hall': ' P -2b 2a', 'hermann_mauguin': 'P21ab', 'hermann_mauguin_u': 'P2_1ab', 'ncsym': ['x,y,z', 'x,y+1/2,-z', 'x+1/2,-y,-z', 'x+1/2,-y+1/2,z'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'P2_1ab', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x+1/2,-y,-z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P21ab'}, {'hall': ' P -2ac 2a', 'hermann_mauguin': 'P21ca', 'hermann_mauguin_u': 'P2_1ca', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', 'x+1/2,-y,-z', 'x,-y,z+1/2'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'P2_1ca', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', 'x+1/2,-y,-z', 'x,-y,z+1/2'], 'universal_h_m': 'P21ca'}, {'hall': ' P -2bc -2c', 'hermann_mauguin': 'Pc21b', 'hermann_mauguin_u': 'Pc2_1b', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', '-x,y+1/2,-z'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'Pc2_1b', 'symops': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', '-x,y+1/2,-z'], 'universal_h_m': 'Pc21b'}, {'hall': ' P -2a -2ab', 'hermann_mauguin': 'Pb21a', 'hermann_mauguin_u': 'Pb2_1a', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y+1/2,z', '-x,y+1/2,-z'], 'number': 29, 'point_group': 'mm2', 'schoenflies': 'C2v^5', 'short_h_m': 'Pb2_1a', 'symops': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y+1/2,z', '-x,y+1/2,-z'], 'universal_h_m': 'Pb21a'}, {'hall': ' P 2 -2bc', 'hermann_mauguin': 'Pnc2', 'hermann_mauguin_u': 'Pnc2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'Pnc2', 'symops': ['x,y,z', '-x,-y,z', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Pnc2'}, {'hall': ' P 2 -2ac', 'hermann_mauguin': 'Pcn2', 'hermann_mauguin_u': 'Pcn2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'Pcn2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Pcn2'}, {'hall': ' P -2ac 2', 'hermann_mauguin': 'P2na', 'hermann_mauguin_u': 'P2na', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', 'x,-y,-z', 'x+1/2,-y,z+1/2'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'P2na', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', 'x,-y,-z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P2na'}, {'hall': ' P -2ab 2', 'hermann_mauguin': 'P2an', 'hermann_mauguin_u': 'P2an', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', 'x,-y,-z', 'x+1/2,-y+1/2,z'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'P2an', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', 'x,-y,-z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P2an'}, {'hall': ' P -2ab -2ab', 'hermann_mauguin': 'Pb2n', 'hermann_mauguin_u': 'Pb2n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x,y,-z'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'Pb2n', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x,y,-z'], 'universal_h_m': 'Pb2n'}, {'hall': ' P -2bc -2bc', 'hermann_mauguin': 'Pn2b', 'hermann_mauguin_u': 'Pn2b', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-x,y,-z'], 'number': 30, 'point_group': 'mm2', 'schoenflies': 'C2v^6', 'short_h_m': 'Pn2b', 'symops': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-x,y,-z'], 'universal_h_m': 'Pn2b'}, {'hall': ' P 2ac -2', 'hermann_mauguin': 'Pmn21', 'hermann_mauguin_u': 'Pmn2_1', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'Pmn2_1', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,y,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Pmn21'}, {'hall': ' P 2bc -2bc', 'hermann_mauguin': 'Pnm21', 'hermann_mauguin_u': 'Pnm2_1', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'Pnm2_1', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z'], 'universal_h_m': 'Pnm21'}, {'hall': ' P -2ab 2ab', 'hermann_mauguin': 'P21mn', 'hermann_mauguin_u': 'P2_1mn', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,-z', 'x,-y,z'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'P2_1mn', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,-z', 'x,-y,z'], 'universal_h_m': 'P21mn'}, {'hall': ' P -2 2ac', 'hermann_mauguin': 'P21nm', 'hermann_mauguin_u': 'P2_1nm', 'ncsym': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'P2_1nm', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P21nm'}, {'hall': ' P -2 -2bc', 'hermann_mauguin': 'Pn21m', 'hermann_mauguin_u': 'Pn2_1m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'Pn2_1m', 'symops': ['x,y,z', 'x,y,-z', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'Pn21m'}, {'hall': ' P -2ab -2', 'hermann_mauguin': 'Pm21n', 'hermann_mauguin_u': 'Pm2_1n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x,y,z', '-x+1/2,y+1/2,-z'], 'number': 31, 'point_group': 'mm2', 'schoenflies': 'C2v^7', 'short_h_m': 'Pm2_1n', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', '-x,y,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Pm21n'}, {'hall': ' P 2 -2ab', 'hermann_mauguin': 'Pba2', 'hermann_mauguin_u': 'Pba2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 32, 'point_group': 'mm2', 'schoenflies': 'C2v^8', 'short_h_m': 'Pba2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Pba2'}, {'hall': ' P -2bc 2', 'hermann_mauguin': 'P2cb', 'hermann_mauguin_u': 'P2cb', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', 'x,-y,-z', 'x,-y+1/2,z+1/2'], 'number': 32, 'point_group': 'mm2', 'schoenflies': 'C2v^8', 'short_h_m': 'P2cb', 'symops': ['x,y,z', 'x,y+1/2,-z+1/2', 'x,-y,-z', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'P2cb'}, {'hall': ' P -2ac -2ac', 'hermann_mauguin': 'Pc2a', 'hermann_mauguin_u': 'Pc2a', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x,y,-z'], 'number': 32, 'point_group': 'mm2', 'schoenflies': 'C2v^8', 'short_h_m': 'Pc2a', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x,y,-z'], 'universal_h_m': 'Pc2a'}, {'hall': ' P 2c -2n', 'hermann_mauguin': 'Pna21', 'hermann_mauguin_u': 'Pna2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'Pna2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Pna21'}, {'hall': ' P 2c -2ab', 'hermann_mauguin': 'Pbn21', 'hermann_mauguin_u': 'Pbn2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'Pbn2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Pbn21'}, {'hall': ' P -2bc 2a', 'hermann_mauguin': 'P21nb', 'hermann_mauguin_u': 'P2_1nb', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,-y,-z', 'x+1/2,-y+1/2,z+1/2'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'P2_1nb', 'symops': ['x,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,-y,-z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P21nb'}, {'hall': ' P -2n 2a', 'hermann_mauguin': 'P21cn', 'hermann_mauguin_u': 'P2_1cn', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y,-z', 'x,-y+1/2,z+1/2'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'P2_1cn', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y,-z', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'P21cn'}, {'hall': ' P -2n -2ac', 'hermann_mauguin': 'Pc21n', 'hermann_mauguin_u': 'Pc2_1n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', '-x,y+1/2,-z'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'Pc2_1n', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', '-x,y+1/2,-z'], 'universal_h_m': 'Pc21n'}, {'hall': ' P -2ac -2n', 'hermann_mauguin': 'Pn21a', 'hermann_mauguin_u': 'Pn2_1a', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z'], 'number': 33, 'point_group': 'mm2', 'schoenflies': 'C2v^9', 'short_h_m': 'Pn2_1a', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z'], 'universal_h_m': 'Pn21a'}, {'hall': ' P 2 -2n', 'hermann_mauguin': 'Pnn2', 'hermann_mauguin_u': 'Pnn2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 34, 'point_group': 'mm2', 'schoenflies': 'C2v^10', 'short_h_m': 'Pnn2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Pnn2'}, {'hall': ' P -2n 2', 'hermann_mauguin': 'P2nn', 'hermann_mauguin_u': 'P2nn', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', 'x,-y,-z', 'x+1/2,-y+1/2,z+1/2'], 'number': 34, 'point_group': 'mm2', 'schoenflies': 'C2v^10', 'short_h_m': 'P2nn', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', 'x,-y,-z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P2nn'}, {'hall': ' P -2n -2n', 'hermann_mauguin': 'Pn2n', 'hermann_mauguin_u': 'Pn2n', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y,-z'], 'number': 34, 'point_group': 'mm2', 'schoenflies': 'C2v^10', 'short_h_m': 'Pn2n', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y,-z'], 'universal_h_m': 'Pn2n'}, {'hall': ' C 2 -2', 'hermann_mauguin': 'Cmm2', 'hermann_mauguin_u': 'Cmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'Cmm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Cmm2'}, {'hall': ' A -2 2', 'hermann_mauguin': 'A2mm', 'hermann_mauguin_u': 'A2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'A2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'A2mm'}, {'hall': ' B -2 -2', 'hermann_mauguin': 'Bm2m', 'hermann_mauguin_u': 'Bm2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'Bm2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2'], 'universal_h_m': 'Bm2m'}, {'hall': ' C 2c -2', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Cmc21'}, {'hall': ' C 2c -2c', 'hermann_mauguin': 'Ccm21', 'hermann_mauguin_u': 'Ccm2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Ccm2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Ccm21'}, {'hall': ' A -2a 2a', 'hermann_mauguin': 'A21ma', 'hermann_mauguin_u': 'A2_1ma', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,-y,-z', 'x,-y,z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'A2_1ma', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,-y,-z', 'x,-y,z', 'x,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'A21ma'}, {'hall': ' A -2 2a', 'hermann_mauguin': 'A21am', 'hermann_mauguin_u': 'A2_1am', 'ncsym': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z', 'x+1/2,-y,z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'A2_1am', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,-y,-z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'A21am'}, {'hall': ' B -2 -2b', 'hermann_mauguin': 'Bb21m', 'hermann_mauguin_u': 'Bb2_1m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Bb2_1m', 'symops': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Bb21m'}, {'hall': ' B -2b -2', 'hermann_mauguin': 'Bm21b', 'hermann_mauguin_u': 'Bm2_1b', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Bm2_1b', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z', 'x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Bm21b'}, {'hall': ' C 2 -2c', 'hermann_mauguin': 'Ccc2', 'hermann_mauguin_u': 'Ccc2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'number': 37, 'point_group': 'mm2', 'schoenflies': 'C2v^13', 'short_h_m': 'Ccc2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Ccc2'}, {'hall': ' A -2a 2', 'hermann_mauguin': 'A2aa', 'hermann_mauguin_u': 'A2aa', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'number': 37, 'point_group': 'mm2', 'schoenflies': 'C2v^13', 'short_h_m': 'A2aa', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'A2aa'}, {'hall': ' B -2b -2b', 'hermann_mauguin': 'Bb2b', 'hermann_mauguin_u': 'Bb2b', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'number': 37, 'point_group': 'mm2', 'schoenflies': 'C2v^13', 'short_h_m': 'Bb2b', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z', 'x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x+1/2,y,-z+1/2'], 'universal_h_m': 'Bb2b'}, {'hall': ' A 2 -2', 'hermann_mauguin': 'Amm2', 'hermann_mauguin_u': 'Amm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Amm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Amm2'}, {'hall': ' B 2 -2', 'hermann_mauguin': 'Bmm2', 'hermann_mauguin_u': 'Bmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Bmm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Bmm2'}, {'hall': ' B -2 2', 'hermann_mauguin': 'B2mm', 'hermann_mauguin_u': 'B2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'B2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2', 'x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'B2mm'}, {'hall': ' C -2 2', 'hermann_mauguin': 'C2mm', 'hermann_mauguin_u': 'C2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'C2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'C2mm'}, {'hall': ' C -2 -2', 'hermann_mauguin': 'Cm2m', 'hermann_mauguin_u': 'Cm2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Cm2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Cm2m'}, {'hall': ' A -2 -2', 'hermann_mauguin': 'Am2m', 'hermann_mauguin_u': 'Am2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Am2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'Am2m'}, {'hall': ' A 2 -2b', 'hermann_mauguin': 'Aem2', 'hermann_mauguin_u': 'Aem2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Aem2', 'symops': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,y+1,z+1/2', 'x,-y+1,z+1/2'], 'universal_h_m': 'Aem2'}, {'hall': ' B 2 -2a', 'hermann_mauguin': 'Bme2', 'hermann_mauguin_u': 'Bme2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Bme2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1,y,z+1/2', 'x+1,-y,z+1/2'], 'universal_h_m': 'Bme2'}, {'hall': ' B -2a 2', 'hermann_mauguin': 'B2em', 'hermann_mauguin_u': 'B2em', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'B2em', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z', 'x+1/2,y,z+1/2', 'x+1,y,-z+1/2', 'x+1/2,-y,-z+1/2', 'x+1,-y,z+1/2'], 'universal_h_m': 'B2em'}, {'hall': ' C -2a 2', 'hermann_mauguin': 'C2me', 'hermann_mauguin_u': 'C2me', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'C2me', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z', 'x+1/2,y+1/2,z', 'x+1,y+1/2,-z', 'x+1/2,-y+1/2,-z', 'x+1,-y+1/2,z'], 'universal_h_m': 'C2me'}, {'hall': ' C -2a -2a', 'hermann_mauguin': 'Cm2e', 'hermann_mauguin_u': 'Cm2e', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Cm2e', 'symops': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z', 'x+1/2,y+1/2,z', 'x+1,y+1/2,-z', '-x+1,y+1/2,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Cm2e'}, {'hall': ' A -2b -2b', 'hermann_mauguin': 'Ae2m', 'hermann_mauguin_u': 'Ae2m', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Ae2m', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z', 'x,y+1/2,z+1/2', 'x,y+1,-z+1/2', '-x,y+1,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'Ae2m'}, {'hall': ' A 2 -2a', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Ama2'}, {'hall': ' B 2 -2b', 'hermann_mauguin': 'Bbm2', 'hermann_mauguin_u': 'Bbm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Bbm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Bbm2'}, {'hall': ' B -2b 2', 'hermann_mauguin': 'B2mb', 'hermann_mauguin_u': 'B2mb', 'ncsym': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'B2mb', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z', 'x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y,-z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'B2mb'}, {'hall': ' C -2c 2', 'hermann_mauguin': 'C2cm', 'hermann_mauguin_u': 'C2cm', 'ncsym': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'C2cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'C2cm'}, {'hall': ' C -2c -2c', 'hermann_mauguin': 'Cc2m', 'hermann_mauguin_u': 'Cc2m', 'ncsym': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Cc2m', 'symops': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Cc2m'}, {'hall': ' A -2a -2a', 'hermann_mauguin': 'Am2a', 'hermann_mauguin_u': 'Am2a', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Am2a', 'symops': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z', 'x,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'Am2a'}, {'hall': ' A 2 -2ab', 'hermann_mauguin': 'Aea2', 'hermann_mauguin_u': 'Aea2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Aea2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x+1/2,y+1,z+1/2', 'x+1/2,-y+1,z+1/2'], 'universal_h_m': 'Aea2'}, {'hall': ' B 2 -2ab', 'hermann_mauguin': 'Bbe2', 'hermann_mauguin_u': 'Bbe2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Bbe2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1,y+1/2,z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'Bbe2'}, {'hall': ' B -2ab 2', 'hermann_mauguin': 'B2eb', 'hermann_mauguin_u': 'B2eb', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', 'x,-y,-z', 'x+1/2,-y+1/2,z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'B2eb', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', 'x,-y,-z', 'x+1/2,-y+1/2,z', 'x+1/2,y,z+1/2', 'x+1,y+1/2,-z+1/2', 'x+1/2,-y,-z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'B2eb'}, {'hall': ' C -2ac 2', 'hermann_mauguin': 'C2eb', 'hermann_mauguin_u': 'C2eb', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', 'x,-y,-z', 'x+1/2,-y,z+1/2'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'C2eb', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', 'x,-y,-z', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'C2eb'}, {'hall': ' C -2ac -2ac', 'hermann_mauguin': 'Cc2e', 'hermann_mauguin_u': 'Cc2e', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x,y,-z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Cc2e', 'symops': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x,y,-z', 'x+1/2,y+1/2,z', 'x+1,y+1/2,-z+1/2', '-x+1,y+1/2,z+1/2', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Cc2e'}, {'hall': ' A -2ab -2ab', 'hermann_mauguin': 'Ae2a', 'hermann_mauguin_u': 'Ae2a', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x,y,-z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Ae2a', 'symops': ['x,y,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x,y,-z', 'x,y+1/2,z+1/2', 'x+1/2,y+1,-z+1/2', '-x+1/2,y+1,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'Ae2a'}, {'hall': ' F 2 -2', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Fmm2'}, {'hall': ' F -2 2', 'hermann_mauguin': 'F2mm', 'hermann_mauguin_u': 'F2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'F2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2', 'x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'F2mm'}, {'hall': ' F -2 -2', 'hermann_mauguin': 'Fm2m', 'hermann_mauguin_u': 'Fm2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fm2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'Fm2m'}, {'hall': ' F 2 -2d', 'hermann_mauguin': 'Fdd2', 'hermann_mauguin_u': 'Fdd2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/4,y+1/4,z+1/4', 'x+3/4,-y+3/4,z+1/4'], 'number': 43, 'point_group': 'mm2', 'schoenflies': 'C2v^19', 'short_h_m': 'Fdd2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/4,y+1/4,z+1/4', 'x+3/4,-y+3/4,z+1/4', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x+1/4,y+3/4,z+3/4', 'x+3/4,-y+5/4,z+3/4', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+3/4,y+1/4,z+3/4', 'x+5/4,-y+3/4,z+3/4', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+3/4,y+3/4,z+1/4', 'x+5/4,-y+5/4,z+1/4'], 'universal_h_m': 'Fdd2'}, {'hall': ' F -2d 2', 'hermann_mauguin': 'F2dd', 'hermann_mauguin_u': 'F2dd', 'ncsym': ['x,y,z', 'x+1/4,y+1/4,-z+1/4', 'x,-y,-z', 'x+1/4,-y+1/4,z+1/4'], 'number': 43, 'point_group': 'mm2', 'schoenflies': 'C2v^19', 'short_h_m': 'F2dd', 'symops': ['x,y,z', 'x+1/4,y+1/4,-z+1/4', 'x,-y,-z', 'x+1/4,-y+1/4,z+1/4', 'x,y+1/2,z+1/2', 'x+1/4,y+3/4,-z+3/4', 'x,-y+1/2,-z+1/2', 'x+1/4,-y+3/4,z+3/4', 'x+1/2,y,z+1/2', 'x+3/4,y+1/4,-z+3/4', 'x+1/2,-y,-z+1/2', 'x+3/4,-y+1/4,z+3/4', 'x+1/2,y+1/2,z', 'x+3/4,y+3/4,-z+1/4', 'x+1/2,-y+1/2,-z', 'x+3/4,-y+3/4,z+1/4'], 'universal_h_m': 'F2dd'}, {'hall': ' F -2d -2d', 'hermann_mauguin': 'Fd2d', 'hermann_mauguin_u': 'Fd2d', 'ncsym': ['x,y,z', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', '-x+1/2,y+1/2,-z'], 'number': 43, 'point_group': 'mm2', 'schoenflies': 'C2v^19', 'short_h_m': 'Fd2d', 'symops': ['x,y,z', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', '-x+1/2,y+1/2,-z', 'x,y+1/2,z+1/2', 'x+1/4,y+3/4,-z+3/4', '-x+1/4,y+3/4,z+3/4', '-x+1/2,y+1,-z+1/2', 'x+1/2,y,z+1/2', 'x+3/4,y+1/4,-z+3/4', '-x+3/4,y+1/4,z+3/4', '-x+1,y+1/2,-z+1/2', 'x+1/2,y+1/2,z', 'x+3/4,y+3/4,-z+1/4', '-x+3/4,y+3/4,z+1/4', '-x+1,y+1,-z'], 'universal_h_m': 'Fd2d'}, {'hall': ' I 2 -2', 'hermann_mauguin': 'Imm2', 'hermann_mauguin_u': 'Imm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Imm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Imm2'}, {'hall': ' I -2 2', 'hermann_mauguin': 'I2mm', 'hermann_mauguin_u': 'I2mm', 'ncsym': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'I2mm', 'symops': ['x,y,z', 'x,y,-z', 'x,-y,-z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'I2mm'}, {'hall': ' I -2 -2', 'hermann_mauguin': 'Im2m', 'hermann_mauguin_u': 'Im2m', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Im2m', 'symops': ['x,y,z', 'x,y,-z', '-x,y,z', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Im2m'}, {'hall': ' I 2 -2c', 'hermann_mauguin': 'Iba2', 'hermann_mauguin_u': 'Iba2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'number': 45, 'point_group': 'mm2', 'schoenflies': 'C2v^21', 'short_h_m': 'Iba2', 'symops': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1', 'x+1/2,-y+1/2,z+1'], 'universal_h_m': 'Iba2'}, {'hall': ' I -2a 2', 'hermann_mauguin': 'I2cb', 'hermann_mauguin_u': 'I2cb', 'ncsym': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z'], 'number': 45, 'point_group': 'mm2', 'schoenflies': 'C2v^21', 'short_h_m': 'I2cb', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x,-y,-z', 'x+1/2,-y,z', 'x+1/2,y+1/2,z+1/2', 'x+1,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'I2cb'}, {'hall': ' I -2b -2b', 'hermann_mauguin': 'Ic2a', 'hermann_mauguin_u': 'Ic2a', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'number': 45, 'point_group': 'mm2', 'schoenflies': 'C2v^21', 'short_h_m': 'Ic2a', 'symops': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1,-z+1/2', '-x+1/2,y+1,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Ic2a'}, {'hall': ' I 2 -2a', 'hermann_mauguin': 'Ima2', 'hermann_mauguin_u': 'Ima2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ima2', 'symops': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1,y+1/2,z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'Ima2'}, {'hall': ' I 2 -2b', 'hermann_mauguin': 'Ibm2', 'hermann_mauguin_u': 'Ibm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ibm2', 'symops': ['x,y,z', '-x,-y,z', '-x,y+1/2,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1,z+1/2', 'x+1/2,-y+1,z+1/2'], 'universal_h_m': 'Ibm2'}, {'hall': ' I -2b 2', 'hermann_mauguin': 'I2mb', 'hermann_mauguin_u': 'I2mb', 'ncsym': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'I2mb', 'symops': ['x,y,z', 'x,y+1/2,-z', 'x,-y,-z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1,z+1/2'], 'universal_h_m': 'I2mb'}, {'hall': ' I -2c 2', 'hermann_mauguin': 'I2cm', 'hermann_mauguin_u': 'I2cm', 'ncsym': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'I2cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x,-y,-z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1', 'x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1'], 'universal_h_m': 'I2cm'}, {'hall': ' I -2c -2c', 'hermann_mauguin': 'Ic2m', 'hermann_mauguin_u': 'Ic2m', 'ncsym': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ic2m', 'symops': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1', '-x+1/2,y+1/2,z+1', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Ic2m'}, {'hall': ' I -2a -2a', 'hermann_mauguin': 'Im2a', 'hermann_mauguin_u': 'Im2a', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Im2a', 'symops': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y,z', '-x,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1,y+1/2,-z+1/2', '-x+1,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Im2a'}, {'hall': '-P 2 2', 'hermann_mauguin': 'Pmmm', 'hermann_mauguin_u': 'Pmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 47, 'point_group': 'mmm', 'schoenflies': 'D2h^1', 'short_h_m': 'Pmmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'universal_h_m': 'Pmmm'}, {'hall': ' P 2 2 -1n', 'hermann_mauguin': 'Pnnn', 'hermann_mauguin_u': 'Pnnn', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 48, 'point_group': 'mmm', 'schoenflies': 'D2h^2', 'short_h_m': 'Pnnn', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Pnnn:1'}, {'hall': '-P 2ab 2bc', 'hermann_mauguin': 'Pnnn', 'hermann_mauguin_u': 'Pnnn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y,z-1/2'], 'number': 48, 'point_group': 'mmm', 'schoenflies': 'D2h^2', 'short_h_m': 'Pnnn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pnnn:2'}, {'hall': '-P 2 2c', 'hermann_mauguin': 'Pccm', 'hermann_mauguin_u': 'Pccm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2'], 'number': 49, 'point_group': 'mmm', 'schoenflies': 'D2h^3', 'short_h_m': 'Pccm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2'], 'universal_h_m': 'Pccm'}, {'hall': '-P 2a 2', 'hermann_mauguin': 'Pmaa', 'hermann_mauguin_u': 'Pmaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'number': 49, 'point_group': 'mmm', 'schoenflies': 'D2h^3', 'short_h_m': 'Pmaa', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'universal_h_m': 'Pmaa'}, {'hall': '-P 2b 2b', 'hermann_mauguin': 'Pbmb', 'hermann_mauguin_u': 'Pbmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z'], 'number': 49, 'point_group': 'mmm', 'schoenflies': 'D2h^3', 'short_h_m': 'Pbmb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z'], 'universal_h_m': 'Pbmb'}, {'hall': ' P 2 2 -1ab', 'hermann_mauguin': 'Pban', 'hermann_mauguin_u': 'Pban', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pban', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Pban:1'}, {'hall': '-P 2ab 2b', 'hermann_mauguin': 'Pban', 'hermann_mauguin_u': 'Pban', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pban', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z'], 'universal_h_m': 'Pban:2'}, {'hall': ' P 2 2 -1bc', 'hermann_mauguin': 'Pncb', 'hermann_mauguin_u': 'Pncb', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pncb', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Pncb:1'}, {'hall': '-P 2b 2bc', 'hermann_mauguin': 'Pncb', 'hermann_mauguin_u': 'Pncb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z-1/2', 'x,-y,z-1/2'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pncb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z-1/2', 'x,-y,z-1/2'], 'universal_h_m': 'Pncb:2'}, {'hall': ' P 2 2 -1ac', 'hermann_mauguin': 'Pcna', 'hermann_mauguin_u': 'Pcna', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pcna', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Pcna:1'}, {'hall': '-P 2a 2c', 'hermann_mauguin': 'Pcna', 'hermann_mauguin_u': 'Pcna', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z-1/2', 'x-1/2,-y,z-1/2'], 'number': 50, 'point_group': 'mmm', 'schoenflies': 'D2h^4', 'short_h_m': 'Pcna', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z-1/2', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pcna:2'}, {'hall': '-P 2a 2a', 'hermann_mauguin': 'Pmma', 'hermann_mauguin_u': 'Pmma', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmma', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z'], 'universal_h_m': 'Pmma'}, {'hall': '-P 2b 2', 'hermann_mauguin': 'Pmmb', 'hermann_mauguin_u': 'Pmmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmmb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z'], 'universal_h_m': 'Pmmb'}, {'hall': '-P 2 2b', 'hermann_mauguin': 'Pbmm', 'hermann_mauguin_u': 'Pbmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pbmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z'], 'universal_h_m': 'Pbmm'}, {'hall': '-P 2c 2c', 'hermann_mauguin': 'Pcmm', 'hermann_mauguin_u': 'Pcmm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pcmm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z'], 'universal_h_m': 'Pcmm'}, {'hall': '-P 2c 2', 'hermann_mauguin': 'Pmcm', 'hermann_mauguin_u': 'Pmcm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmcm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2'], 'universal_h_m': 'Pmcm'}, {'hall': '-P 2 2a', 'hermann_mauguin': 'Pmam', 'hermann_mauguin_u': 'Pmam', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmam', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z'], 'universal_h_m': 'Pmam'}, {'hall': '-P 2a 2bc', 'hermann_mauguin': 'Pnna', 'hermann_mauguin_u': 'Pnna', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pnna', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pnna'}, {'hall': '-P 2b 2n', 'hermann_mauguin': 'Pnnb', 'hermann_mauguin_u': 'Pnnb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y,z-1/2'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pnnb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pnnb'}, {'hall': '-P 2n 2b', 'hermann_mauguin': 'Pbnn', 'hermann_mauguin_u': 'Pbnn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y-1/2,z', 'x-1/2,-y,z-1/2'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pbnn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y-1/2,z', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pbnn'}, {'hall': '-P 2ab 2c', 'hermann_mauguin': 'Pcnn', 'hermann_mauguin_u': 'Pcnn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pcnn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pcnn'}, {'hall': '-P 2ab 2n', 'hermann_mauguin': 'Pncn', 'hermann_mauguin_u': 'Pncn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z-1/2', 'x,-y,z-1/2'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pncn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z-1/2', 'x,-y,z-1/2'], 'universal_h_m': 'Pncn'}, {'hall': '-P 2n 2bc', 'hermann_mauguin': 'Pnan', 'hermann_mauguin_u': 'Pnan', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y-1/2,z-1/2', 'x-1/2,-y,z'], 'number': 52, 'point_group': 'mmm', 'schoenflies': 'D2h^6', 'short_h_m': 'Pnan', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y-1/2,z-1/2', 'x-1/2,-y,z'], 'universal_h_m': 'Pnan'}, {'hall': '-P 2ac 2', 'hermann_mauguin': 'Pmna', 'hermann_mauguin_u': 'Pmna', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z', 'x-1/2,-y,z-1/2'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pmna', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pmna'}, {'hall': '-P 2bc 2bc', 'hermann_mauguin': 'Pnmb', 'hermann_mauguin_u': 'Pnmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y-1/2,z-1/2', 'x,-y,z'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pnmb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y-1/2,z-1/2', 'x,-y,z'], 'universal_h_m': 'Pnmb'}, {'hall': '-P 2ab 2ab', 'hermann_mauguin': 'Pbmn', 'hermann_mauguin_u': 'Pbmn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z', 'x,-y,z'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pbmn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z', 'x,-y,z'], 'universal_h_m': 'Pbmn'}, {'hall': '-P 2 2ac', 'hermann_mauguin': 'Pcnm', 'hermann_mauguin_u': 'Pcnm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z-1/2', 'x-1/2,-y,z-1/2'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pcnm', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z-1/2', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pcnm'}, {'hall': '-P 2 2bc', 'hermann_mauguin': 'Pncm', 'hermann_mauguin_u': 'Pncm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z-1/2', 'x,-y-1/2,z-1/2'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pncm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z-1/2', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pncm'}, {'hall': '-P 2ab 2', 'hermann_mauguin': 'Pman', 'hermann_mauguin_u': 'Pman', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z', 'x-1/2,-y-1/2,z'], 'number': 53, 'point_group': 'mmm', 'schoenflies': 'D2h^7', 'short_h_m': 'Pman', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pman'}, {'hall': '-P 2a 2ac', 'hermann_mauguin': 'Pcca', 'hermann_mauguin_u': 'Pcca', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z-1/2', 'x,-y,z-1/2'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pcca', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z-1/2', 'x,-y,z-1/2'], 'universal_h_m': 'Pcca'}, {'hall': '-P 2b 2c', 'hermann_mauguin': 'Pccb', 'hermann_mauguin_u': 'Pccb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pccb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pccb'}, {'hall': '-P 2a 2b', 'hermann_mauguin': 'Pbaa', 'hermann_mauguin_u': 'Pbaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pbaa', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pbaa'}, {'hall': '-P 2ac 2c', 'hermann_mauguin': 'Pcaa', 'hermann_mauguin_u': 'Pcaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z-1/2', 'x-1/2,-y,z'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pcaa', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z-1/2', 'x-1/2,-y,z'], 'universal_h_m': 'Pcaa'}, {'hall': '-P 2bc 2b', 'hermann_mauguin': 'Pbcb', 'hermann_mauguin_u': 'Pbcb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y-1/2,z', 'x,-y,z-1/2'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pbcb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y-1/2,z', 'x,-y,z-1/2'], 'universal_h_m': 'Pbcb'}, {'hall': '-P 2b 2ab', 'hermann_mauguin': 'Pbab', 'hermann_mauguin_u': 'Pbab', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y,z'], 'number': 54, 'point_group': 'mmm', 'schoenflies': 'D2h^8', 'short_h_m': 'Pbab', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y,z'], 'universal_h_m': 'Pbab'}, {'hall': '-P 2 2ab', 'hermann_mauguin': 'Pbam', 'hermann_mauguin_u': 'Pbam', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 55, 'point_group': 'mmm', 'schoenflies': 'D2h^9', 'short_h_m': 'Pbam', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pbam'}, {'hall': '-P 2bc 2', 'hermann_mauguin': 'Pmcb', 'hermann_mauguin_u': 'Pmcb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y,z', 'x,-y-1/2,z-1/2'], 'number': 55, 'point_group': 'mmm', 'schoenflies': 'D2h^9', 'short_h_m': 'Pmcb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y,z', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pmcb'}, {'hall': '-P 2ac 2ac', 'hermann_mauguin': 'Pcma', 'hermann_mauguin_u': 'Pcma', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y,z'], 'number': 55, 'point_group': 'mmm', 'schoenflies': 'D2h^9', 'short_h_m': 'Pcma', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y,z'], 'universal_h_m': 'Pcma'}, {'hall': '-P 2ab 2ac', 'hermann_mauguin': 'Pccn', 'hermann_mauguin_u': 'Pccn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y,z-1/2', 'x,-y-1/2,z-1/2'], 'number': 56, 'point_group': 'mmm', 'schoenflies': 'D2h^10', 'short_h_m': 'Pccn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y,z-1/2', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pccn'}, {'hall': '-P 2ac 2bc', 'hermann_mauguin': 'Pnaa', 'hermann_mauguin_u': 'Pnaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y-1/2,z-1/2', 'x-1/2,-y-1/2,z'], 'number': 56, 'point_group': 'mmm', 'schoenflies': 'D2h^10', 'short_h_m': 'Pnaa', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y-1/2,z-1/2', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pnaa'}, {'hall': '-P 2bc 2ab', 'hermann_mauguin': 'Pbnb', 'hermann_mauguin_u': 'Pbnb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y-1/2,z', 'x-1/2,-y,z-1/2'], 'number': 56, 'point_group': 'mmm', 'schoenflies': 'D2h^10', 'short_h_m': 'Pbnb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y-1/2,z', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pbnb'}, {'hall': '-P 2c 2b', 'hermann_mauguin': 'Pbcm', 'hermann_mauguin_u': 'Pbcm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y+1/2,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y-1/2,z', 'x,-y-1/2,z-1/2'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pbcm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y+1/2,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y-1/2,z', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pbcm'}, {'hall': '-P 2c 2ac', 'hermann_mauguin': 'Pcam', 'hermann_mauguin_u': 'Pcam', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y,z-1/2', 'x-1/2,-y,z'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pcam', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y,z-1/2', 'x-1/2,-y,z'], 'universal_h_m': 'Pcam'}, {'hall': '-P 2ac 2a', 'hermann_mauguin': 'Pmca', 'hermann_mauguin_u': 'Pmca', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z', 'x,-y,z-1/2'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pmca', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z', 'x,-y,z-1/2'], 'universal_h_m': 'Pmca'}, {'hall': '-P 2b 2a', 'hermann_mauguin': 'Pmab', 'hermann_mauguin_u': 'Pmab', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y,z', 'x-1/2,-y-1/2,z'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pmab', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y,z', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pmab'}, {'hall': '-P 2a 2ab', 'hermann_mauguin': 'Pbma', 'hermann_mauguin_u': 'Pbma', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y-1/2,z', 'x,-y-1/2,z'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pbma', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y-1/2,z', 'x,-y-1/2,z'], 'universal_h_m': 'Pbma'}, {'hall': '-P 2bc 2c', 'hermann_mauguin': 'Pcmb', 'hermann_mauguin_u': 'Pcmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y,z-1/2', 'x,-y-1/2,z'], 'number': 57, 'point_group': 'mmm', 'schoenflies': 'D2h^11', 'short_h_m': 'Pcmb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x,y,z-1/2', 'x,-y-1/2,z'], 'universal_h_m': 'Pcmb'}, {'hall': '-P 2 2n', 'hermann_mauguin': 'Pnnm', 'hermann_mauguin_u': 'Pnnm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'number': 58, 'point_group': 'mmm', 'schoenflies': 'D2h^12', 'short_h_m': 'Pnnm', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pnnm'}, {'hall': '-P 2n 2', 'hermann_mauguin': 'Pmnn', 'hermann_mauguin_u': 'Pmnn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y,z', 'x-1/2,-y-1/2,z-1/2'], 'number': 58, 'point_group': 'mmm', 'schoenflies': 'D2h^12', 'short_h_m': 'Pmnn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y,z', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pmnn'}, {'hall': '-P 2n 2n', 'hermann_mauguin': 'Pnmn', 'hermann_mauguin_u': 'Pnmn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x,-y,z'], 'number': 58, 'point_group': 'mmm', 'schoenflies': 'D2h^12', 'short_h_m': 'Pnmn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x,-y,z'], 'universal_h_m': 'Pnmn'}, {'hall': ' P 2 2ab -1ab', 'hermann_mauguin': 'Pmmn', 'hermann_mauguin_u': 'Pmmn', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y,z', 'x,-y,z'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pmmn', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y,z', 'x,-y,z'], 'universal_h_m': 'Pmmn:1'}, {'hall': '-P 2ab 2a', 'hermann_mauguin': 'Pmmn', 'hermann_mauguin_u': 'Pmmn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y,z', 'x,-y-1/2,z'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pmmn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y,z', 'x,-y-1/2,z'], 'universal_h_m': 'Pmmn:2'}, {'hall': ' P 2bc 2 -1bc', 'hermann_mauguin': 'Pnmm', 'hermann_mauguin_u': 'Pnmm', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pnmm', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y+1/2,z+1/2', 'x,-y,z'], 'universal_h_m': 'Pnmm:1'}, {'hall': '-P 2c 2bc', 'hermann_mauguin': 'Pnmm', 'hermann_mauguin_u': 'Pnmm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y-1/2,z-1/2', 'x,-y-1/2,z'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pnmm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y-1/2,z-1/2', 'x,-y-1/2,z'], 'universal_h_m': 'Pnmm:2'}, {'hall': ' P 2ac 2ac -1ac', 'hermann_mauguin': 'Pmnm', 'hermann_mauguin_u': 'Pmnm', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pmnm', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', '-x,y,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Pmnm:1'}, {'hall': '-P 2c 2a', 'hermann_mauguin': 'Pmnm', 'hermann_mauguin_u': 'Pmnm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y,z', 'x-1/2,-y,z-1/2'], 'number': 59, 'point_group': 'mmm', 'schoenflies': 'D2h^13', 'short_h_m': 'Pmnm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y,z', 'x-1/2,-y,z-1/2'], 'universal_h_m': 'Pmnm:2'}, {'hall': '-P 2n 2ab', 'hermann_mauguin': 'Pbcn', 'hermann_mauguin_u': 'Pbcn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y,z-1/2'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pbcn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y,z-1/2'], 'universal_h_m': 'Pbcn'}, {'hall': '-P 2n 2c', 'hermann_mauguin': 'Pcan', 'hermann_mauguin_u': 'Pcan', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y,z-1/2', 'x-1/2,-y-1/2,z'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pcan', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x,y,z-1/2', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pcan'}, {'hall': '-P 2a 2n', 'hermann_mauguin': 'Pnca', 'hermann_mauguin_u': 'Pnca', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y-1/2,z-1/2', 'x,-y-1/2,z-1/2'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pnca', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y-1/2,z-1/2', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pnca'}, {'hall': '-P 2bc 2n', 'hermann_mauguin': 'Pnab', 'hermann_mauguin_u': 'Pnab', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y,z'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pnab', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y,z'], 'universal_h_m': 'Pnab'}, {'hall': '-P 2ac 2b', 'hermann_mauguin': 'Pbna', 'hermann_mauguin_u': 'Pbna', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y-1/2,z', 'x-1/2,-y-1/2,z-1/2'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pbna', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y-1/2,z', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pbna'}, {'hall': '-P 2b 2ac', 'hermann_mauguin': 'Pcnb', 'hermann_mauguin_u': 'Pcnb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'number': 60, 'point_group': 'mmm', 'schoenflies': 'D2h^14', 'short_h_m': 'Pcnb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y,z-1/2', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pcnb'}, {'hall': '-P 2ac 2ab', 'hermann_mauguin': 'Pbca', 'hermann_mauguin_u': 'Pbca', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y-1/2,z-1/2'], 'number': 61, 'point_group': 'mmm', 'schoenflies': 'D2h^15', 'short_h_m': 'Pbca', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pbca'}, {'hall': '-P 2bc 2ac', 'hermann_mauguin': 'Pcab', 'hermann_mauguin_u': 'Pcab', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y,z-1/2', 'x-1/2,-y-1/2,z'], 'number': 61, 'point_group': 'mmm', 'schoenflies': 'D2h^15', 'short_h_m': 'Pcab', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y,z-1/2', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pcab'}, {'hall': '-P 2ac 2n', 'hermann_mauguin': 'Pnma', 'hermann_mauguin_u': 'Pnma', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x,-y-1/2,z'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pnma', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x,-y-1/2,z'], 'universal_h_m': 'Pnma'}, {'hall': '-P 2bc 2a', 'hermann_mauguin': 'Pmnb', 'hermann_mauguin_u': 'Pmnb', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y,z', 'x-1/2,-y-1/2,z-1/2'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pmnb', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z-1/2', '-x-1/2,y,z', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pmnb'}, {'hall': '-P 2c 2ab', 'hermann_mauguin': 'Pbnm', 'hermann_mauguin_u': 'Pbnm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z-1/2'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pbnm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z-1/2'], 'universal_h_m': 'Pbnm'}, {'hall': '-P 2n 2ac', 'hermann_mauguin': 'Pcmn', 'hermann_mauguin_u': 'Pcmn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y-1/2,z'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pcmn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y-1/2,z'], 'universal_h_m': 'Pcmn'}, {'hall': '-P 2n 2a', 'hermann_mauguin': 'Pmcn', 'hermann_mauguin_u': 'Pmcn', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y,z', 'x,-y-1/2,z-1/2'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pmcn', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x-1/2,y-1/2,-z-1/2', '-x-1/2,y,z', 'x,-y-1/2,z-1/2'], 'universal_h_m': 'Pmcn'}, {'hall': '-P 2c 2n', 'hermann_mauguin': 'Pnam', 'hermann_mauguin_u': 'Pnam', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y-1/2,z'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pnam', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x-1/2,y-1/2,z-1/2', 'x-1/2,-y-1/2,z'], 'universal_h_m': 'Pnam'}, {'hall': '-C 2c 2', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z-1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z-1/2'], 'universal_h_m': 'Cmcm'}, {'hall': '-C 2c 2c', 'hermann_mauguin': 'Ccmm', 'hermann_mauguin_u': 'Ccmm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Ccmm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z-1/2', '-x+1/2,y+1/2,z-1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Ccmm'}, {'hall': '-A 2a 2a', 'hermann_mauguin': 'Amma', 'hermann_mauguin_u': 'Amma', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Amma', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y+1/2,-z+1/2', '-x-1/2,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Amma'}, {'hall': '-A 2 2a', 'hermann_mauguin': 'Amam', 'hermann_mauguin_u': 'Amam', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Amam', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x-1/2,y+1/2,z+1/2', 'x-1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Amam'}, {'hall': '-B 2 2b', 'hermann_mauguin': 'Bbmm', 'hermann_mauguin_u': 'Bbmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Bbmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y-1/2,z+1/2', 'x+1/2,-y-1/2,z+1/2'], 'universal_h_m': 'Bbmm'}, {'hall': '-B 2b 2', 'hermann_mauguin': 'Bmmb', 'hermann_mauguin_u': 'Bmmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Bmmb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y-1/2,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y-1/2,z+1/2'], 'universal_h_m': 'Bmmb'}, {'hall': '-C 2ac 2', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z', 'x-1/2,-y,z-1/2'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x,y,z', 'x-1/2,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z-1/2', '-x+1/2,y+1/2,z', 'x,-y+1/2,z-1/2'], 'universal_h_m': 'Cmce'}, {'hall': '-C 2ac 2ac', 'hermann_mauguin': 'Ccme', 'hermann_mauguin_u': 'Ccme', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Ccme', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y,z-1/2', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z-1/2', '-x,y+1/2,z-1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Ccme'}, {'hall': '-A 2ab 2ab', 'hermann_mauguin': 'Aema', 'hermann_mauguin_u': 'Aema', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z', 'x,-y,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Aema', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x-1/2,y-1/2,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y,-z+1/2', '-x-1/2,y,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Aema'}, {'hall': '-A 2 2ab', 'hermann_mauguin': 'Aeam', 'hermann_mauguin_u': 'Aeam', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Aeam', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x+1/2,y+1,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x-1/2,y,z+1/2', 'x-1/2,-y,z+1/2'], 'universal_h_m': 'Aeam'}, {'hall': '-B 2 2ab', 'hermann_mauguin': 'Bbem', 'hermann_mauguin_u': 'Bbem', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Bbem', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x,y-1/2,z+1/2', 'x,-y-1/2,z+1/2'], 'universal_h_m': 'Bbem'}, {'hall': '-B 2ab 2', 'hermann_mauguin': 'Bmeb', 'hermann_mauguin_u': 'Bmeb', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z', 'x-1/2,-y-1/2,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Bmeb', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y,z', 'x-1/2,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,y-1/2,-z+1/2', '-x+1/2,y,z+1/2', 'x,-y-1/2,z+1/2'], 'universal_h_m': 'Bmeb'}, {'hall': '-C 2 2', 'hermann_mauguin': 'Cmmm', 'hermann_mauguin_u': 'Cmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Cmmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Cmmm'}, {'hall': '-A 2 2', 'hermann_mauguin': 'Ammm', 'hermann_mauguin_u': 'Ammm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Ammm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Ammm'}, {'hall': '-B 2 2', 'hermann_mauguin': 'Bmmm', 'hermann_mauguin_u': 'Bmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Bmmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Bmmm'}, {'hall': '-C 2 2c', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z-1/2', 'x+1/2,-y+1/2,z-1/2'], 'universal_h_m': 'Cccm'}, {'hall': '-A 2a 2', 'hermann_mauguin': 'Amaa', 'hermann_mauguin_u': 'Amaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Amaa', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x-1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Amaa'}, {'hall': '-B 2b 2b', 'hermann_mauguin': 'Bbmb', 'hermann_mauguin_u': 'Bbmb', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Bbmb', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y-1/2,-z+1/2', '-x+1/2,y-1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Bbmb'}, {'hall': '-C 2a 2', 'hermann_mauguin': 'Cmma', 'hermann_mauguin_u': 'Cmma', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Cmma', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z', 'x,-y+1/2,z'], 'universal_h_m': 'Cmma'}, {'hall': '-C 2a 2a', 'hermann_mauguin': 'Cmmb', 'hermann_mauguin_u': 'Cmmb', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Cmmb', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z', 'x+1,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Cmmb'}, {'hall': '-A 2b 2b', 'hermann_mauguin': 'Abmm', 'hermann_mauguin_u': 'Abmm', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Abmm', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1,z+1/2', 'x,-y+1,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x,y,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Abmm'}, {'hall': '-A 2 2b', 'hermann_mauguin': 'Acmm', 'hermann_mauguin_u': 'Acmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Acmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1,-z+1/2', '-x,y+1,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Acmm'}, {'hall': '-B 2 2a', 'hermann_mauguin': 'Bmcm', 'hermann_mauguin_u': 'Bmcm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Bmcm', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1,-y,-z+1/2', '-x+1,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x,y,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Bmcm'}, {'hall': '-B 2a 2', 'hermann_mauguin': 'Bmam', 'hermann_mauguin_u': 'Bmam', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'number': 67, 'point_group': 'mmm', 'schoenflies': 'D2h^21', 'short_h_m': 'Bmam', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z', 'x+1/2,y,z+1/2', '-x+1,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Bmam'}, {'hall': ' C 2 2 -1ac', 'hermann_mauguin': 'Ccce', 'hermann_mauguin_u': 'Ccce', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Ccce', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1,-y+1/2,-z+1/2', 'x+1,y+1/2,-z+1/2', '-x+1,y+1/2,z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'Ccce:1'}, {'hall': '-C 2a 2ac', 'hermann_mauguin': 'Ccca', 'hermann_mauguin_u': 'Ccca', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z-1/2', 'x,-y,z-1/2'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Ccca', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z-1/2', 'x,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z', 'x+1,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z', '-x,y+1/2,z-1/2', 'x+1/2,-y+1/2,z-1/2'], 'universal_h_m': 'Ccca:2'}, {'hall': '-C 2a 2c', 'hermann_mauguin': 'Cccb', 'hermann_mauguin_u': 'Cccb', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z-1/2', 'x-1/2,-y,z-1/2'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Cccb', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z-1/2', 'x-1/2,-y,z-1/2', 'x+1/2,y+1/2,z', '-x+1,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z-1/2', 'x,-y+1/2,z-1/2'], 'universal_h_m': 'Cccb:2'}, {'hall': ' A 2 2 -1ab', 'hermann_mauguin': 'Aeaa', 'hermann_mauguin_u': 'Aeaa', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Aeaa', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x+1/2,-y+1,-z+1/2', 'x+1/2,y+1,-z+1/2', '-x+1/2,y+1,z+1/2', 'x+1/2,-y+1,z+1/2'], 'universal_h_m': 'Aeaa:1'}, {'hall': '-A 2a 2b', 'hermann_mauguin': 'Abaa', 'hermann_mauguin_u': 'Abaa', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Abaa', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1,-z+1/2', '-x+1/2,y+1,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y+1/2,-z+1/2', '-x,y,z+1/2', 'x-1/2,-y,z+1/2'], 'universal_h_m': 'Abaa:2'}, {'hall': '-A 2ab 2b', 'hermann_mauguin': 'Acaa', 'hermann_mauguin_u': 'Acaa', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Acaa', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x,-y+1,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x-1/2,y,-z+1/2', '-x,y,z+1/2', 'x-1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Acaa:2'}, {'hall': ' B 2 2 -1ab', 'hermann_mauguin': 'Bbeb', 'hermann_mauguin_u': 'Bbeb', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Bbeb', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1,-y+1/2,-z+1/2', 'x+1,y+1/2,-z+1/2', '-x+1,y+1/2,z+1/2', 'x+1,-y+1/2,z+1/2'], 'universal_h_m': 'Bbeb:1'}, {'hall': '-B 2ab 2b', 'hermann_mauguin': 'Bbcb', 'hermann_mauguin_u': 'Bbcb', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Bbcb', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z', 'x-1/2,-y,z', 'x+1/2,y,z+1/2', '-x+1,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,y-1/2,-z+1/2', '-x+1/2,y-1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Bbcb:2'}, {'hall': '-B 2b 2ab', 'hermann_mauguin': 'Bbab', 'hermann_mauguin_u': 'Bbab', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y,z'], 'number': 68, 'point_group': 'mmm', 'schoenflies': 'D2h^22', 'short_h_m': 'Bbab', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x-1/2,y-1/2,z', 'x-1/2,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y-1/2,-z+1/2', '-x,y-1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Bbab:2'}, {'hall': '-F 2 2', 'hermann_mauguin': 'Fmmm', 'hermann_mauguin_u': 'Fmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 69, 'point_group': 'mmm', 'schoenflies': 'D2h^23', 'short_h_m': 'Fmmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Fmmm'}, {'hall': ' F 2 2 -1d', 'hermann_mauguin': 'Fddd', 'hermann_mauguin_u': 'Fddd', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/4,-y+1/4,-z+1/4', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', 'x+1/4,-y+1/4,z+1/4'], 'number': 70, 'point_group': 'mmm', 'schoenflies': 'D2h^24', 'short_h_m': 'Fddd', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/4,-y+1/4,-z+1/4', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', 'x+1/4,-y+1/4,z+1/4', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x+1/4,-y+3/4,-z+3/4', 'x+1/4,y+3/4,-z+3/4', '-x+1/4,y+3/4,z+3/4', 'x+1/4,-y+3/4,z+3/4', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+3/4,-y+1/4,-z+3/4', 'x+3/4,y+1/4,-z+3/4', '-x+3/4,y+1/4,z+3/4', 'x+3/4,-y+1/4,z+3/4', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+3/4,-y+3/4,-z+1/4', 'x+3/4,y+3/4,-z+1/4', '-x+3/4,y+3/4,z+1/4', 'x+3/4,-y+3/4,z+1/4'], 'universal_h_m': 'Fddd:1'}, {'hall': '-F 2uv 2vw', 'hermann_mauguin': 'Fddd', 'hermann_mauguin_u': 'Fddd', 'ncsym': ['x,y,z', '-x+1/4,-y+1/4,z', 'x,-y+1/4,-z+1/4', '-x+1/4,y,-z+1/4', '-x,-y,-z', 'x-1/4,y-1/4,-z', '-x,y-1/4,z-1/4', 'x-1/4,-y,z-1/4'], 'number': 70, 'point_group': 'mmm', 'schoenflies': 'D2h^24', 'short_h_m': 'Fddd', 'symops': ['x,y,z', '-x+1/4,-y+1/4,z', 'x,-y+1/4,-z+1/4', '-x+1/4,y,-z+1/4', '-x,-y,-z', 'x-1/4,y-1/4,-z', '-x,y-1/4,z-1/4', 'x-1/4,-y,z-1/4', 'x,y+1/2,z+1/2', '-x+1/4,-y+3/4,z+1/2', 'x,-y+3/4,-z+3/4', '-x+1/4,y+1/2,-z+3/4', '-x,-y+1/2,-z+1/2', 'x-1/4,y+1/4,-z+1/2', '-x,y+1/4,z+1/4', 'x-1/4,-y+1/2,z+1/4', 'x+1/2,y,z+1/2', '-x+3/4,-y+1/4,z+1/2', 'x+1/2,-y+1/4,-z+3/4', '-x+3/4,y,-z+3/4', '-x+1/2,-y,-z+1/2', 'x+1/4,y-1/4,-z+1/2', '-x+1/2,y-1/4,z+1/4', 'x+1/4,-y,z+1/4', 'x+1/2,y+1/2,z', '-x+3/4,-y+3/4,z', 'x+1/2,-y+3/4,-z+1/4', '-x+3/4,y+1/2,-z+1/4', '-x+1/2,-y+1/2,-z', 'x+1/4,y+1/4,-z', '-x+1/2,y+1/4,z-1/4', 'x+1/4,-y+1/2,z-1/4'], 'universal_h_m': 'Fddd:2'}, {'hall': '-I 2 2', 'hermann_mauguin': 'Immm', 'hermann_mauguin_u': 'Immm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z'], 'number': 71, 'point_group': 'mmm', 'schoenflies': 'D2h^25', 'short_h_m': 'Immm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Immm'}, {'hall': '-I 2 2c', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z-1/2', 'x,-y,z-1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1/2,-z+1', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Ibam'}, {'hall': '-I 2a 2', 'hermann_mauguin': 'Imcb', 'hermann_mauguin_u': 'Imcb', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Imcb', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y,z', 'x-1/2,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Imcb'}, {'hall': '-I 2b 2b', 'hermann_mauguin': 'Icma', 'hermann_mauguin_u': 'Icma', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Icma', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y-1/2,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Icma'}, {'hall': '-I 2b 2c', 'hermann_mauguin': 'Ibca', 'hermann_mauguin_u': 'Ibca', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2'], 'number': 73, 'point_group': 'mmm', 'schoenflies': 'D2h^27', 'short_h_m': 'Ibca', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1,-z+1', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Ibca'}, {'hall': '-I 2a 2b', 'hermann_mauguin': 'Icab', 'hermann_mauguin_u': 'Icab', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z'], 'number': 73, 'point_group': 'mmm', 'schoenflies': 'D2h^27', 'short_h_m': 'Icab', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x,y-1/2,z', 'x-1/2,-y-1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1,-y+1/2,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x+1,y+1,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Icab'}, {'hall': '-I 2b 2', 'hermann_mauguin': 'Imma', 'hermann_mauguin_u': 'Imma', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Imma', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z', 'x,-y-1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Imma'}, {'hall': '-I 2a 2a', 'hermann_mauguin': 'Immb', 'hermann_mauguin_u': 'Immb', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Immb', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x-1/2,y,-z', '-x-1/2,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1,-y+1/2,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Immb'}, {'hall': '-I 2c 2c', 'hermann_mauguin': 'Ibmm', 'hermann_mauguin_u': 'Ibmm', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Ibmm', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z+1/2', '-x,y,-z', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z-1/2', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Ibmm'}, {'hall': '-I 2 2b', 'hermann_mauguin': 'Icmm', 'hermann_mauguin_u': 'Icmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Icmm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y,-z', '-x,y-1/2,z', 'x,-y-1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1,-z+1/2', '-x+1/2,y+1,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Icmm'}, {'hall': '-I 2 2a', 'hermann_mauguin': 'Imcm', 'hermann_mauguin_u': 'Imcm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Imcm', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y,-z', '-x-1/2,y,z', 'x-1/2,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1,-y+1/2,-z+1/2', '-x+1,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Imcm'}, {'hall': '-I 2c 2', 'hermann_mauguin': 'Imam', 'hermann_mauguin_u': 'Imam', 'ncsym': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2'], 'number': 74, 'point_group': 'mmm', 'schoenflies': 'D2h^28', 'short_h_m': 'Imam', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x,-y,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z-1/2', '-x,y,z', 'x,-y,z-1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Imam'}, {'hall': ' P 4', 'hermann_mauguin': 'P4', 'hermann_mauguin_u': 'P4', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z'], 'number': 75, 'point_group': '4', 'schoenflies': 'C4^1', 'short_h_m': 'P4', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z'], 'universal_h_m': 'P4'}, {'hall': ' P 4w', 'hermann_mauguin': 'P41', 'hermann_mauguin_u': 'P4_1', 'ncsym': ['x,y,z', '-y,x,z+1/4', '-x,-y,z+1/2', 'y,-x,z+3/4'], 'number': 76, 'point_group': '4', 'schoenflies': 'C4^2', 'short_h_m': 'P4_1', 'symops': ['x,y,z', '-y,x,z+1/4', '-x,-y,z+1/2', 'y,-x,z+3/4'], 'universal_h_m': 'P41'}, {'hall': ' P 4c', 'hermann_mauguin': 'P42', 'hermann_mauguin_u': 'P4_2', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2'], 'number': 77, 'point_group': '4', 'schoenflies': 'C4^3', 'short_h_m': 'P4_2', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2'], 'universal_h_m': 'P42'}, {'hall': ' P 4cw', 'hermann_mauguin': 'P43', 'hermann_mauguin_u': 'P4_3', 'ncsym': ['x,y,z', '-y,x,z+3/4', '-x,-y,z+1/2', 'y,-x,z+1/4'], 'number': 78, 'point_group': '4', 'schoenflies': 'C4^4', 'short_h_m': 'P4_3', 'symops': ['x,y,z', '-y,x,z+3/4', '-x,-y,z+1/2', 'y,-x,z+1/4'], 'universal_h_m': 'P43'}, {'hall': ' I 4', 'hermann_mauguin': 'I4', 'hermann_mauguin_u': 'I4', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z'], 'number': 79, 'point_group': '4', 'schoenflies': 'C4^5', 'short_h_m': 'I4', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2'], 'universal_h_m': 'I4'}, {'hall': ' I 4bw', 'hermann_mauguin': 'I41', 'hermann_mauguin_u': 'I4_1', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4'], 'number': 80, 'point_group': '4', 'schoenflies': 'C4^6', 'short_h_m': 'I4_1', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4'], 'universal_h_m': 'I41'}, {'hall': ' P -4', 'hermann_mauguin': 'P-4', 'hermann_mauguin_u': 'P-4', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z'], 'number': 81, 'point_group': '-4', 'schoenflies': 'S4^1', 'short_h_m': 'P-4', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z'], 'universal_h_m': 'P-4'}, {'hall': ' I -4', 'hermann_mauguin': 'I-4', 'hermann_mauguin_u': 'I-4', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z'], 'number': 82, 'point_group': '-4', 'schoenflies': 'S4^2', 'short_h_m': 'I-4', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2'], 'universal_h_m': 'I-4'}, {'hall': '-P 4', 'hermann_mauguin': 'P4/m', 'hermann_mauguin_u': 'P4/m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z'], 'number': 83, 'point_group': '4/m', 'schoenflies': 'C4h^1', 'short_h_m': 'P4/m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z'], 'universal_h_m': 'P4/m'}, {'hall': '-P 4c', 'hermann_mauguin': 'P42/m', 'hermann_mauguin_u': 'P4_2/m', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2'], 'number': 84, 'point_group': '4/m', 'schoenflies': 'C4h^2', 'short_h_m': 'P4_2/m', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2'], 'universal_h_m': 'P42/m'}, {'hall': ' P 4ab -1ab', 'hermann_mauguin': 'P4/n', 'hermann_mauguin_u': 'P4/n', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z'], 'number': 85, 'point_group': '4/m', 'schoenflies': 'C4h^3', 'short_h_m': 'P4/n', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z'], 'universal_h_m': 'P4/n:1'}, {'hall': '-P 4a', 'hermann_mauguin': 'P4/n', 'hermann_mauguin_u': 'P4/n', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z'], 'number': 85, 'point_group': '4/m', 'schoenflies': 'C4h^3', 'short_h_m': 'P4/n', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z'], 'universal_h_m': 'P4/n:2'}, {'hall': ' P 4n -1n', 'hermann_mauguin': 'P42/n', 'hermann_mauguin_u': 'P4_2/n', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z'], 'number': 86, 'point_group': '4/m', 'schoenflies': 'C4h^4', 'short_h_m': 'P4_2/n', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z'], 'universal_h_m': 'P42/n:1'}, {'hall': '-P 4bc', 'hermann_mauguin': 'P42/n', 'hermann_mauguin_u': 'P4_2/n', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z+1/2', '-x,-y,-z', 'y,-x-1/2,-z-1/2', 'x-1/2,y-1/2,-z', '-y-1/2,x,-z-1/2'], 'number': 86, 'point_group': '4/m', 'schoenflies': 'C4h^4', 'short_h_m': 'P4_2/n', 'symops': ['x,y,z', '-y,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z+1/2', '-x,-y,-z', 'y,-x-1/2,-z-1/2', 'x-1/2,y-1/2,-z', '-y-1/2,x,-z-1/2'], 'universal_h_m': 'P42/n:2'}, {'hall': '-I 4', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2'], 'universal_h_m': 'I4/m'}, {'hall': ' I 4bw -1bw', 'hermann_mauguin': 'I41/a', 'hermann_mauguin_u': 'I4_1/a', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2'], 'number': 88, 'point_group': '4/m', 'schoenflies': 'C4h^6', 'short_h_m': 'I4_1/a', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', '-x+1/2,-y+1,-z+3/4', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/4', '-y,x+1,-z'], 'universal_h_m': 'I41/a:1'}, {'hall': '-I 4ad', 'hermann_mauguin': 'I41/a', 'hermann_mauguin_u': 'I4_1/a', 'ncsym': ['x,y,z', '-y+3/4,x+1/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+3/4,-x+3/4,z+3/4', '-x,-y,-z', 'y-3/4,-x-1/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-3/4,x-3/4,-z-3/4'], 'number': 88, 'point_group': '4/m', 'schoenflies': 'C4h^6', 'short_h_m': 'I4_1/a', 'symops': ['x,y,z', '-y+3/4,x+1/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+3/4,-x+3/4,z+3/4', '-x,-y,-z', 'y-3/4,-x-1/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-3/4,x-3/4,-z-3/4', 'x+1/2,y+1/2,z+1/2', '-y+5/4,x+3/4,z+3/4', '-x+1,-y+1/2,z+1', 'y+5/4,-x+5/4,z+5/4', '-x+1/2,-y+1/2,-z+1/2', 'y-1/4,-x+1/4,-z+1/4', 'x,y+1/2,-z', '-y-1/4,x-1/4,-z-1/4'], 'universal_h_m': 'I41/a:2'}, {'hall': ' P 4 2', 'hermann_mauguin': 'P422', 'hermann_mauguin_u': 'P422', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z'], 'number': 89, 'point_group': '422', 'schoenflies': 'D4^1', 'short_h_m': 'P422', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z'], 'universal_h_m': 'P422'}, {'hall': ' P 4ab 2ab', 'hermann_mauguin': 'P4212', 'hermann_mauguin_u': 'P42_12', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z'], 'number': 90, 'point_group': '422', 'schoenflies': 'D4^2', 'short_h_m': 'P42_12', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z'], 'universal_h_m': 'P4212'}, {'hall': ' P 4w 2c', 'hermann_mauguin': 'P4122', 'hermann_mauguin_u': 'P4_122', 'ncsym': ['x,y,z', '-y,x,z+1/4', '-x,-y,z+1/2', 'y,-x,z+3/4', 'x,-y,-z+1/2', 'y,x,-z+3/4', '-x,y,-z', '-y,-x,-z+1/4'], 'number': 91, 'point_group': '422', 'schoenflies': 'D4^3', 'short_h_m': 'P4_122', 'symops': ['x,y,z', '-y,x,z+1/4', '-x,-y,z+1/2', 'y,-x,z+3/4', 'x,-y,-z+1/2', 'y,x,-z+3/4', '-x,y,-z', '-y,-x,-z+1/4'], 'universal_h_m': 'P4122'}, {'hall': ' P 4abw 2nw', 'hermann_mauguin': 'P41212', 'hermann_mauguin_u': 'P4_12_12', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/4', '-x,-y,z+1/2', 'y+1/2,-x+1/2,z+3/4', 'x+1/2,-y+1/2,-z+3/4', 'y,x,-z', '-x+1/2,y+1/2,-z+1/4', '-y,-x,-z+1/2'], 'number': 92, 'point_group': '422', 'schoenflies': 'D4^4', 'short_h_m': 'P4_12_12', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/4', '-x,-y,z+1/2', 'y+1/2,-x+1/2,z+3/4', 'x+1/2,-y+1/2,-z+3/4', 'y,x,-z', '-x+1/2,y+1/2,-z+1/4', '-y,-x,-z+1/2'], 'universal_h_m': 'P41212'}, {'hall': ' P 4c 2', 'hermann_mauguin': 'P4222', 'hermann_mauguin_u': 'P4_222', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2'], 'number': 93, 'point_group': '422', 'schoenflies': 'D4^5', 'short_h_m': 'P4_222', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2'], 'universal_h_m': 'P4222'}, {'hall': ' P 4n 2n', 'hermann_mauguin': 'P42212', 'hermann_mauguin_u': 'P4_22_12', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z'], 'number': 94, 'point_group': '422', 'schoenflies': 'D4^6', 'short_h_m': 'P4_22_12', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z'], 'universal_h_m': 'P42212'}, {'hall': ' P 4cw 2c', 'hermann_mauguin': 'P4322', 'hermann_mauguin_u': 'P4_322', 'ncsym': ['x,y,z', '-y,x,z+3/4', '-x,-y,z+1/2', 'y,-x,z+1/4', 'x,-y,-z+1/2', 'y,x,-z+1/4', '-x,y,-z', '-y,-x,-z+3/4'], 'number': 95, 'point_group': '422', 'schoenflies': 'D4^7', 'short_h_m': 'P4_322', 'symops': ['x,y,z', '-y,x,z+3/4', '-x,-y,z+1/2', 'y,-x,z+1/4', 'x,-y,-z+1/2', 'y,x,-z+1/4', '-x,y,-z', '-y,-x,-z+3/4'], 'universal_h_m': 'P4322'}, {'hall': ' P 4nw 2abw', 'hermann_mauguin': 'P43212', 'hermann_mauguin_u': 'P4_32_12', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+3/4', '-x,-y,z+1/2', 'y+1/2,-x+1/2,z+1/4', 'x+1/2,-y+1/2,-z+1/4', 'y,x,-z', '-x+1/2,y+1/2,-z+3/4', '-y,-x,-z+1/2'], 'number': 96, 'point_group': '422', 'schoenflies': 'D4^8', 'short_h_m': 'P4_32_12', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+3/4', '-x,-y,z+1/2', 'y+1/2,-x+1/2,z+1/4', 'x+1/2,-y+1/2,-z+1/4', 'y,x,-z', '-x+1/2,y+1/2,-z+3/4', '-y,-x,-z+1/2'], 'universal_h_m': 'P43212'}, {'hall': ' I 4 2', 'hermann_mauguin': 'I422', 'hermann_mauguin_u': 'I422', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z'], 'number': 97, 'point_group': '422', 'schoenflies': 'D4^9', 'short_h_m': 'I422', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2'], 'universal_h_m': 'I422'}, {'hall': ' I 4bw 2bw', 'hermann_mauguin': 'I4122', 'hermann_mauguin_u': 'I4_122', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x,-y+1/2,-z+1/4', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+3/4', '-y,-x,-z'], 'number': 98, 'point_group': '422', 'schoenflies': 'D4^10', 'short_h_m': 'I4_122', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x,-y+1/2,-z+1/4', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+3/4', '-y,-x,-z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', 'x+1/2,-y+1,-z+3/4', 'y+1,x+1,-z+1', '-x+1,y+1/2,-z+5/4', '-y+1/2,-x+1/2,-z+1/2'], 'universal_h_m': 'I4122'}, {'hall': ' P 4 -2', 'hermann_mauguin': 'P4mm', 'hermann_mauguin_u': 'P4mm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 99, 'point_group': '4mm', 'schoenflies': 'C4v^1', 'short_h_m': 'P4mm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'universal_h_m': 'P4mm'}, {'hall': ' P 4 -2ab', 'hermann_mauguin': 'P4bm', 'hermann_mauguin_u': 'P4bm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'number': 100, 'point_group': '4mm', 'schoenflies': 'C4v^2', 'short_h_m': 'P4bm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'P4bm'}, {'hall': ' P 4c -2c', 'hermann_mauguin': 'P42cm', 'hermann_mauguin_u': 'P4_2cm', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'y,x,z'], 'number': 101, 'point_group': '4mm', 'schoenflies': 'C4v^3', 'short_h_m': 'P4_2cm', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'y,x,z'], 'universal_h_m': 'P42cm'}, {'hall': ' P 4n -2n', 'hermann_mauguin': 'P42nm', 'hermann_mauguin_u': 'P4_2nm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'number': 102, 'point_group': '4mm', 'schoenflies': 'C4v^4', 'short_h_m': 'P4_2nm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'universal_h_m': 'P42nm'}, {'hall': ' P 4 -2c', 'hermann_mauguin': 'P4cc', 'hermann_mauguin_u': 'P4cc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2'], 'number': 103, 'point_group': '4mm', 'schoenflies': 'C4v^5', 'short_h_m': 'P4cc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2'], 'universal_h_m': 'P4cc'}, {'hall': ' P 4 -2n', 'hermann_mauguin': 'P4nc', 'hermann_mauguin_u': 'P4nc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 104, 'point_group': '4mm', 'schoenflies': 'C4v^6', 'short_h_m': 'P4nc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P4nc'}, {'hall': ' P 4c -2', 'hermann_mauguin': 'P42mc', 'hermann_mauguin_u': 'P4_2mc', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'y,x,z+1/2'], 'number': 105, 'point_group': '4mm', 'schoenflies': 'C4v^7', 'short_h_m': 'P4_2mc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'y,x,z+1/2'], 'universal_h_m': 'P42mc'}, {'hall': ' P 4c -2ab', 'hermann_mauguin': 'P42bc', 'hermann_mauguin_u': 'P4_2bc', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z+1/2'], 'number': 106, 'point_group': '4mm', 'schoenflies': 'C4v^8', 'short_h_m': 'P4_2bc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P42bc'}, {'hall': ' I 4 -2', 'hermann_mauguin': 'I4mm', 'hermann_mauguin_u': 'I4mm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 107, 'point_group': '4mm', 'schoenflies': 'C4v^9', 'short_h_m': 'I4mm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'I4mm'}, {'hall': ' I 4 -2c', 'hermann_mauguin': 'I4cm', 'hermann_mauguin_u': 'I4cm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2'], 'number': 108, 'point_group': '4mm', 'schoenflies': 'C4v^10', 'short_h_m': 'I4cm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,z+1', '-y+1/2,-x+1/2,z+1', 'x+1/2,-y+1/2,z+1', 'y+1/2,x+1/2,z+1'], 'universal_h_m': 'I4cm'}, {'hall': ' I 4bw -2', 'hermann_mauguin': 'I41md', 'hermann_mauguin_u': 'I4_1md', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,y,z', '-y,-x+1/2,z+1/4', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x,z+3/4'], 'number': 109, 'point_group': '4mm', 'schoenflies': 'C4v^11', 'short_h_m': 'I4_1md', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,y,z', '-y,-x+1/2,z+1/4', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x,z+3/4', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1,z+3/4', 'x+1,-y+1,z+1', 'y+1,x+1/2,z+5/4'], 'universal_h_m': 'I41md'}, {'hall': ' I 4bw -2c', 'hermann_mauguin': 'I41cd', 'hermann_mauguin_u': 'I4_1cd', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,y,z+1/2', '-y,-x+1/2,z+3/4', 'x+1/2,-y+1/2,z', 'y+1/2,x,z+1/4'], 'number': 110, 'point_group': '4mm', 'schoenflies': 'C4v^12', 'short_h_m': 'I4_1cd', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', '-x,y,z+1/2', '-y,-x+1/2,z+3/4', 'x+1/2,-y+1/2,z', 'y+1/2,x,z+1/4', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', '-x+1/2,y+1/2,z+1', '-y+1/2,-x+1,z+5/4', 'x+1,-y+1,z+1/2', 'y+1,x+1/2,z+3/4'], 'universal_h_m': 'I41cd'}, {'hall': ' P -4 2', 'hermann_mauguin': 'P-42m', 'hermann_mauguin_u': 'P-42m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z'], 'number': 111, 'point_group': '-42m', 'schoenflies': 'D2d^1', 'short_h_m': 'P-42m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z'], 'universal_h_m': 'P-42m'}, {'hall': ' P -4 2c', 'hermann_mauguin': 'P-42c', 'hermann_mauguin_u': 'P-42c', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z+1/2', '-y,-x,z+1/2', '-x,y,-z+1/2', 'y,x,z+1/2'], 'number': 112, 'point_group': '-42m', 'schoenflies': 'D2d^2', 'short_h_m': 'P-42c', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z+1/2', '-y,-x,z+1/2', '-x,y,-z+1/2', 'y,x,z+1/2'], 'universal_h_m': 'P-42c'}, {'hall': ' P -4 2ab', 'hermann_mauguin': 'P-421m', 'hermann_mauguin_u': 'P-42_1m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x+1/2,-y+1/2,-z', '-y+1/2,-x+1/2,z', '-x+1/2,y+1/2,-z', 'y+1/2,x+1/2,z'], 'number': 113, 'point_group': '-42m', 'schoenflies': 'D2d^3', 'short_h_m': 'P-42_1m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x+1/2,-y+1/2,-z', '-y+1/2,-x+1/2,z', '-x+1/2,y+1/2,-z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'P-421m'}, {'hall': ' P -4 2n', 'hermann_mauguin': 'P-421c', 'hermann_mauguin_u': 'P-42_1c', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x+1/2,-y+1/2,-z+1/2', '-y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 114, 'point_group': '-42m', 'schoenflies': 'D2d^4', 'short_h_m': 'P-42_1c', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x+1/2,-y+1/2,-z+1/2', '-y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P-421c'}, {'hall': ' P -4 -2', 'hermann_mauguin': 'P-4m2', 'hermann_mauguin_u': 'P-4m2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z', 'y,x,-z', 'x,-y,z', '-y,-x,-z'], 'number': 115, 'point_group': '-42m', 'schoenflies': 'D2d^5', 'short_h_m': 'P-4m2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z', 'y,x,-z', 'x,-y,z', '-y,-x,-z'], 'universal_h_m': 'P-4m2'}, {'hall': ' P -4 -2c', 'hermann_mauguin': 'P-4c2', 'hermann_mauguin_u': 'P-4c2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z+1/2', 'y,x,-z+1/2', 'x,-y,z+1/2', '-y,-x,-z+1/2'], 'number': 116, 'point_group': '-42m', 'schoenflies': 'D2d^6', 'short_h_m': 'P-4c2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z+1/2', 'y,x,-z+1/2', 'x,-y,z+1/2', '-y,-x,-z+1/2'], 'universal_h_m': 'P-4c2'}, {'hall': ' P -4 -2ab', 'hermann_mauguin': 'P-4b2', 'hermann_mauguin_u': 'P-4b2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x+1/2,y+1/2,z', 'y+1/2,x+1/2,-z', 'x+1/2,-y+1/2,z', '-y+1/2,-x+1/2,-z'], 'number': 117, 'point_group': '-42m', 'schoenflies': 'D2d^7', 'short_h_m': 'P-4b2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x+1/2,y+1/2,z', 'y+1/2,x+1/2,-z', 'x+1/2,-y+1/2,z', '-y+1/2,-x+1/2,-z'], 'universal_h_m': 'P-4b2'}, {'hall': ' P -4 -2n', 'hermann_mauguin': 'P-4n2', 'hermann_mauguin_u': 'P-4n2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', 'y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2'], 'number': 118, 'point_group': '-42m', 'schoenflies': 'D2d^8', 'short_h_m': 'P-4n2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', 'y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2'], 'universal_h_m': 'P-4n2'}, {'hall': ' I -4 -2', 'hermann_mauguin': 'I-4m2', 'hermann_mauguin_u': 'I-4m2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z', 'y,x,-z', 'x,-y,z', '-y,-x,-z'], 'number': 119, 'point_group': '-42m', 'schoenflies': 'D2d^9', 'short_h_m': 'I-4m2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z', 'y,x,-z', 'x,-y,z', '-y,-x,-z', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2'], 'universal_h_m': 'I-4m2'}, {'hall': ' I -4 -2c', 'hermann_mauguin': 'I-4c2', 'hermann_mauguin_u': 'I-4c2', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z+1/2', 'y,x,-z+1/2', 'x,-y,z+1/2', '-y,-x,-z+1/2'], 'number': 120, 'point_group': '-42m', 'schoenflies': 'D2d^10', 'short_h_m': 'I-4c2', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', '-x,y,z+1/2', 'y,x,-z+1/2', 'x,-y,z+1/2', '-y,-x,-z+1/2', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1', 'y+1/2,x+1/2,-z+1', 'x+1/2,-y+1/2,z+1', '-y+1/2,-x+1/2,-z+1'], 'universal_h_m': 'I-4c2'}, {'hall': ' I -4 2', 'hermann_mauguin': 'I-42m', 'hermann_mauguin_u': 'I-42m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z'], 'number': 121, 'point_group': '-42m', 'schoenflies': 'D2d^11', 'short_h_m': 'I-42m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'I-42m'}, {'hall': ' I -4 2bw', 'hermann_mauguin': 'I-42d', 'hermann_mauguin_u': 'I-42d', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y+1/2,-z+1/4', '-y+1/2,-x,z+3/4', '-x,y+1/2,-z+1/4', 'y+1/2,x,z+3/4'], 'number': 122, 'point_group': '-42m', 'schoenflies': 'D2d^12', 'short_h_m': 'I-42d', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y+1/2,-z+1/4', '-y+1/2,-x,z+3/4', '-x,y+1/2,-z+1/4', 'y+1/2,x,z+3/4', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1,-z+3/4', '-y+1,-x+1/2,z+5/4', '-x+1/2,y+1,-z+3/4', 'y+1,x+1/2,z+5/4'], 'universal_h_m': 'I-42d'}, {'hall': '-P 4 2', 'hermann_mauguin': 'P4/mmm', 'hermann_mauguin_u': 'P4/mmm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 123, 'point_group': '4/mmm', 'schoenflies': 'D4h^1', 'short_h_m': 'P4/mmm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'universal_h_m': 'P4/mmm'}, {'hall': '-P 4 2c', 'hermann_mauguin': 'P4/mcc', 'hermann_mauguin_u': 'P4/mcc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z-1/2', '-y,-x,z-1/2', 'x,-y,z-1/2', 'y,x,z-1/2'], 'number': 124, 'point_group': '4/mmm', 'schoenflies': 'D4h^2', 'short_h_m': 'P4/mcc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z-1/2', '-y,-x,z-1/2', 'x,-y,z-1/2', 'y,x,z-1/2'], 'universal_h_m': 'P4/mcc'}, {'hall': ' P 4 2 -1ab', 'hermann_mauguin': 'P4/nbm', 'hermann_mauguin_u': 'P4/nbm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'number': 125, 'point_group': '4/mmm', 'schoenflies': 'D4h^3', 'short_h_m': 'P4/nbm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'P4/nbm:1'}, {'hall': '-P 4a 2b', 'hermann_mauguin': 'P4/nbm', 'hermann_mauguin_u': 'P4/nbm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z', '-y,-x,z', 'x-1/2,-y,z', 'y-1/2,x-1/2,z'], 'number': 125, 'point_group': '4/mmm', 'schoenflies': 'D4h^3', 'short_h_m': 'P4/nbm', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z', '-y,-x,z', 'x-1/2,-y,z', 'y-1/2,x-1/2,z'], 'universal_h_m': 'P4/nbm:2'}, {'hall': ' P 4 2 -1n', 'hermann_mauguin': 'P4/nnc', 'hermann_mauguin_u': 'P4/nnc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 126, 'point_group': '4/mmm', 'schoenflies': 'D4h^4', 'short_h_m': 'P4/nnc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P4/nnc:1'}, {'hall': '-P 4a 2bc', 'hermann_mauguin': 'P4/nnc', 'hermann_mauguin_u': 'P4/nnc', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z-1/2', '-y,-x,z-1/2', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z-1/2'], 'number': 126, 'point_group': '4/mmm', 'schoenflies': 'D4h^4', 'short_h_m': 'P4/nnc', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z-1/2', '-y,-x,z-1/2', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z-1/2'], 'universal_h_m': 'P4/nnc:2'}, {'hall': '-P 4 2ab', 'hermann_mauguin': 'P4/mbm', 'hermann_mauguin_u': 'P4/mbm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x-1/2,y-1/2,z', '-y-1/2,-x-1/2,z', 'x-1/2,-y-1/2,z', 'y-1/2,x-1/2,z'], 'number': 127, 'point_group': '4/mmm', 'schoenflies': 'D4h^5', 'short_h_m': 'P4/mbm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x-1/2,y-1/2,z', '-y-1/2,-x-1/2,z', 'x-1/2,-y-1/2,z', 'y-1/2,x-1/2,z'], 'universal_h_m': 'P4/mbm'}, {'hall': '-P 4 2n', 'hermann_mauguin': 'P4/mnc', 'hermann_mauguin_u': 'P4/mnc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x-1/2,y-1/2,z-1/2', '-y-1/2,-x-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2', 'y-1/2,x-1/2,z-1/2'], 'number': 128, 'point_group': '4/mmm', 'schoenflies': 'D4h^6', 'short_h_m': 'P4/mnc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x-1/2,y-1/2,z-1/2', '-y-1/2,-x-1/2,z-1/2', 'x-1/2,-y-1/2,z-1/2', 'y-1/2,x-1/2,z-1/2'], 'universal_h_m': 'P4/mnc'}, {'hall': ' P 4ab 2ab -1ab', 'hermann_mauguin': 'P4/nmm', 'hermann_mauguin_u': 'P4/nmm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z', '-y+1/2,-x+1/2,z', 'x,-y,z', 'y+1/2,x+1/2,z'], 'number': 129, 'point_group': '4/mmm', 'schoenflies': 'D4h^7', 'short_h_m': 'P4/nmm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z', '-y+1/2,-x+1/2,z', 'x,-y,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'P4/nmm:1'}, {'hall': '-P 4a 2a', 'hermann_mauguin': 'P4/nmm', 'hermann_mauguin_u': 'P4/nmm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x-1/2,y,z', '-y-1/2,-x-1/2,z', 'x,-y-1/2,z', 'y,x,z'], 'number': 129, 'point_group': '4/mmm', 'schoenflies': 'D4h^7', 'short_h_m': 'P4/nmm', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x-1/2,y,z', '-y-1/2,-x-1/2,z', 'x,-y-1/2,z', 'y,x,z'], 'universal_h_m': 'P4/nmm:2'}, {'hall': ' P 4ab 2n -1ab', 'hermann_mauguin': 'P4/ncc', 'hermann_mauguin_u': 'P4/ncc', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z-1/2', '-y+1/2,-x+1/2,z-1/2', 'x,-y,z-1/2', 'y+1/2,x+1/2,z-1/2'], 'number': 130, 'point_group': '4/mmm', 'schoenflies': 'D4h^8', 'short_h_m': 'P4/ncc', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z-1/2', '-y+1/2,-x+1/2,z-1/2', 'x,-y,z-1/2', 'y+1/2,x+1/2,z-1/2'], 'universal_h_m': 'P4/ncc:1'}, {'hall': '-P 4a 2ac', 'hermann_mauguin': 'P4/ncc', 'hermann_mauguin_u': 'P4/ncc', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x-1/2,y,z-1/2', '-y-1/2,-x-1/2,z-1/2', 'x,-y-1/2,z-1/2', 'y,x,z-1/2'], 'number': 130, 'point_group': '4/mmm', 'schoenflies': 'D4h^8', 'short_h_m': 'P4/ncc', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x-1/2,y,z-1/2', '-y-1/2,-x-1/2,z-1/2', 'x,-y-1/2,z-1/2', 'y,x,z-1/2'], 'universal_h_m': 'P4/ncc:2'}, {'hall': '-P 4c 2', 'hermann_mauguin': 'P42/mmc', 'hermann_mauguin_u': 'P4_2/mmc', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x,y,z', '-y,-x,z-1/2', 'x,-y,z', 'y,x,z-1/2'], 'number': 131, 'point_group': '4/mmm', 'schoenflies': 'D4h^9', 'short_h_m': 'P4_2/mmc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x,y,z', '-y,-x,z-1/2', 'x,-y,z', 'y,x,z-1/2'], 'universal_h_m': 'P42/mmc'}, {'hall': '-P 4c 2c', 'hermann_mauguin': 'P42/mcm', 'hermann_mauguin_u': 'P4_2/mcm', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x,y,z-1/2', '-y,-x,z', 'x,-y,z-1/2', 'y,x,z'], 'number': 132, 'point_group': '4/mmm', 'schoenflies': 'D4h^10', 'short_h_m': 'P4_2/mcm', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x,y,z-1/2', '-y,-x,z', 'x,-y,z-1/2', 'y,x,z'], 'universal_h_m': 'P42/mcm'}, {'hall': ' P 4n 2c -1n', 'hermann_mauguin': 'P42/nbc', 'hermann_mauguin_u': 'P4_2/nbc', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z', 'y,x,z+1/2'], 'number': 133, 'point_group': '4/mmm', 'schoenflies': 'D4h^11', 'short_h_m': 'P4_2/nbc', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z', 'y,x,z+1/2'], 'universal_h_m': 'P42/nbc:1'}, {'hall': '-P 4ac 2b', 'hermann_mauguin': 'P42/nbc', 'hermann_mauguin_u': 'P4_2/nbc', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x,y-1/2,z', '-y,-x,z-1/2', 'x-1/2,-y,z', 'y-1/2,x-1/2,z-1/2'], 'number': 133, 'point_group': '4/mmm', 'schoenflies': 'D4h^11', 'short_h_m': 'P4_2/nbc', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x,y-1/2,z', '-y,-x,z-1/2', 'x-1/2,-y,z', 'y-1/2,x-1/2,z-1/2'], 'universal_h_m': 'P42/nbc:2'}, {'hall': ' P 4n 2 -1n', 'hermann_mauguin': 'P42/nnm', 'hermann_mauguin_u': 'P4_2/nnm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'number': 134, 'point_group': '4/mmm', 'schoenflies': 'D4h^12', 'short_h_m': 'P4_2/nnm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'universal_h_m': 'P42/nnm:1'}, {'hall': '-P 4ac 2bc', 'hermann_mauguin': 'P42/nnm', 'hermann_mauguin_u': 'P4_2/nnm', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x,y-1/2,z-1/2', '-y,-x,z', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z'], 'number': 134, 'point_group': '4/mmm', 'schoenflies': 'D4h^12', 'short_h_m': 'P4_2/nnm', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x,y-1/2,z-1/2', '-y,-x,z', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z'], 'universal_h_m': 'P42/nnm:2'}, {'hall': '-P 4c 2ab', 'hermann_mauguin': 'P42/mbc', 'hermann_mauguin_u': 'P4_2/mbc', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x-1/2,y-1/2,z', '-y-1/2,-x-1/2,z-1/2', 'x-1/2,-y-1/2,z', 'y-1/2,x-1/2,z-1/2'], 'number': 135, 'point_group': '4/mmm', 'schoenflies': 'D4h^13', 'short_h_m': 'P4_2/mbc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y,-x,-z-1/2', 'x,y,-z', '-y,x,-z-1/2', '-x-1/2,y-1/2,z', '-y-1/2,-x-1/2,z-1/2', 'x-1/2,-y-1/2,z', 'y-1/2,x-1/2,z-1/2'], 'universal_h_m': 'P42/mbc'}, {'hall': '-P 4n 2n', 'hermann_mauguin': 'P42/mnm', 'hermann_mauguin_u': 'P4_2/mnm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x-1/2,-z-1/2', 'x,y,-z', '-y-1/2,x-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', '-y,-x,z', 'x-1/2,-y-1/2,z-1/2', 'y,x,z'], 'number': 136, 'point_group': '4/mmm', 'schoenflies': 'D4h^14', 'short_h_m': 'P4_2/mnm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x-1/2,-z-1/2', 'x,y,-z', '-y-1/2,x-1/2,-z-1/2', '-x-1/2,y-1/2,z-1/2', '-y,-x,z', 'x-1/2,-y-1/2,z-1/2', 'y,x,z'], 'universal_h_m': 'P42/mnm'}, {'hall': ' P 4n 2n -1n', 'hermann_mauguin': 'P42/nmc', 'hermann_mauguin_u': 'P4_2/nmc', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x,y,z', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z', 'y+1/2,x+1/2,z+1/2'], 'number': 137, 'point_group': '4/mmm', 'schoenflies': 'D4h^15', 'short_h_m': 'P4_2/nmc', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x,y,z', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P42/nmc:1'}, {'hall': '-P 4ac 2a', 'hermann_mauguin': 'P42/nmc', 'hermann_mauguin_u': 'P4_2/nmc', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x-1/2,y,z', '-y-1/2,-x-1/2,z-1/2', 'x,-y-1/2,z', 'y,x,z-1/2'], 'number': 137, 'point_group': '4/mmm', 'schoenflies': 'D4h^15', 'short_h_m': 'P4_2/nmc', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x-1/2,y,z', '-y-1/2,-x-1/2,z-1/2', 'x,-y-1/2,z', 'y,x,z-1/2'], 'universal_h_m': 'P42/nmc:2'}, {'hall': ' P 4n 2ab -1n', 'hermann_mauguin': 'P42/ncm', 'hermann_mauguin_u': 'P4_2/ncm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x,y,z+1/2', '-y+1/2,-x+1/2,z', 'x,-y,z+1/2', 'y+1/2,x+1/2,z'], 'number': 138, 'point_group': '4/mmm', 'schoenflies': 'D4h^16', 'short_h_m': 'P4_2/ncm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x,y,z+1/2', '-y+1/2,-x+1/2,z', 'x,-y,z+1/2', 'y+1/2,x+1/2,z'], 'universal_h_m': 'P42/ncm:1'}, {'hall': '-P 4ac 2ac', 'hermann_mauguin': 'P42/ncm', 'hermann_mauguin_u': 'P4_2/ncm', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x-1/2,y,z-1/2', '-y-1/2,-x-1/2,z', 'x,-y-1/2,z-1/2', 'y,x,z'], 'number': 138, 'point_group': '4/mmm', 'schoenflies': 'D4h^16', 'short_h_m': 'P4_2/ncm', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y-1/2,-x,-z-1/2', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z-1/2', '-x-1/2,y,z-1/2', '-y-1/2,-x-1/2,z', 'x,-y-1/2,z-1/2', 'y,x,z'], 'universal_h_m': 'P42/ncm:2'}, {'hall': '-I 4 2', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'I4/mmm'}, {'hall': '-I 4 2c', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z-1/2', '-y,-x,z-1/2', 'x,-y,z-1/2', 'y,x,z-1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z-1/2', '-y,-x,z-1/2', 'x,-y,z-1/2', 'y,x,z-1/2', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1', 'y+1/2,x+1/2,-z+1', '-x+1/2,y+1/2,-z+1', '-y+1/2,-x+1/2,-z+1', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'I4/mcm'}, {'hall': ' I 4bw 2bw -1bw', 'hermann_mauguin': 'I41/amd', 'hermann_mauguin_u': 'I4_1/amd', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x,-y+1/2,-z+1/4', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+3/4', '-y,-x,-z', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2', '-x,y,z', '-y-1/2,-x,z-1/4', 'x-1/2,-y+1/2,z-1/2', 'y,x+1/2,z+1/4'], 'number': 141, 'point_group': '4/mmm', 'schoenflies': 'D4h^19', 'short_h_m': 'I4_1/amd', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x,-y+1/2,-z+1/4', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+3/4', '-y,-x,-z', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2', '-x,y,z', '-y-1/2,-x,z-1/4', 'x-1/2,-y+1/2,z-1/2', 'y,x+1/2,z+1/4', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', 'x+1/2,-y+1,-z+3/4', 'y+1,x+1,-z+1', '-x+1,y+1/2,-z+5/4', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1,-z+3/4', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/4', '-y,x+1,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x+1/2,z+1/4', 'x,-y+1,z', 'y+1/2,x+1,z+3/4'], 'universal_h_m': 'I41/amd:1'}, {'hall': '-I 4bd 2', 'hermann_mauguin': 'I41/amd', 'hermann_mauguin_u': 'I4_1/amd', 'ncsym': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+3/4,-z+1/4', '-x+1/2,y,-z+1/2', '-y+1/4,-x+1/4,-z+3/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z', '-y-1/4,-x-3/4,z-1/4', 'x-1/2,-y,z-1/2', 'y-1/4,x-1/4,z-3/4'], 'number': 141, 'point_group': '4/mmm', 'schoenflies': 'D4h^19', 'short_h_m': 'I4_1/amd', 'symops': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+3/4,-z+1/4', '-x+1/2,y,-z+1/2', '-y+1/4,-x+1/4,-z+3/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z', '-y-1/4,-x-3/4,z-1/4', 'x-1/2,-y,z-1/2', 'y-1/4,x-1/4,z-3/4', 'x+1/2,y+1/2,z+1/2', '-y+3/4,x+5/4,z+3/4', '-x+1,-y+1/2,z+1', 'y+3/4,-x+3/4,z+5/4', 'x+1/2,-y+1/2,-z+1/2', 'y+3/4,x+5/4,-z+3/4', '-x+1,y+1/2,-z+1', '-y+3/4,-x+3/4,-z+5/4', '-x+1/2,-y+1/2,-z+1/2', 'y+1/4,-x-1/4,-z+1/4', 'x,y+1/2,-z', '-y+1/4,x+1/4,-z-1/4', '-x+1/2,y+1/2,z+1/2', '-y+1/4,-x-1/4,z+1/4', 'x,-y+1/2,z', 'y+1/4,x+1/4,z-1/4'], 'universal_h_m': 'I41/amd:2'}, {'hall': ' I 4bw 2aw -1bw', 'hermann_mauguin': 'I41/acd', 'hermann_mauguin_u': 'I4_1/acd', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x+1/2,-y,-z+1/4', 'y,x,-z+1/2', '-x,y+1/2,-z+3/4', '-y+1/2,-x+1/2,-z', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2', '-x-1/2,y+1/2,z', '-y,-x+1/2,z-1/4', 'x,-y,z-1/2', 'y-1/2,x,z+1/4'], 'number': 142, 'point_group': '4/mmm', 'schoenflies': 'D4h^20', 'short_h_m': 'I4_1/acd', 'symops': ['x,y,z', '-y,x+1/2,z+1/4', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x,z+3/4', 'x+1/2,-y,-z+1/4', 'y,x,-z+1/2', '-x,y+1/2,-z+3/4', '-y+1/2,-x+1/2,-z', '-x,-y+1/2,-z+1/4', 'y,-x,-z', 'x-1/2,y,-z-1/4', '-y-1/2,x+1/2,-z-1/2', '-x-1/2,y+1/2,z', '-y,-x+1/2,z-1/4', 'x,-y,z-1/2', 'y-1/2,x,z+1/4', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1,z+3/4', '-x+1,-y+1,z+1', 'y+1,-x+1/2,z+5/4', 'x+1,-y+1/2,-z+3/4', 'y+1/2,x+1/2,-z+1', '-x+1/2,y+1,-z+5/4', '-y+1,-x+1,-z+1/2', '-x+1/2,-y+1,-z+3/4', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/4', '-y,x+1,-z', '-x,y+1,z+1/2', '-y+1/2,-x+1,z+1/4', 'x+1/2,-y+1/2,z', 'y,x+1/2,z+3/4'], 'universal_h_m': 'I41/acd:1'}, {'hall': '-I 4bd 2c', 'hermann_mauguin': 'I41/acd', 'hermann_mauguin_u': 'I4_1/acd', 'ncsym': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z-1/2', '-y-1/4,-x-3/4,z-3/4', 'x-1/2,-y,z', 'y-1/4,x-1/4,z-1/4'], 'number': 142, 'point_group': '4/mmm', 'schoenflies': 'D4h^20', 'short_h_m': 'I4_1/acd', 'symops': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z-1/2', '-y-1/4,-x-3/4,z-3/4', 'x-1/2,-y,z', 'y-1/4,x-1/4,z-1/4', 'x+1/2,y+1/2,z+1/2', '-y+3/4,x+5/4,z+3/4', '-x+1,-y+1/2,z+1', 'y+3/4,-x+3/4,z+5/4', 'x+1/2,-y+1/2,-z+1', 'y+3/4,x+5/4,-z+5/4', '-x+1,y+1/2,-z+1/2', '-y+3/4,-x+3/4,-z+3/4', '-x+1/2,-y+1/2,-z+1/2', 'y+1/4,-x-1/4,-z+1/4', 'x,y+1/2,-z', '-y+1/4,x+1/4,-z-1/4', '-x+1/2,y+1/2,z', '-y+1/4,-x-1/4,z-1/4', 'x,-y+1/2,z+1/2', 'y+1/4,x+1/4,z+1/4'], 'universal_h_m': 'I41/acd:2'}, {'hall': ' P 3', 'hermann_mauguin': 'P3', 'hermann_mauguin_u': 'P3', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z'], 'number': 143, 'point_group': '3', 'schoenflies': 'C3^1', 'short_h_m': 'P3', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z'], 'universal_h_m': 'P3'}, {'hall': ' P 31', 'hermann_mauguin': 'P31', 'hermann_mauguin_u': 'P3_1', 'ncsym': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3'], 'number': 144, 'point_group': '3', 'schoenflies': 'C3^2', 'short_h_m': 'P3_1', 'symops': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3'], 'universal_h_m': 'P31'}, {'hall': ' P 32', 'hermann_mauguin': 'P32', 'hermann_mauguin_u': 'P3_2', 'ncsym': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3'], 'number': 145, 'point_group': '3', 'schoenflies': 'C3^3', 'short_h_m': 'P3_2', 'symops': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3'], 'universal_h_m': 'P32'}, {'hall': ' R 3', 'hermann_mauguin': 'R3', 'hermann_mauguin_u': 'R3', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z'], 'number': 146, 'point_group': '3', 'schoenflies': 'C3^4', 'short_h_m': 'R3', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3'], 'universal_h_m': 'R3:H'}, {'hall': ' P 3*', 'hermann_mauguin': 'R3', 'hermann_mauguin_u': 'R3', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x'], 'number': 146, 'point_group': '3', 'schoenflies': 'C3^4', 'short_h_m': 'R3', 'symops': ['x,y,z', 'z,x,y', 'y,z,x'], 'universal_h_m': 'R3:R'}, {'hall': '-P 3', 'hermann_mauguin': 'P-3', 'hermann_mauguin_u': 'P-3', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z'], 'number': 147, 'point_group': '-3', 'schoenflies': 'C3i^1', 'short_h_m': 'P-3', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z'], 'universal_h_m': 'P-3'}, {'hall': '-R 3', 'hermann_mauguin': 'R-3', 'hermann_mauguin_u': 'R-3', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z'], 'number': 148, 'point_group': '-3', 'schoenflies': 'C3i^2', 'short_h_m': 'R-3', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', '-x+2/3,-y+1/3,-z+1/3', 'y+2/3,-x+y+1/3,-z+1/3', 'x-y+2/3,x+1/3,-z+1/3', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', '-x+1/3,-y+2/3,-z+2/3', 'y+1/3,-x+y+2/3,-z+2/3', 'x-y+1/3,x+2/3,-z+2/3'], 'universal_h_m': 'R-3:H'}, {'hall': '-P 3*', 'hermann_mauguin': 'R-3', 'hermann_mauguin_u': 'R-3', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x'], 'number': 148, 'point_group': '-3', 'schoenflies': 'C3i^2', 'short_h_m': 'R-3', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x'], 'universal_h_m': 'R-3:R'}, {'hall': ' P 3 2', 'hermann_mauguin': 'P312', 'hermann_mauguin_u': 'P312', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z', 'x,x-y,-z', '-x+y,y,-z'], 'number': 149, 'point_group': '32', 'schoenflies': 'D3^1', 'short_h_m': 'P312', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z', 'x,x-y,-z', '-x+y,y,-z'], 'universal_h_m': 'P312'}, {'hall': ' P 3 2"', 'hermann_mauguin': 'P321', 'hermann_mauguin_u': 'P321', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z'], 'number': 150, 'point_group': '32', 'schoenflies': 'D3^2', 'short_h_m': 'P321', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z'], 'universal_h_m': 'P321'}, {'hall': ' P 31 2 (0 0 4)', 'hermann_mauguin': 'P3112', 'hermann_mauguin_u': 'P3_112', 'ncsym': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3', '-y,-x,-z+2/3', 'x,x-y,-z', '-x+y,y,-z+1/3'], 'number': 151, 'point_group': '32', 'schoenflies': 'D3^3', 'short_h_m': 'P3_112', 'symops': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3', '-y,-x,-z+2/3', 'x,x-y,-z', '-x+y,y,-z+1/3'], 'universal_h_m': 'P3112'}, {'hall': ' P 31 2"', 'hermann_mauguin': 'P3121', 'hermann_mauguin_u': 'P3_121', 'ncsym': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3', 'y,x,-z', '-x,-x+y,-z+1/3', 'x-y,-y,-z+2/3'], 'number': 152, 'point_group': '32', 'schoenflies': 'D3^4', 'short_h_m': 'P3_121', 'symops': ['x,y,z', '-y,x-y,z+1/3', '-x+y,-x,z+2/3', 'y,x,-z', '-x,-x+y,-z+1/3', 'x-y,-y,-z+2/3'], 'universal_h_m': 'P3121'}, {'hall': ' P 32 2 (0 0 2)', 'hermann_mauguin': 'P3212', 'hermann_mauguin_u': 'P3_212', 'ncsym': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3', '-y,-x,-z+1/3', 'x,x-y,-z', '-x+y,y,-z+2/3'], 'number': 153, 'point_group': '32', 'schoenflies': 'D3^5', 'short_h_m': 'P3_212', 'symops': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3', '-y,-x,-z+1/3', 'x,x-y,-z', '-x+y,y,-z+2/3'], 'universal_h_m': 'P3212'}, {'hall': ' P 32 2"', 'hermann_mauguin': 'P3221', 'hermann_mauguin_u': 'P3_221', 'ncsym': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3', 'y,x,-z', '-x,-x+y,-z+2/3', 'x-y,-y,-z+1/3'], 'number': 154, 'point_group': '32', 'schoenflies': 'D3^6', 'short_h_m': 'P3_221', 'symops': ['x,y,z', '-y,x-y,z+2/3', '-x+y,-x,z+1/3', 'y,x,-z', '-x,-x+y,-z+2/3', 'x-y,-y,-z+1/3'], 'universal_h_m': 'P3221'}, {'hall': ' R 3 2"', 'hermann_mauguin': 'R32', 'hermann_mauguin_u': 'R32', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z'], 'number': 155, 'point_group': '32', 'schoenflies': 'D3^7', 'short_h_m': 'R32', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', 'y+2/3,x+1/3,-z+1/3', '-x+2/3,-x+y+1/3,-z+1/3', 'x-y+2/3,-y+1/3,-z+1/3', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', 'y+1/3,x+2/3,-z+2/3', '-x+1/3,-x+y+2/3,-z+2/3', 'x-y+1/3,-y+2/3,-z+2/3'], 'universal_h_m': 'R32:H'}, {'hall': ' P 3* 2', 'hermann_mauguin': 'R32', 'hermann_mauguin_u': 'R32', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', '-y,-x,-z', '-z,-y,-x', '-x,-z,-y'], 'number': 155, 'point_group': '32', 'schoenflies': 'D3^7', 'short_h_m': 'R32', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', '-y,-x,-z', '-z,-y,-x', '-x,-z,-y'], 'universal_h_m': 'R32:R'}, {'hall': ' P 3 -2"', 'hermann_mauguin': 'P3m1', 'hermann_mauguin_u': 'P3m1', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'number': 156, 'point_group': '3m', 'schoenflies': 'C3v^1', 'short_h_m': 'P3m1', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'universal_h_m': 'P3m1'}, {'hall': ' P 3 -2', 'hermann_mauguin': 'P31m', 'hermann_mauguin_u': 'P31m', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,z', '-x,-x+y,z', 'x-y,-y,z'], 'number': 157, 'point_group': '3m', 'schoenflies': 'C3v^2', 'short_h_m': 'P31m', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,z', '-x,-x+y,z', 'x-y,-y,z'], 'universal_h_m': 'P31m'}, {'hall': ' P 3 -2"c', 'hermann_mauguin': 'P3c1', 'hermann_mauguin_u': 'P3c1', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z+1/2', 'x,x-y,z+1/2', '-x+y,y,z+1/2'], 'number': 158, 'point_group': '3m', 'schoenflies': 'C3v^3', 'short_h_m': 'P3c1', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z+1/2', 'x,x-y,z+1/2', '-x+y,y,z+1/2'], 'universal_h_m': 'P3c1'}, {'hall': ' P 3 -2c', 'hermann_mauguin': 'P31c', 'hermann_mauguin_u': 'P31c', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,z+1/2', '-x,-x+y,z+1/2', 'x-y,-y,z+1/2'], 'number': 159, 'point_group': '3m', 'schoenflies': 'C3v^4', 'short_h_m': 'P31c', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,z+1/2', '-x,-x+y,z+1/2', 'x-y,-y,z+1/2'], 'universal_h_m': 'P31c'}, {'hall': ' R 3 -2"', 'hermann_mauguin': 'R3m', 'hermann_mauguin_u': 'R3m', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'number': 160, 'point_group': '3m', 'schoenflies': 'C3v^5', 'short_h_m': 'R3m', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', '-y+2/3,-x+1/3,z+1/3', 'x+2/3,x-y+1/3,z+1/3', '-x+y+2/3,y+1/3,z+1/3', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', '-y+1/3,-x+2/3,z+2/3', 'x+1/3,x-y+2/3,z+2/3', '-x+y+1/3,y+2/3,z+2/3'], 'universal_h_m': 'R3m:H'}, {'hall': ' P 3* -2', 'hermann_mauguin': 'R3m', 'hermann_mauguin_u': 'R3m', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', 'y,x,z', 'z,y,x', 'x,z,y'], 'number': 160, 'point_group': '3m', 'schoenflies': 'C3v^5', 'short_h_m': 'R3m', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', 'y,x,z', 'z,y,x', 'x,z,y'], 'universal_h_m': 'R3m:R'}, {'hall': ' R 3 -2"c', 'hermann_mauguin': 'R3c', 'hermann_mauguin_u': 'R3c', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z+1/2', 'x,x-y,z+1/2', '-x+y,y,z+1/2'], 'number': 161, 'point_group': '3m', 'schoenflies': 'C3v^6', 'short_h_m': 'R3c', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,z+1/2', 'x,x-y,z+1/2', '-x+y,y,z+1/2', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', '-y+2/3,-x+1/3,z+5/6', 'x+2/3,x-y+1/3,z+5/6', '-x+y+2/3,y+1/3,z+5/6', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', '-y+1/3,-x+2/3,z+7/6', 'x+1/3,x-y+2/3,z+7/6', '-x+y+1/3,y+2/3,z+7/6'], 'universal_h_m': 'R3c:H'}, {'hall': ' P 3* -2n', 'hermann_mauguin': 'R3c', 'hermann_mauguin_u': 'R3c', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', 'y+1/2,x+1/2,z+1/2', 'z+1/2,y+1/2,x+1/2', 'x+1/2,z+1/2,y+1/2'], 'number': 161, 'point_group': '3m', 'schoenflies': 'C3v^6', 'short_h_m': 'R3c', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', 'y+1/2,x+1/2,z+1/2', 'z+1/2,y+1/2,x+1/2', 'x+1/2,z+1/2,y+1/2'], 'universal_h_m': 'R3c:R'}, {'hall': '-P 3 2', 'hermann_mauguin': 'P-31m', 'hermann_mauguin_u': 'P-31m', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z', 'x,x-y,-z', '-x+y,y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', 'y,x,z', '-x,-x+y,z', 'x-y,-y,z'], 'number': 162, 'point_group': '-3m', 'schoenflies': 'D3d^1', 'short_h_m': 'P-3m', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z', 'x,x-y,-z', '-x+y,y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', 'y,x,z', '-x,-x+y,z', 'x-y,-y,z'], 'universal_h_m': 'P-31m'}, {'hall': '-P 3 2c', 'hermann_mauguin': 'P-31c', 'hermann_mauguin_u': 'P-31c', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z+1/2', 'x,x-y,-z+1/2', '-x+y,y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', 'y,x,z-1/2', '-x,-x+y,z-1/2', 'x-y,-y,z-1/2'], 'number': 163, 'point_group': '-3m', 'schoenflies': 'D3d^2', 'short_h_m': 'P-3c', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', '-y,-x,-z+1/2', 'x,x-y,-z+1/2', '-x+y,y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', 'y,x,z-1/2', '-x,-x+y,z-1/2', 'x-y,-y,z-1/2'], 'universal_h_m': 'P-31c'}, {'hall': '-P 3 2"', 'hermann_mauguin': 'P-3m1', 'hermann_mauguin_u': 'P-3m1', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'number': 164, 'point_group': '-3m', 'schoenflies': 'D3d^3', 'short_h_m': 'P-3m', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'universal_h_m': 'P-3m1'}, {'hall': '-P 3 2"c', 'hermann_mauguin': 'P-3c1', 'hermann_mauguin_u': 'P-3c1', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z+1/2', '-x,-x+y,-z+1/2', 'x-y,-y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z-1/2', 'x,x-y,z-1/2', '-x+y,y,z-1/2'], 'number': 165, 'point_group': '-3m', 'schoenflies': 'D3d^4', 'short_h_m': 'P-3c', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z+1/2', '-x,-x+y,-z+1/2', 'x-y,-y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z-1/2', 'x,x-y,z-1/2', '-x+y,y,z-1/2'], 'universal_h_m': 'P-3c1'}, {'hall': '-R 3 2"', 'hermann_mauguin': 'R-3m', 'hermann_mauguin_u': 'R-3m', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z'], 'number': 166, 'point_group': '-3m', 'schoenflies': 'D3d^5', 'short_h_m': 'R-3m', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z', '-x,-x+y,-z', 'x-y,-y,-z', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z', 'x,x-y,z', '-x+y,y,z', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', 'y+2/3,x+1/3,-z+1/3', '-x+2/3,-x+y+1/3,-z+1/3', 'x-y+2/3,-y+1/3,-z+1/3', '-x+2/3,-y+1/3,-z+1/3', 'y+2/3,-x+y+1/3,-z+1/3', 'x-y+2/3,x+1/3,-z+1/3', '-y+2/3,-x+1/3,z+1/3', 'x+2/3,x-y+1/3,z+1/3', '-x+y+2/3,y+1/3,z+1/3', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', 'y+1/3,x+2/3,-z+2/3', '-x+1/3,-x+y+2/3,-z+2/3', 'x-y+1/3,-y+2/3,-z+2/3', '-x+1/3,-y+2/3,-z+2/3', 'y+1/3,-x+y+2/3,-z+2/3', 'x-y+1/3,x+2/3,-z+2/3', '-y+1/3,-x+2/3,z+2/3', 'x+1/3,x-y+2/3,z+2/3', '-x+y+1/3,y+2/3,z+2/3'], 'universal_h_m': 'R-3m:H'}, {'hall': '-P 3* 2', 'hermann_mauguin': 'R-3m', 'hermann_mauguin_u': 'R-3m', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', '-y,-x,-z', '-z,-y,-x', '-x,-z,-y', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x', 'y,x,z', 'z,y,x', 'x,z,y'], 'number': 166, 'point_group': '-3m', 'schoenflies': 'D3d^5', 'short_h_m': 'R-3m', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', '-y,-x,-z', '-z,-y,-x', '-x,-z,-y', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x', 'y,x,z', 'z,y,x', 'x,z,y'], 'universal_h_m': 'R-3m:R'}, {'hall': '-R 3 2"c', 'hermann_mauguin': 'R-3c', 'hermann_mauguin_u': 'R-3c', 'ncsym': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z+1/2', '-x,-x+y,-z+1/2', 'x-y,-y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z-1/2', 'x,x-y,z-1/2', '-x+y,y,z-1/2'], 'number': 167, 'point_group': '-3m', 'schoenflies': 'D3d^6', 'short_h_m': 'R-3c', 'symops': ['x,y,z', '-y,x-y,z', '-x+y,-x,z', 'y,x,-z+1/2', '-x,-x+y,-z+1/2', 'x-y,-y,-z+1/2', '-x,-y,-z', 'y,-x+y,-z', 'x-y,x,-z', '-y,-x,z-1/2', 'x,x-y,z-1/2', '-x+y,y,z-1/2', 'x+2/3,y+1/3,z+1/3', '-y+2/3,x-y+1/3,z+1/3', '-x+y+2/3,-x+1/3,z+1/3', 'y+2/3,x+1/3,-z+5/6', '-x+2/3,-x+y+1/3,-z+5/6', 'x-y+2/3,-y+1/3,-z+5/6', '-x+2/3,-y+1/3,-z+1/3', 'y+2/3,-x+y+1/3,-z+1/3', 'x-y+2/3,x+1/3,-z+1/3', '-y+2/3,-x+1/3,z-1/6', 'x+2/3,x-y+1/3,z-1/6', '-x+y+2/3,y+1/3,z-1/6', 'x+1/3,y+2/3,z+2/3', '-y+1/3,x-y+2/3,z+2/3', '-x+y+1/3,-x+2/3,z+2/3', 'y+1/3,x+2/3,-z+7/6', '-x+1/3,-x+y+2/3,-z+7/6', 'x-y+1/3,-y+2/3,-z+7/6', '-x+1/3,-y+2/3,-z+2/3', 'y+1/3,-x+y+2/3,-z+2/3', 'x-y+1/3,x+2/3,-z+2/3', '-y+1/3,-x+2/3,z+1/6', 'x+1/3,x-y+2/3,z+1/6', '-x+y+1/3,y+2/3,z+1/6'], 'universal_h_m': 'R-3c:H'}, {'hall': '-P 3* 2n', 'hermann_mauguin': 'R-3c', 'hermann_mauguin_u': 'R-3c', 'ncsym': ['x,y,z', 'z,x,y', 'y,z,x', '-y+1/2,-x+1/2,-z+1/2', '-z+1/2,-y+1/2,-x+1/2', '-x+1/2,-z+1/2,-y+1/2', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x', 'y-1/2,x-1/2,z-1/2', 'z-1/2,y-1/2,x-1/2', 'x-1/2,z-1/2,y-1/2'], 'number': 167, 'point_group': '-3m', 'schoenflies': 'D3d^6', 'short_h_m': 'R-3c', 'symops': ['x,y,z', 'z,x,y', 'y,z,x', '-y+1/2,-x+1/2,-z+1/2', '-z+1/2,-y+1/2,-x+1/2', '-x+1/2,-z+1/2,-y+1/2', '-x,-y,-z', '-z,-x,-y', '-y,-z,-x', 'y-1/2,x-1/2,z-1/2', 'z-1/2,y-1/2,x-1/2', 'x-1/2,z-1/2,y-1/2'], 'universal_h_m': 'R-3c:R'}, {'hall': ' P 6', 'hermann_mauguin': 'P6', 'hermann_mauguin_u': 'P6', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z'], 'number': 168, 'point_group': '6', 'schoenflies': 'C6^1', 'short_h_m': 'P6', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z'], 'universal_h_m': 'P6'}, {'hall': ' P 61', 'hermann_mauguin': 'P61', 'hermann_mauguin_u': 'P6_1', 'ncsym': ['x,y,z', 'x-y,x,z+1/6', '-y,x-y,z+1/3', '-x,-y,z+1/2', '-x+y,-x,z+2/3', 'y,-x+y,z+5/6'], 'number': 169, 'point_group': '6', 'schoenflies': 'C6^2', 'short_h_m': 'P6_1', 'symops': ['x,y,z', 'x-y,x,z+1/6', '-y,x-y,z+1/3', '-x,-y,z+1/2', '-x+y,-x,z+2/3', 'y,-x+y,z+5/6'], 'universal_h_m': 'P61'}, {'hall': ' P 65', 'hermann_mauguin': 'P65', 'hermann_mauguin_u': 'P6_5', 'ncsym': ['x,y,z', 'x-y,x,z+5/6', '-y,x-y,z+2/3', '-x,-y,z+1/2', '-x+y,-x,z+1/3', 'y,-x+y,z+1/6'], 'number': 170, 'point_group': '6', 'schoenflies': 'C6^3', 'short_h_m': 'P6_5', 'symops': ['x,y,z', 'x-y,x,z+5/6', '-y,x-y,z+2/3', '-x,-y,z+1/2', '-x+y,-x,z+1/3', 'y,-x+y,z+1/6'], 'universal_h_m': 'P65'}, {'hall': ' P 62', 'hermann_mauguin': 'P62', 'hermann_mauguin_u': 'P6_2', 'ncsym': ['x,y,z', 'x-y,x,z+1/3', '-y,x-y,z+2/3', '-x,-y,z', '-x+y,-x,z+1/3', 'y,-x+y,z+2/3'], 'number': 171, 'point_group': '6', 'schoenflies': 'C6^4', 'short_h_m': 'P6_2', 'symops': ['x,y,z', 'x-y,x,z+1/3', '-y,x-y,z+2/3', '-x,-y,z', '-x+y,-x,z+1/3', 'y,-x+y,z+2/3'], 'universal_h_m': 'P62'}, {'hall': ' P 64', 'hermann_mauguin': 'P64', 'hermann_mauguin_u': 'P6_4', 'ncsym': ['x,y,z', 'x-y,x,z+2/3', '-y,x-y,z+1/3', '-x,-y,z', '-x+y,-x,z+2/3', 'y,-x+y,z+1/3'], 'number': 172, 'point_group': '6', 'schoenflies': 'C6^5', 'short_h_m': 'P6_4', 'symops': ['x,y,z', 'x-y,x,z+2/3', '-y,x-y,z+1/3', '-x,-y,z', '-x+y,-x,z+2/3', 'y,-x+y,z+1/3'], 'universal_h_m': 'P64'}, {'hall': ' P 6c', 'hermann_mauguin': 'P63', 'hermann_mauguin_u': 'P6_3', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2'], 'number': 173, 'point_group': '6', 'schoenflies': 'C6^6', 'short_h_m': 'P6_3', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2'], 'universal_h_m': 'P63'}, {'hall': ' P -6', 'hermann_mauguin': 'P-6', 'hermann_mauguin_u': 'P-6', 'ncsym': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z'], 'number': 174, 'point_group': '-6', 'schoenflies': 'C3h^1', 'short_h_m': 'P-6', 'symops': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z'], 'universal_h_m': 'P-6'}, {'hall': '-P 6', 'hermann_mauguin': 'P6/m', 'hermann_mauguin_u': 'P6/m', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z'], 'number': 175, 'point_group': '6/m', 'schoenflies': 'C6h^1', 'short_h_m': 'P6/m', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z'], 'universal_h_m': 'P6/m'}, {'hall': '-P 6c', 'hermann_mauguin': 'P63/m', 'hermann_mauguin_u': 'P6_3/m', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2'], 'number': 176, 'point_group': '6/m', 'schoenflies': 'C6h^2', 'short_h_m': 'P6_3/m', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2'], 'universal_h_m': 'P63/m'}, {'hall': ' P 6 2', 'hermann_mauguin': 'P622', 'hermann_mauguin_u': 'P622', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z'], 'number': 177, 'point_group': '622', 'schoenflies': 'D6^1', 'short_h_m': 'P622', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z'], 'universal_h_m': 'P622'}, {'hall': ' P 61 2 (0 0 5)', 'hermann_mauguin': 'P6122', 'hermann_mauguin_u': 'P6_122', 'ncsym': ['x,y,z', 'x-y,x,z+1/6', '-y,x-y,z+1/3', '-x,-y,z+1/2', '-x+y,-x,z+2/3', 'y,-x+y,z+5/6', '-y,-x,-z+5/6', 'x-y,-y,-z', 'x,x-y,-z+1/6', 'y,x,-z+1/3', '-x+y,y,-z+1/2', '-x,-x+y,-z+2/3'], 'number': 178, 'point_group': '622', 'schoenflies': 'D6^2', 'short_h_m': 'P6_122', 'symops': ['x,y,z', 'x-y,x,z+1/6', '-y,x-y,z+1/3', '-x,-y,z+1/2', '-x+y,-x,z+2/3', 'y,-x+y,z+5/6', '-y,-x,-z+5/6', 'x-y,-y,-z', 'x,x-y,-z+1/6', 'y,x,-z+1/3', '-x+y,y,-z+1/2', '-x,-x+y,-z+2/3'], 'universal_h_m': 'P6122'}, {'hall': ' P 65 2 (0 0 1)', 'hermann_mauguin': 'P6522', 'hermann_mauguin_u': 'P6_522', 'ncsym': ['x,y,z', 'x-y,x,z+5/6', '-y,x-y,z+2/3', '-x,-y,z+1/2', '-x+y,-x,z+1/3', 'y,-x+y,z+1/6', '-y,-x,-z+1/6', 'x-y,-y,-z', 'x,x-y,-z+5/6', 'y,x,-z+2/3', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/3'], 'number': 179, 'point_group': '622', 'schoenflies': 'D6^3', 'short_h_m': 'P6_522', 'symops': ['x,y,z', 'x-y,x,z+5/6', '-y,x-y,z+2/3', '-x,-y,z+1/2', '-x+y,-x,z+1/3', 'y,-x+y,z+1/6', '-y,-x,-z+1/6', 'x-y,-y,-z', 'x,x-y,-z+5/6', 'y,x,-z+2/3', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/3'], 'universal_h_m': 'P6522'}, {'hall': ' P 62 2 (0 0 4)', 'hermann_mauguin': 'P6222', 'hermann_mauguin_u': 'P6_222', 'ncsym': ['x,y,z', 'x-y,x,z+1/3', '-y,x-y,z+2/3', '-x,-y,z', '-x+y,-x,z+1/3', 'y,-x+y,z+2/3', '-y,-x,-z+2/3', 'x-y,-y,-z', 'x,x-y,-z+1/3', 'y,x,-z+2/3', '-x+y,y,-z', '-x,-x+y,-z+1/3'], 'number': 180, 'point_group': '622', 'schoenflies': 'D6^4', 'short_h_m': 'P6_222', 'symops': ['x,y,z', 'x-y,x,z+1/3', '-y,x-y,z+2/3', '-x,-y,z', '-x+y,-x,z+1/3', 'y,-x+y,z+2/3', '-y,-x,-z+2/3', 'x-y,-y,-z', 'x,x-y,-z+1/3', 'y,x,-z+2/3', '-x+y,y,-z', '-x,-x+y,-z+1/3'], 'universal_h_m': 'P6222'}, {'hall': ' P 64 2 (0 0 2)', 'hermann_mauguin': 'P6422', 'hermann_mauguin_u': 'P6_422', 'ncsym': ['x,y,z', 'x-y,x,z+2/3', '-y,x-y,z+1/3', '-x,-y,z', '-x+y,-x,z+2/3', 'y,-x+y,z+1/3', '-y,-x,-z+1/3', 'x-y,-y,-z', 'x,x-y,-z+2/3', 'y,x,-z+1/3', '-x+y,y,-z', '-x,-x+y,-z+2/3'], 'number': 181, 'point_group': '622', 'schoenflies': 'D6^5', 'short_h_m': 'P6_422', 'symops': ['x,y,z', 'x-y,x,z+2/3', '-y,x-y,z+1/3', '-x,-y,z', '-x+y,-x,z+2/3', 'y,-x+y,z+1/3', '-y,-x,-z+1/3', 'x-y,-y,-z', 'x,x-y,-z+2/3', 'y,x,-z+1/3', '-x+y,y,-z', '-x,-x+y,-z+2/3'], 'universal_h_m': 'P6422'}, {'hall': ' P 6c 2c', 'hermann_mauguin': 'P6322', 'hermann_mauguin_u': 'P6_322', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z'], 'number': 182, 'point_group': '622', 'schoenflies': 'D6^6', 'short_h_m': 'P6_322', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z'], 'universal_h_m': 'P6322'}, {'hall': ' P 6 -2', 'hermann_mauguin': 'P6mm', 'hermann_mauguin_u': 'P6mm', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'number': 183, 'point_group': '6mm', 'schoenflies': 'C6v^1', 'short_h_m': 'P6mm', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'universal_h_m': 'P6mm'}, {'hall': ' P 6 -2c', 'hermann_mauguin': 'P6cc', 'hermann_mauguin_u': 'P6cc', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', 'y,x,z+1/2', '-x+y,y,z+1/2', '-x,-x+y,z+1/2', '-y,-x,z+1/2', 'x-y,-y,z+1/2', 'x,x-y,z+1/2'], 'number': 184, 'point_group': '6mm', 'schoenflies': 'C6v^2', 'short_h_m': 'P6cc', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', 'y,x,z+1/2', '-x+y,y,z+1/2', '-x,-x+y,z+1/2', '-y,-x,z+1/2', 'x-y,-y,z+1/2', 'x,x-y,z+1/2'], 'universal_h_m': 'P6cc'}, {'hall': ' P 6c -2', 'hermann_mauguin': 'P63cm', 'hermann_mauguin_u': 'P6_3cm', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', 'y,x,z', '-x+y,y,z+1/2', '-x,-x+y,z', '-y,-x,z+1/2', 'x-y,-y,z', 'x,x-y,z+1/2'], 'number': 185, 'point_group': '6mm', 'schoenflies': 'C6v^3', 'short_h_m': 'P6_3cm', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', 'y,x,z', '-x+y,y,z+1/2', '-x,-x+y,z', '-y,-x,z+1/2', 'x-y,-y,z', 'x,x-y,z+1/2'], 'universal_h_m': 'P63cm'}, {'hall': ' P 6c -2c', 'hermann_mauguin': 'P63mc', 'hermann_mauguin_u': 'P6_3mc', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', 'y,x,z+1/2', '-x+y,y,z', '-x,-x+y,z+1/2', '-y,-x,z', 'x-y,-y,z+1/2', 'x,x-y,z'], 'number': 186, 'point_group': '6mm', 'schoenflies': 'C6v^4', 'short_h_m': 'P6_3mc', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', 'y,x,z+1/2', '-x+y,y,z', '-x,-x+y,z+1/2', '-y,-x,z', 'x-y,-y,z+1/2', 'x,x-y,z'], 'universal_h_m': 'P63mc'}, {'hall': ' P -6 2', 'hermann_mauguin': 'P-6m2', 'hermann_mauguin_u': 'P-6m2', 'ncsym': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z', '-y,-x,-z', '-x+y,y,z', 'x,x-y,-z', '-y,-x,z', '-x+y,y,-z', 'x,x-y,z'], 'number': 187, 'point_group': '-6m2', 'schoenflies': 'D3h^1', 'short_h_m': 'P-6m2', 'symops': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z', '-y,-x,-z', '-x+y,y,z', 'x,x-y,-z', '-y,-x,z', '-x+y,y,-z', 'x,x-y,z'], 'universal_h_m': 'P-6m2'}, {'hall': ' P -6c 2', 'hermann_mauguin': 'P-6c2', 'hermann_mauguin_u': 'P-6c2', 'ncsym': ['x,y,z', '-x+y,-x,-z+1/2', '-y,x-y,z', 'x,y,-z+1/2', '-x+y,-x,z', '-y,x-y,-z+1/2', '-y,-x,-z', '-x+y,y,z+1/2', 'x,x-y,-z', '-y,-x,z+1/2', '-x+y,y,-z', 'x,x-y,z+1/2'], 'number': 188, 'point_group': '-6m2', 'schoenflies': 'D3h^2', 'short_h_m': 'P-6c2', 'symops': ['x,y,z', '-x+y,-x,-z+1/2', '-y,x-y,z', 'x,y,-z+1/2', '-x+y,-x,z', '-y,x-y,-z+1/2', '-y,-x,-z', '-x+y,y,z+1/2', 'x,x-y,-z', '-y,-x,z+1/2', '-x+y,y,-z', 'x,x-y,z+1/2'], 'universal_h_m': 'P-6c2'}, {'hall': ' P -6 -2', 'hermann_mauguin': 'P-62m', 'hermann_mauguin_u': 'P-62m', 'ncsym': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z', 'y,x,z', 'x-y,-y,-z', '-x,-x+y,z', 'y,x,-z', 'x-y,-y,z', '-x,-x+y,-z'], 'number': 189, 'point_group': '-6m2', 'schoenflies': 'D3h^3', 'short_h_m': 'P-62m', 'symops': ['x,y,z', '-x+y,-x,-z', '-y,x-y,z', 'x,y,-z', '-x+y,-x,z', '-y,x-y,-z', 'y,x,z', 'x-y,-y,-z', '-x,-x+y,z', 'y,x,-z', 'x-y,-y,z', '-x,-x+y,-z'], 'universal_h_m': 'P-62m'}, {'hall': ' P -6c -2c', 'hermann_mauguin': 'P-62c', 'hermann_mauguin_u': 'P-62c', 'ncsym': ['x,y,z', '-x+y,-x,-z+1/2', '-y,x-y,z', 'x,y,-z+1/2', '-x+y,-x,z', '-y,x-y,-z+1/2', 'y,x,z+1/2', 'x-y,-y,-z', '-x,-x+y,z+1/2', 'y,x,-z', 'x-y,-y,z+1/2', '-x,-x+y,-z'], 'number': 190, 'point_group': '-6m2', 'schoenflies': 'D3h^4', 'short_h_m': 'P-62c', 'symops': ['x,y,z', '-x+y,-x,-z+1/2', '-y,x-y,z', 'x,y,-z+1/2', '-x+y,-x,z', '-y,x-y,-z+1/2', 'y,x,z+1/2', 'x-y,-y,-z', '-x,-x+y,z+1/2', 'y,x,-z', 'x-y,-y,z+1/2', '-x,-x+y,-z'], 'universal_h_m': 'P-62c'}, {'hall': '-P 6 2', 'hermann_mauguin': 'P6/mmm', 'hermann_mauguin_u': 'P6/mmm', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'number': 191, 'point_group': '6/mmm', 'schoenflies': 'D6h^1', 'short_h_m': 'P6/mmm', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'universal_h_m': 'P6/mmm'}, {'hall': '-P 6 2c', 'hermann_mauguin': 'P6/mcc', 'hermann_mauguin_u': 'P6/mcc', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z+1/2', 'x-y,-y,-z+1/2', 'x,x-y,-z+1/2', 'y,x,-z+1/2', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z-1/2', '-x+y,y,z-1/2', '-x,-x+y,z-1/2', '-y,-x,z-1/2', 'x-y,-y,z-1/2', 'x,x-y,z-1/2'], 'number': 192, 'point_group': '6/mmm', 'schoenflies': 'D6h^2', 'short_h_m': 'P6/mcc', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z+1/2', 'x-y,-y,-z+1/2', 'x,x-y,-z+1/2', 'y,x,-z+1/2', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z-1/2', '-x+y,y,z-1/2', '-x,-x+y,z-1/2', '-y,-x,z-1/2', 'x-y,-y,z-1/2', 'x,x-y,z-1/2'], 'universal_h_m': 'P6/mcc'}, {'hall': '-P 6c 2', 'hermann_mauguin': 'P63/mcm', 'hermann_mauguin_u': 'P6_3/mcm', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z', 'x-y,-y,-z+1/2', 'x,x-y,-z', 'y,x,-z+1/2', '-x+y,y,-z', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2', 'y,x,z', '-x+y,y,z-1/2', '-x,-x+y,z', '-y,-x,z-1/2', 'x-y,-y,z', 'x,x-y,z-1/2'], 'number': 193, 'point_group': '6/mmm', 'schoenflies': 'D6h^3', 'short_h_m': 'P6_3/mcm', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z', 'x-y,-y,-z+1/2', 'x,x-y,-z', 'y,x,-z+1/2', '-x+y,y,-z', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2', 'y,x,z', '-x+y,y,z-1/2', '-x,-x+y,z', '-y,-x,z-1/2', 'x-y,-y,z', 'x,x-y,z-1/2'], 'universal_h_m': 'P63/mcm'}, {'hall': '-P 6c 2c', 'hermann_mauguin': 'P63/mmc', 'hermann_mauguin_u': 'P6_3/mmc', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2', 'y,x,z-1/2', '-x+y,y,z', '-x,-x+y,z-1/2', '-y,-x,z', 'x-y,-y,z-1/2', 'x,x-y,z'], 'number': 194, 'point_group': '6/mmm', 'schoenflies': 'D6h^4', 'short_h_m': 'P6_3/mmc', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z-1/2', 'y,-x+y,-z', 'x,y,-z-1/2', 'x-y,x,-z', '-y,x-y,-z-1/2', 'y,x,z-1/2', '-x+y,y,z', '-x,-x+y,z-1/2', '-y,-x,z', 'x-y,-y,z-1/2', 'x,x-y,z'], 'universal_h_m': 'P63/mmc'}, {'hall': ' P 2 2 3', 'hermann_mauguin': 'P23', 'hermann_mauguin_u': 'P23', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x'], 'number': 195, 'point_group': '23', 'schoenflies': 'T^1', 'short_h_m': 'P23', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x'], 'universal_h_m': 'P23'}, {'hall': ' F 2 2 3', 'hermann_mauguin': 'F23', 'hermann_mauguin_u': 'F23', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x'], 'number': 196, 'point_group': '23', 'schoenflies': 'T^2', 'short_h_m': 'F23', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'z,-x+1/2,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-y,-z+1/2,x+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', 'z+1/2,x,y+1/2', '-z+1/2,-x,y+1/2', 'z+1/2,-x,-y+1/2', '-z+1/2,x,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z,x+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', 'z+1/2,x+1/2,y', '-z+1/2,-x+1/2,y', 'z+1/2,-x+1/2,-y', '-z+1/2,x+1/2,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', '-y+1/2,z+1/2,-x', '-y+1/2,-z+1/2,x'], 'universal_h_m': 'F23'}, {'hall': ' I 2 2 3', 'hermann_mauguin': 'I23', 'hermann_mauguin_u': 'I23', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x'], 'number': 197, 'point_group': '23', 'schoenflies': 'T^3', 'short_h_m': 'I23', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', 'z+1/2,x+1/2,y+1/2', '-z+1/2,-x+1/2,y+1/2', 'z+1/2,-x+1/2,-y+1/2', '-z+1/2,x+1/2,-y+1/2', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,-x+1/2', '-y+1/2,-z+1/2,x+1/2'], 'universal_h_m': 'I23'}, {'hall': ' P 2ac 2ab 3', 'hermann_mauguin': 'P213', 'hermann_mauguin_u': 'P2_13', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', 'z,x,y', '-z+1/2,-x,y+1/2', 'z+1/2,-x+1/2,-y', '-z,x+1/2,-y+1/2', 'y,z,x', 'y+1/2,-z+1/2,-x', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2'], 'number': 198, 'point_group': '23', 'schoenflies': 'T^4', 'short_h_m': 'P2_13', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', 'z,x,y', '-z+1/2,-x,y+1/2', 'z+1/2,-x+1/2,-y', '-z,x+1/2,-y+1/2', 'y,z,x', 'y+1/2,-z+1/2,-x', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2'], 'universal_h_m': 'P213'}, {'hall': ' I 2b 2c 3', 'hermann_mauguin': 'I213', 'hermann_mauguin_u': 'I2_13', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x,y', '-z,-x+1/2,y', 'z,-x,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z,x', 'y,-z,-x+1/2', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2'], 'number': 199, 'point_group': '23', 'schoenflies': 'T^5', 'short_h_m': 'I2_13', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x,y', '-z,-x+1/2,y', 'z,-x,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z,x', 'y,-z,-x+1/2', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1,-z+1', 'z+1/2,x+1/2,y+1/2', '-z+1/2,-x+1,y+1/2', 'z+1/2,-x+1/2,-y+1', '-z+1/2,x+1,-y+1', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', '-y+1/2,z+1,-x+1', '-y+1,-z+1/2,x+1'], 'universal_h_m': 'I213'}, {'hall': '-P 2 2 3', 'hermann_mauguin': 'Pm-3', 'hermann_mauguin_u': 'Pm-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x'], 'number': 200, 'point_group': 'm-3', 'schoenflies': 'Th^1', 'short_h_m': 'Pm-3', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x'], 'universal_h_m': 'Pm-3'}, {'hall': ' P 2 2 3 -1n', 'hermann_mauguin': 'Pn-3', 'hermann_mauguin_u': 'Pn-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2'], 'number': 201, 'point_group': 'm-3', 'schoenflies': 'Th^2', 'short_h_m': 'Pn-3', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2'], 'universal_h_m': 'Pn-3:1'}, {'hall': '-P 2ab 2bc 3', 'hermann_mauguin': 'Pn-3', 'hermann_mauguin_u': 'Pn-3', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', 'z,x,y', '-z+1/2,-x+1/2,y', 'z,-x+1/2,-y+1/2', '-z+1/2,x,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z+1/2,x', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y,z-1/2', '-z,-x,-y', 'z-1/2,x-1/2,-y', '-z,x-1/2,y-1/2', 'z-1/2,-x,y-1/2', '-y,-z,-x', '-y,z-1/2,x-1/2', 'y-1/2,-z,x-1/2', 'y-1/2,z-1/2,-x'], 'number': 201, 'point_group': 'm-3', 'schoenflies': 'Th^2', 'short_h_m': 'Pn-3', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', 'z,x,y', '-z+1/2,-x+1/2,y', 'z,-x+1/2,-y+1/2', '-z+1/2,x,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z+1/2,x', '-x,-y,-z', 'x-1/2,y-1/2,-z', '-x,y-1/2,z-1/2', 'x-1/2,-y,z-1/2', '-z,-x,-y', 'z-1/2,x-1/2,-y', '-z,x-1/2,y-1/2', 'z-1/2,-x,y-1/2', '-y,-z,-x', '-y,z-1/2,x-1/2', 'y-1/2,-z,x-1/2', 'y-1/2,z-1/2,-x'], 'universal_h_m': 'Pn-3:2'}, {'hall': '-F 2 2 3', 'hermann_mauguin': 'Fm-3', 'hermann_mauguin_u': 'Fm-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x'], 'number': 202, 'point_group': 'm-3', 'schoenflies': 'Th^3', 'short_h_m': 'Fm-3', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'z,-x+1/2,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-y,-z+1/2,x+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', '-z,-x+1/2,-y+1/2', 'z,x+1/2,-y+1/2', '-z,x+1/2,y+1/2', 'z,-x+1/2,y+1/2', '-y,-z+1/2,-x+1/2', '-y,z+1/2,x+1/2', 'y,-z+1/2,x+1/2', 'y,z+1/2,-x+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', 'z+1/2,x,y+1/2', '-z+1/2,-x,y+1/2', 'z+1/2,-x,-y+1/2', '-z+1/2,x,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z,x+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2', '-z+1/2,-x,-y+1/2', 'z+1/2,x,-y+1/2', '-z+1/2,x,y+1/2', 'z+1/2,-x,y+1/2', '-y+1/2,-z,-x+1/2', '-y+1/2,z,x+1/2', 'y+1/2,-z,x+1/2', 'y+1/2,z,-x+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', 'z+1/2,x+1/2,y', '-z+1/2,-x+1/2,y', 'z+1/2,-x+1/2,-y', '-z+1/2,x+1/2,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', '-y+1/2,z+1/2,-x', '-y+1/2,-z+1/2,x', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', '-z+1/2,-x+1/2,-y', 'z+1/2,x+1/2,-y', '-z+1/2,x+1/2,y', 'z+1/2,-x+1/2,y', '-y+1/2,-z+1/2,-x', '-y+1/2,z+1/2,x', 'y+1/2,-z+1/2,x', 'y+1/2,z+1/2,-x'], 'universal_h_m': 'Fm-3'}, {'hall': ' F 2 2 3 -1d', 'hermann_mauguin': 'Fd-3', 'hermann_mauguin_u': 'Fd-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x+1/4,-y+1/4,-z+1/4', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', 'x+1/4,-y+1/4,z+1/4', '-z+1/4,-x+1/4,-y+1/4', 'z+1/4,x+1/4,-y+1/4', '-z+1/4,x+1/4,y+1/4', 'z+1/4,-x+1/4,y+1/4', '-y+1/4,-z+1/4,-x+1/4', '-y+1/4,z+1/4,x+1/4', 'y+1/4,-z+1/4,x+1/4', 'y+1/4,z+1/4,-x+1/4'], 'number': 203, 'point_group': 'm-3', 'schoenflies': 'Th^4', 'short_h_m': 'Fd-3', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x+1/4,-y+1/4,-z+1/4', 'x+1/4,y+1/4,-z+1/4', '-x+1/4,y+1/4,z+1/4', 'x+1/4,-y+1/4,z+1/4', '-z+1/4,-x+1/4,-y+1/4', 'z+1/4,x+1/4,-y+1/4', '-z+1/4,x+1/4,y+1/4', 'z+1/4,-x+1/4,y+1/4', '-y+1/4,-z+1/4,-x+1/4', '-y+1/4,z+1/4,x+1/4', 'y+1/4,-z+1/4,x+1/4', 'y+1/4,z+1/4,-x+1/4', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'z,-x+1/2,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-y,-z+1/2,x+1/2', '-x+1/4,-y+3/4,-z+3/4', 'x+1/4,y+3/4,-z+3/4', '-x+1/4,y+3/4,z+3/4', 'x+1/4,-y+3/4,z+3/4', '-z+1/4,-x+3/4,-y+3/4', 'z+1/4,x+3/4,-y+3/4', '-z+1/4,x+3/4,y+3/4', 'z+1/4,-x+3/4,y+3/4', '-y+1/4,-z+3/4,-x+3/4', '-y+1/4,z+3/4,x+3/4', 'y+1/4,-z+3/4,x+3/4', 'y+1/4,z+3/4,-x+3/4', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', 'z+1/2,x,y+1/2', '-z+1/2,-x,y+1/2', 'z+1/2,-x,-y+1/2', '-z+1/2,x,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z,x+1/2', '-x+3/4,-y+1/4,-z+3/4', 'x+3/4,y+1/4,-z+3/4', '-x+3/4,y+1/4,z+3/4', 'x+3/4,-y+1/4,z+3/4', '-z+3/4,-x+1/4,-y+3/4', 'z+3/4,x+1/4,-y+3/4', '-z+3/4,x+1/4,y+3/4', 'z+3/4,-x+1/4,y+3/4', '-y+3/4,-z+1/4,-x+3/4', '-y+3/4,z+1/4,x+3/4', 'y+3/4,-z+1/4,x+3/4', 'y+3/4,z+1/4,-x+3/4', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', 'z+1/2,x+1/2,y', '-z+1/2,-x+1/2,y', 'z+1/2,-x+1/2,-y', '-z+1/2,x+1/2,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', '-y+1/2,z+1/2,-x', '-y+1/2,-z+1/2,x', '-x+3/4,-y+3/4,-z+1/4', 'x+3/4,y+3/4,-z+1/4', '-x+3/4,y+3/4,z+1/4', 'x+3/4,-y+3/4,z+1/4', '-z+3/4,-x+3/4,-y+1/4', 'z+3/4,x+3/4,-y+1/4', '-z+3/4,x+3/4,y+1/4', 'z+3/4,-x+3/4,y+1/4', '-y+3/4,-z+3/4,-x+1/4', '-y+3/4,z+3/4,x+1/4', 'y+3/4,-z+3/4,x+1/4', 'y+3/4,z+3/4,-x+1/4'], 'universal_h_m': 'Fd-3:1'}, {'hall': '-F 2uv 2vw 3', 'hermann_mauguin': 'Fd-3', 'hermann_mauguin_u': 'Fd-3', 'ncsym': ['x,y,z', '-x+1/4,-y+1/4,z', 'x,-y+1/4,-z+1/4', '-x+1/4,y,-z+1/4', 'z,x,y', '-z+1/4,-x+1/4,y', 'z,-x+1/4,-y+1/4', '-z+1/4,x,-y+1/4', 'y,z,x', 'y,-z+1/4,-x+1/4', '-y+1/4,z,-x+1/4', '-y+1/4,-z+1/4,x', '-x,-y,-z', 'x-1/4,y-1/4,-z', '-x,y-1/4,z-1/4', 'x-1/4,-y,z-1/4', '-z,-x,-y', 'z-1/4,x-1/4,-y', '-z,x-1/4,y-1/4', 'z-1/4,-x,y-1/4', '-y,-z,-x', '-y,z-1/4,x-1/4', 'y-1/4,-z,x-1/4', 'y-1/4,z-1/4,-x'], 'number': 203, 'point_group': 'm-3', 'schoenflies': 'Th^4', 'short_h_m': 'Fd-3', 'symops': ['x,y,z', '-x+1/4,-y+1/4,z', 'x,-y+1/4,-z+1/4', '-x+1/4,y,-z+1/4', 'z,x,y', '-z+1/4,-x+1/4,y', 'z,-x+1/4,-y+1/4', '-z+1/4,x,-y+1/4', 'y,z,x', 'y,-z+1/4,-x+1/4', '-y+1/4,z,-x+1/4', '-y+1/4,-z+1/4,x', '-x,-y,-z', 'x-1/4,y-1/4,-z', '-x,y-1/4,z-1/4', 'x-1/4,-y,z-1/4', '-z,-x,-y', 'z-1/4,x-1/4,-y', '-z,x-1/4,y-1/4', 'z-1/4,-x,y-1/4', '-y,-z,-x', '-y,z-1/4,x-1/4', 'y-1/4,-z,x-1/4', 'y-1/4,z-1/4,-x', 'x,y+1/2,z+1/2', '-x+1/4,-y+3/4,z+1/2', 'x,-y+3/4,-z+3/4', '-x+1/4,y+1/2,-z+3/4', 'z,x+1/2,y+1/2', '-z+1/4,-x+3/4,y+1/2', 'z,-x+3/4,-y+3/4', '-z+1/4,x+1/2,-y+3/4', 'y,z+1/2,x+1/2', 'y,-z+3/4,-x+3/4', '-y+1/4,z+1/2,-x+3/4', '-y+1/4,-z+3/4,x+1/2', '-x,-y+1/2,-z+1/2', 'x-1/4,y+1/4,-z+1/2', '-x,y+1/4,z+1/4', 'x-1/4,-y+1/2,z+1/4', '-z,-x+1/2,-y+1/2', 'z-1/4,x+1/4,-y+1/2', '-z,x+1/4,y+1/4', 'z-1/4,-x+1/2,y+1/4', '-y,-z+1/2,-x+1/2', '-y,z+1/4,x+1/4', 'y-1/4,-z+1/2,x+1/4', 'y-1/4,z+1/4,-x+1/2', 'x+1/2,y,z+1/2', '-x+3/4,-y+1/4,z+1/2', 'x+1/2,-y+1/4,-z+3/4', '-x+3/4,y,-z+3/4', 'z+1/2,x,y+1/2', '-z+3/4,-x+1/4,y+1/2', 'z+1/2,-x+1/4,-y+3/4', '-z+3/4,x,-y+3/4', 'y+1/2,z,x+1/2', 'y+1/2,-z+1/4,-x+3/4', '-y+3/4,z,-x+3/4', '-y+3/4,-z+1/4,x+1/2', '-x+1/2,-y,-z+1/2', 'x+1/4,y-1/4,-z+1/2', '-x+1/2,y-1/4,z+1/4', 'x+1/4,-y,z+1/4', '-z+1/2,-x,-y+1/2', 'z+1/4,x-1/4,-y+1/2', '-z+1/2,x-1/4,y+1/4', 'z+1/4,-x,y+1/4', '-y+1/2,-z,-x+1/2', '-y+1/2,z-1/4,x+1/4', 'y+1/4,-z,x+1/4', 'y+1/4,z-1/4,-x+1/2', 'x+1/2,y+1/2,z', '-x+3/4,-y+3/4,z', 'x+1/2,-y+3/4,-z+1/4', '-x+3/4,y+1/2,-z+1/4', 'z+1/2,x+1/2,y', '-z+3/4,-x+3/4,y', 'z+1/2,-x+3/4,-y+1/4', '-z+3/4,x+1/2,-y+1/4', 'y+1/2,z+1/2,x', 'y+1/2,-z+3/4,-x+1/4', '-y+3/4,z+1/2,-x+1/4', '-y+3/4,-z+3/4,x', '-x+1/2,-y+1/2,-z', 'x+1/4,y+1/4,-z', '-x+1/2,y+1/4,z-1/4', 'x+1/4,-y+1/2,z-1/4', '-z+1/2,-x+1/2,-y', 'z+1/4,x+1/4,-y', '-z+1/2,x+1/4,y-1/4', 'z+1/4,-x+1/2,y-1/4', '-y+1/2,-z+1/2,-x', '-y+1/2,z+1/4,x-1/4', 'y+1/4,-z+1/2,x-1/4', 'y+1/4,z+1/4,-x'], 'universal_h_m': 'Fd-3:2'}, {'hall': '-I 2 2 3', 'hermann_mauguin': 'Im-3', 'hermann_mauguin_u': 'Im-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x'], 'number': 204, 'point_group': 'm-3', 'schoenflies': 'Th^5', 'short_h_m': 'Im-3', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x,-y,-z', 'x,y,-z', '-x,y,z', 'x,-y,z', '-z,-x,-y', 'z,x,-y', '-z,x,y', 'z,-x,y', '-y,-z,-x', '-y,z,x', 'y,-z,x', 'y,z,-x', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', 'z+1/2,x+1/2,y+1/2', '-z+1/2,-x+1/2,y+1/2', 'z+1/2,-x+1/2,-y+1/2', '-z+1/2,x+1/2,-y+1/2', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,-x+1/2', '-y+1/2,-z+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2'], 'universal_h_m': 'Im-3'}, {'hall': '-P 2ac 2ab 3', 'hermann_mauguin': 'Pa-3', 'hermann_mauguin_u': 'Pa-3', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', 'z,x,y', '-z+1/2,-x,y+1/2', 'z+1/2,-x+1/2,-y', '-z,x+1/2,-y+1/2', 'y,z,x', 'y+1/2,-z+1/2,-x', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y-1/2,z-1/2', '-z,-x,-y', 'z-1/2,x,-y-1/2', '-z-1/2,x-1/2,y', 'z,-x-1/2,y-1/2', '-y,-z,-x', '-y-1/2,z-1/2,x', 'y,-z-1/2,x-1/2', 'y-1/2,z,-x-1/2'], 'number': 205, 'point_group': 'm-3', 'schoenflies': 'Th^6', 'short_h_m': 'Pa-3', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z+1/2', 'z,x,y', '-z+1/2,-x,y+1/2', 'z+1/2,-x+1/2,-y', '-z,x+1/2,-y+1/2', 'y,z,x', 'y+1/2,-z+1/2,-x', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2', '-x,-y,-z', 'x-1/2,y,-z-1/2', '-x-1/2,y-1/2,z', 'x,-y-1/2,z-1/2', '-z,-x,-y', 'z-1/2,x,-y-1/2', '-z-1/2,x-1/2,y', 'z,-x-1/2,y-1/2', '-y,-z,-x', '-y-1/2,z-1/2,x', 'y,-z-1/2,x-1/2', 'y-1/2,z,-x-1/2'], 'universal_h_m': 'Pa-3'}, {'hall': '-I 2b 2c 3', 'hermann_mauguin': 'Ia-3', 'hermann_mauguin_u': 'Ia-3', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x,y', '-z,-x+1/2,y', 'z,-x,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z,x', 'y,-z,-x+1/2', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2', '-z,-x,-y', 'z,x-1/2,-y', '-z,x,y-1/2', 'z,-x-1/2,y-1/2', '-y,-z,-x', '-y,z,x-1/2', 'y,-z-1/2,x-1/2', 'y-1/2,z,-x-1/2'], 'number': 206, 'point_group': 'm-3', 'schoenflies': 'Th^7', 'short_h_m': 'Ia-3', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'z,x,y', '-z,-x+1/2,y', 'z,-x,-y+1/2', '-z,x+1/2,-y+1/2', 'y,z,x', 'y,-z,-x+1/2', '-y,z+1/2,-x+1/2', '-y+1/2,-z,x+1/2', '-x,-y,-z', 'x,y-1/2,-z', '-x,y,z-1/2', 'x,-y-1/2,z-1/2', '-z,-x,-y', 'z,x-1/2,-y', '-z,x,y-1/2', 'z,-x-1/2,y-1/2', '-y,-z,-x', '-y,z,x-1/2', 'y,-z-1/2,x-1/2', 'y-1/2,z,-x-1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'x+1/2,-y+1/2,-z+1', '-x+1/2,y+1,-z+1', 'z+1/2,x+1/2,y+1/2', '-z+1/2,-x+1,y+1/2', 'z+1/2,-x+1/2,-y+1', '-z+1/2,x+1,-y+1', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', '-y+1/2,z+1,-x+1', '-y+1,-z+1/2,x+1', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y,z', '-z+1/2,-x+1/2,-y+1/2', 'z+1/2,x,-y+1/2', '-z+1/2,x+1/2,y', 'z+1/2,-x,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x', 'y+1/2,-z,x', 'y,z+1/2,-x'], 'universal_h_m': 'Ia-3'}, {'hall': ' P 4 2 3', 'hermann_mauguin': 'P432', 'hermann_mauguin_u': 'P432', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x'], 'number': 207, 'point_group': '432', 'schoenflies': 'O^1', 'short_h_m': 'P432', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x'], 'universal_h_m': 'P432'}, {'hall': ' P 4n 2 3', 'hermann_mauguin': 'P4232', 'hermann_mauguin_u': 'P4_232', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2'], 'number': 208, 'point_group': '432', 'schoenflies': 'O^2', 'short_h_m': 'P4_232', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2'], 'universal_h_m': 'P4232'}, {'hall': ' F 4 2 3', 'hermann_mauguin': 'F432', 'hermann_mauguin_u': 'F432', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x'], 'number': 209, 'point_group': '432', 'schoenflies': 'O^3', 'short_h_m': 'F432', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-x,z+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'x,-z+1/2,y+1/2', 'z,-x+1/2,-y+1/2', 'x,z+1/2,-y+1/2', '-z,x+1/2,-y+1/2', '-x,-z+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', 'z,y+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-z,-y+1/2,-x+1/2', '-y,-z+1/2,x+1/2', 'z,-y+1/2,x+1/2', '-z,y+1/2,x+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x,-z+1/2', 'z+1/2,x,y+1/2', '-x+1/2,z,y+1/2', '-z+1/2,-x,y+1/2', 'x+1/2,-z,y+1/2', 'z+1/2,-x,-y+1/2', 'x+1/2,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', 'z+1/2,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y,-x+1/2', '-y+1/2,-z,x+1/2', 'z+1/2,-y,x+1/2', '-z+1/2,y,x+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z', 'z+1/2,x+1/2,y', '-x+1/2,z+1/2,y', '-z+1/2,-x+1/2,y', 'x+1/2,-z+1/2,y', 'z+1/2,-x+1/2,-y', 'x+1/2,z+1/2,-y', '-z+1/2,x+1/2,-y', '-x+1/2,-z+1/2,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', 'z+1/2,y+1/2,-x', '-y+1/2,z+1/2,-x', '-z+1/2,-y+1/2,-x', '-y+1/2,-z+1/2,x', 'z+1/2,-y+1/2,x', '-z+1/2,y+1/2,x'], 'universal_h_m': 'F432'}, {'hall': ' F 4d 2 3', 'hermann_mauguin': 'F4132', 'hermann_mauguin_u': 'F4_132', 'ncsym': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4'], 'number': 210, 'point_group': '432', 'schoenflies': 'O^4', 'short_h_m': 'F4_132', 'symops': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4', 'x,y+1/2,z+1/2', '-y+1/4,x+3/4,z+3/4', '-x,-y+1,z+1', 'y+3/4,-x+3/4,z+5/4', 'x,-y+1/2,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x,y+1,-z+1', '-y+3/4,-x+3/4,-z+5/4', 'z,x+1/2,y+1/2', '-x+1/4,z+3/4,y+3/4', '-z,-x+1,y+1', 'x+3/4,-z+3/4,y+5/4', 'z,-x+1/2,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z,x+1,-y+1', '-x+3/4,-z+3/4,-y+5/4', 'y,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', 'z+1/4,y+5/4,-x+5/4', '-y+1/2,z+1,-x+1/2', '-z+1/4,-y+3/4,-x+3/4', '-y,-z+1/2,x+1/2', 'z+1/4,-y+5/4,x+5/4', '-z+3/4,y+5/4,x+3/4', 'x+1/2,y,z+1/2', '-y+3/4,x+1/4,z+3/4', '-x+1/2,-y+1/2,z+1', 'y+5/4,-x+1/4,z+5/4', 'x+1/2,-y,-z+1/2', 'y+3/4,x+1/4,-z+3/4', '-x+1/2,y+1/2,-z+1', '-y+5/4,-x+1/4,-z+5/4', 'z+1/2,x,y+1/2', '-x+3/4,z+1/4,y+3/4', '-z+1/2,-x+1/2,y+1', 'x+5/4,-z+1/4,y+5/4', 'z+1/2,-x,-y+1/2', 'x+3/4,z+1/4,-y+3/4', '-z+1/2,x+1/2,-y+1', '-x+5/4,-z+1/4,-y+5/4', 'y+1/2,z,x+1/2', 'y+1,-z,-x+1', 'z+3/4,y+3/4,-x+5/4', '-y+1,z+1/2,-x+1/2', '-z+3/4,-y+1/4,-x+3/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+5/4', '-z+5/4,y+3/4,x+3/4', 'x+1/2,y+1/2,z', '-y+3/4,x+3/4,z+1/4', '-x+1/2,-y+1,z+1/2', 'y+5/4,-x+3/4,z+3/4', 'x+1/2,-y+1/2,-z', 'y+3/4,x+3/4,-z+1/4', '-x+1/2,y+1,-z+1/2', '-y+5/4,-x+3/4,-z+3/4', 'z+1/2,x+1/2,y', '-x+3/4,z+3/4,y+1/4', '-z+1/2,-x+1,y+1/2', 'x+5/4,-z+3/4,y+3/4', 'z+1/2,-x+1/2,-y', 'x+3/4,z+3/4,-y+1/4', '-z+1/2,x+1,-y+1/2', '-x+5/4,-z+3/4,-y+3/4', 'y+1/2,z+1/2,x', 'y+1,-z+1/2,-x+1/2', 'z+3/4,y+5/4,-x+3/4', '-y+1,z+1,-x', '-z+3/4,-y+3/4,-x+1/4', '-y+1/2,-z+1/2,x', 'z+3/4,-y+5/4,x+3/4', '-z+5/4,y+5/4,x+1/4'], 'universal_h_m': 'F4132'}, {'hall': ' I 4 2 3', 'hermann_mauguin': 'I432', 'hermann_mauguin_u': 'I432', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x'], 'number': 211, 'point_group': '432', 'schoenflies': 'O^5', 'short_h_m': 'I432', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z+1/2,x+1/2,y+1/2', '-x+1/2,z+1/2,y+1/2', '-z+1/2,-x+1/2,y+1/2', 'x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,-y+1/2', 'x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1/2', 'z+1/2,y+1/2,-x+1/2', '-y+1/2,z+1/2,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x+1/2', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2'], 'universal_h_m': 'I432'}, {'hall': ' P 4acd 2ab 3', 'hermann_mauguin': 'P4332', 'hermann_mauguin_u': 'P4_332', 'ncsym': ['x,y,z', '-y+3/4,x+1/4,z+3/4', '-x+1/2,-y,z+1/2', 'y+3/4,-x+3/4,z+1/4', 'x+1/2,-y+1/2,-z', 'y+1/4,x+3/4,-z+3/4', '-x,y+1/2,-z+1/2', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+3/4,z+1/4,y+3/4', '-z+1/2,-x,y+1/2', 'x+3/4,-z+3/4,y+1/4', 'z+1/2,-x+1/2,-y', 'x+1/4,z+3/4,-y+3/4', '-z,x+1/2,-y+1/2', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+1/4,y+3/4,-x+3/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4'], 'number': 212, 'point_group': '432', 'schoenflies': 'O^6', 'short_h_m': 'P4_332', 'symops': ['x,y,z', '-y+3/4,x+1/4,z+3/4', '-x+1/2,-y,z+1/2', 'y+3/4,-x+3/4,z+1/4', 'x+1/2,-y+1/2,-z', 'y+1/4,x+3/4,-z+3/4', '-x,y+1/2,-z+1/2', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+3/4,z+1/4,y+3/4', '-z+1/2,-x,y+1/2', 'x+3/4,-z+3/4,y+1/4', 'z+1/2,-x+1/2,-y', 'x+1/4,z+3/4,-y+3/4', '-z,x+1/2,-y+1/2', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+1/4,y+3/4,-x+3/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4'], 'universal_h_m': 'P4332'}, {'hall': ' P 4bd 2ab 3', 'hermann_mauguin': 'P4132', 'hermann_mauguin_u': 'P4_132', 'ncsym': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x+1/2,-y+1/2,-z', 'y+3/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+3/4,-z+3/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z+1/2,-x+1/2,-y', 'x+3/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+3/4,-y+3/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+3/4,-y+3/4,-x+3/4', '-y+1/2,-z,x+1/2', 'z+1/4,-y+1/4,x+3/4', '-z+1/4,y+3/4,x+1/4'], 'number': 213, 'point_group': '432', 'schoenflies': 'O^7', 'short_h_m': 'P4_132', 'symops': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x+1/2,-y+1/2,-z', 'y+3/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+3/4,-z+3/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z+1/2,-x+1/2,-y', 'x+3/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+3/4,-y+3/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+3/4,-y+3/4,-x+3/4', '-y+1/2,-z,x+1/2', 'z+1/4,-y+1/4,x+3/4', '-z+1/4,y+3/4,x+1/4'], 'universal_h_m': 'P4132'}, {'hall': ' I 4bd 2c 3', 'hermann_mauguin': 'I4132', 'hermann_mauguin_u': 'I4_132', 'ncsym': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z,-x,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z+1/2,x,-y', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4'], 'number': 214, 'point_group': '432', 'schoenflies': 'O^8', 'short_h_m': 'I4_132', 'symops': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z,-x,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z+1/2,x,-y', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4', 'x+1/2,y+1/2,z+1/2', '-y+3/4,x+5/4,z+3/4', '-x+1,-y+1/2,z+1', 'y+3/4,-x+3/4,z+5/4', 'x+1/2,-y+1/2,-z+1', 'y+3/4,x+5/4,-z+5/4', '-x+1,y+1/2,-z+1/2', '-y+3/4,-x+3/4,-z+3/4', 'z+1/2,x+1/2,y+1/2', '-x+3/4,z+5/4,y+3/4', '-z+1,-x+1/2,y+1', 'x+3/4,-z+3/4,y+5/4', 'z+1/2,-x+1/2,-y+1', 'x+3/4,z+5/4,-y+5/4', '-z+1,x+1/2,-y+1/2', '-x+3/4,-z+3/4,-y+3/4', 'y+1/2,z+1/2,x+1/2', 'y+1,-z+1,-x+1/2', 'z+5/4,y+3/4,-x+3/4', '-y+1/2,z+1,-x+1', '-z+3/4,-y+3/4,-x+3/4', '-y+1,-z+1/2,x+1', 'z+5/4,-y+5/4,x+3/4', '-z+5/4,y+3/4,x+5/4'], 'universal_h_m': 'I4132'}, {'hall': ' P -4 2 3', 'hermann_mauguin': 'P-43m', 'hermann_mauguin_u': 'P-43m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x'], 'number': 215, 'point_group': '-43m', 'schoenflies': 'Td^1', 'short_h_m': 'P-43m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x'], 'universal_h_m': 'P-43m'}, {'hall': ' F -4 2 3', 'hermann_mauguin': 'F-43m', 'hermann_mauguin_u': 'F-43m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x'], 'number': 216, 'point_group': '-43m', 'schoenflies': 'Td^2', 'short_h_m': 'F-43m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x', 'x,y+1/2,z+1/2', 'y,-x+1/2,-z+1/2', '-x,-y+1/2,z+1/2', '-y,x+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', '-y,-x+1/2,z+1/2', '-x,y+1/2,-z+1/2', 'y,x+1/2,z+1/2', 'z,x+1/2,y+1/2', 'x,-z+1/2,-y+1/2', '-z,-x+1/2,y+1/2', '-x,z+1/2,-y+1/2', 'z,-x+1/2,-y+1/2', '-x,-z+1/2,y+1/2', '-z,x+1/2,-y+1/2', 'x,z+1/2,y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', '-z,-y+1/2,x+1/2', '-y,z+1/2,-x+1/2', 'z,y+1/2,x+1/2', '-y,-z+1/2,x+1/2', '-z,y+1/2,-x+1/2', 'z,-y+1/2,-x+1/2', 'x+1/2,y,z+1/2', 'y+1/2,-x,-z+1/2', '-x+1/2,-y,z+1/2', '-y+1/2,x,-z+1/2', 'x+1/2,-y,-z+1/2', '-y+1/2,-x,z+1/2', '-x+1/2,y,-z+1/2', 'y+1/2,x,z+1/2', 'z+1/2,x,y+1/2', 'x+1/2,-z,-y+1/2', '-z+1/2,-x,y+1/2', '-x+1/2,z,-y+1/2', 'z+1/2,-x,-y+1/2', '-x+1/2,-z,y+1/2', '-z+1/2,x,-y+1/2', 'x+1/2,z,y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', '-z+1/2,-y,x+1/2', '-y+1/2,z,-x+1/2', 'z+1/2,y,x+1/2', '-y+1/2,-z,x+1/2', '-z+1/2,y,-x+1/2', 'z+1/2,-y,-x+1/2', 'x+1/2,y+1/2,z', 'y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,z', '-y+1/2,x+1/2,-z', 'x+1/2,-y+1/2,-z', '-y+1/2,-x+1/2,z', '-x+1/2,y+1/2,-z', 'y+1/2,x+1/2,z', 'z+1/2,x+1/2,y', 'x+1/2,-z+1/2,-y', '-z+1/2,-x+1/2,y', '-x+1/2,z+1/2,-y', 'z+1/2,-x+1/2,-y', '-x+1/2,-z+1/2,y', '-z+1/2,x+1/2,-y', 'x+1/2,z+1/2,y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', '-z+1/2,-y+1/2,x', '-y+1/2,z+1/2,-x', 'z+1/2,y+1/2,x', '-y+1/2,-z+1/2,x', '-z+1/2,y+1/2,-x', 'z+1/2,-y+1/2,-x'], 'universal_h_m': 'F-43m'}, {'hall': ' I -4 2 3', 'hermann_mauguin': 'I-43m', 'hermann_mauguin_u': 'I-43m', 'ncsym': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x'], 'number': 217, 'point_group': '-43m', 'schoenflies': 'Td^3', 'short_h_m': 'I-43m', 'symops': ['x,y,z', 'y,-x,-z', '-x,-y,z', '-y,x,-z', 'x,-y,-z', '-y,-x,z', '-x,y,-z', 'y,x,z', 'z,x,y', 'x,-z,-y', '-z,-x,y', '-x,z,-y', 'z,-x,-y', '-x,-z,y', '-z,x,-y', 'x,z,y', 'y,z,x', 'y,-z,-x', '-z,-y,x', '-y,z,-x', 'z,y,x', '-y,-z,x', '-z,y,-x', 'z,-y,-x', 'x+1/2,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', 'z+1/2,x+1/2,y+1/2', 'x+1/2,-z+1/2,-y+1/2', '-z+1/2,-x+1/2,y+1/2', '-x+1/2,z+1/2,-y+1/2', 'z+1/2,-x+1/2,-y+1/2', '-x+1/2,-z+1/2,y+1/2', '-z+1/2,x+1/2,-y+1/2', 'x+1/2,z+1/2,y+1/2', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1/2', '-z+1/2,-y+1/2,x+1/2', '-y+1/2,z+1/2,-x+1/2', 'z+1/2,y+1/2,x+1/2', '-y+1/2,-z+1/2,x+1/2', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'universal_h_m': 'I-43m'}, {'hall': ' P -4n 2 3', 'hermann_mauguin': 'P-43n', 'hermann_mauguin_u': 'P-43n', 'ncsym': ['x,y,z', 'y+1/2,-x+1/2,-z+1/2', '-x,-y,z', '-y+1/2,x+1/2,-z+1/2', 'x,-y,-z', '-y+1/2,-x+1/2,z+1/2', '-x,y,-z', 'y+1/2,x+1/2,z+1/2', 'z,x,y', 'x+1/2,-z+1/2,-y+1/2', '-z,-x,y', '-x+1/2,z+1/2,-y+1/2', 'z,-x,-y', '-x+1/2,-z+1/2,y+1/2', '-z,x,-y', 'x+1/2,z+1/2,y+1/2', 'y,z,x', 'y,-z,-x', '-z+1/2,-y+1/2,x+1/2', '-y,z,-x', 'z+1/2,y+1/2,x+1/2', '-y,-z,x', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'number': 218, 'point_group': '-43m', 'schoenflies': 'Td^4', 'short_h_m': 'P-43n', 'symops': ['x,y,z', 'y+1/2,-x+1/2,-z+1/2', '-x,-y,z', '-y+1/2,x+1/2,-z+1/2', 'x,-y,-z', '-y+1/2,-x+1/2,z+1/2', '-x,y,-z', 'y+1/2,x+1/2,z+1/2', 'z,x,y', 'x+1/2,-z+1/2,-y+1/2', '-z,-x,y', '-x+1/2,z+1/2,-y+1/2', 'z,-x,-y', '-x+1/2,-z+1/2,y+1/2', '-z,x,-y', 'x+1/2,z+1/2,y+1/2', 'y,z,x', 'y,-z,-x', '-z+1/2,-y+1/2,x+1/2', '-y,z,-x', 'z+1/2,y+1/2,x+1/2', '-y,-z,x', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'universal_h_m': 'P-43n'}, {'hall': ' F -4a 2 3', 'hermann_mauguin': 'F-43c', 'hermann_mauguin_u': 'F-43c', 'ncsym': ['x,y,z', 'y+1/2,-x,-z', '-x+1/2,-y+1/2,z', '-y,x+1/2,-z', 'x,-y,-z', '-y+1/2,-x,z', '-x+1/2,y+1/2,-z', 'y,x+1/2,z', 'z,x,y', 'x+1/2,-z,-y', '-z+1/2,-x+1/2,y', '-x,z+1/2,-y', 'z,-x,-y', '-x+1/2,-z,y', '-z+1/2,x+1/2,-y', 'x,z+1/2,y', 'y,z,x', 'y,-z+1/2,-x+1/2', '-z,-y,x+1/2', '-y+1/2,z,-x+1/2', 'z+1/2,y,x', '-y,-z,x', '-z,y,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'number': 219, 'point_group': '-43m', 'schoenflies': 'Td^5', 'short_h_m': 'F-43c', 'symops': ['x,y,z', 'y+1/2,-x,-z', '-x+1/2,-y+1/2,z', '-y,x+1/2,-z', 'x,-y,-z', '-y+1/2,-x,z', '-x+1/2,y+1/2,-z', 'y,x+1/2,z', 'z,x,y', 'x+1/2,-z,-y', '-z+1/2,-x+1/2,y', '-x,z+1/2,-y', 'z,-x,-y', '-x+1/2,-z,y', '-z+1/2,x+1/2,-y', 'x,z+1/2,y', 'y,z,x', 'y,-z+1/2,-x+1/2', '-z,-y,x+1/2', '-y+1/2,z,-x+1/2', 'z+1/2,y,x', '-y,-z,x', '-z,y,-x+1/2', 'z+1/2,-y+1/2,-x+1/2', 'x,y+1/2,z+1/2', 'y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1,z+1/2', '-y,x+1,-z+1/2', 'x,-y+1/2,-z+1/2', '-y+1/2,-x+1/2,z+1/2', '-x+1/2,y+1,-z+1/2', 'y,x+1,z+1/2', 'z,x+1/2,y+1/2', 'x+1/2,-z+1/2,-y+1/2', '-z+1/2,-x+1,y+1/2', '-x,z+1,-y+1/2', 'z,-x+1/2,-y+1/2', '-x+1/2,-z+1/2,y+1/2', '-z+1/2,x+1,-y+1/2', 'x,z+1,y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1,-x+1', '-z,-y+1/2,x+1', '-y+1/2,z+1/2,-x+1', 'z+1/2,y+1/2,x+1/2', '-y,-z+1/2,x+1/2', '-z,y+1/2,-x+1', 'z+1/2,-y+1,-x+1', 'x+1/2,y,z+1/2', 'y+1,-x,-z+1/2', '-x+1,-y+1/2,z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x+1/2,-y,-z+1/2', '-y+1,-x,z+1/2', '-x+1,y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', 'z+1/2,x,y+1/2', 'x+1,-z,-y+1/2', '-z+1,-x+1/2,y+1/2', '-x+1/2,z+1/2,-y+1/2', 'z+1/2,-x,-y+1/2', '-x+1,-z,y+1/2', '-z+1,x+1/2,-y+1/2', 'x+1/2,z+1/2,y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z+1/2,-x+1', '-z+1/2,-y,x+1', '-y+1,z,-x+1', 'z+1,y,x+1/2', '-y+1/2,-z,x+1/2', '-z+1/2,y,-x+1', 'z+1,-y+1/2,-x+1', 'x+1/2,y+1/2,z', 'y+1,-x+1/2,-z', '-x+1,-y+1,z', '-y+1/2,x+1,-z', 'x+1/2,-y+1/2,-z', '-y+1,-x+1/2,z', '-x+1,y+1,-z', 'y+1/2,x+1,z', 'z+1/2,x+1/2,y', 'x+1,-z+1/2,-y', '-z+1,-x+1,y', '-x+1/2,z+1,-y', 'z+1/2,-x+1/2,-y', '-x+1,-z+1/2,y', '-z+1,x+1,-y', 'x+1/2,z+1,y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1,-x+1/2', '-z+1/2,-y+1/2,x+1/2', '-y+1,z+1/2,-x+1/2', 'z+1,y+1/2,x', '-y+1/2,-z+1/2,x', '-z+1/2,y+1/2,-x+1/2', 'z+1,-y+1,-x+1/2'], 'universal_h_m': 'F-43c'}, {'hall': ' I -4bd 2c 3', 'hermann_mauguin': 'I-43d', 'hermann_mauguin_u': 'I-43d', 'ncsym': ['x,y,z', 'y+1/4,-x+3/4,-z+1/4', '-x,-y+1/2,z', '-y+3/4,x+3/4,-z+1/4', 'x,-y,-z+1/2', '-y+1/4,-x+3/4,z+3/4', '-x,y+1/2,-z+1/2', 'y+3/4,x+3/4,z+3/4', 'z,x,y', 'x+1/4,-z+3/4,-y+1/4', '-z,-x+1/2,y', '-x+3/4,z+3/4,-y+1/4', 'z,-x,-y+1/2', '-x+1/4,-z+3/4,y+3/4', '-z,x+1/2,-y+1/2', 'x+3/4,z+3/4,y+3/4', 'y,z,x', 'y,-z,-x+1/2', '-z+1/4,-y+3/4,x+3/4', '-y,z+1/2,-x+1/2', 'z+1/4,y+1/4,x+1/4', '-y+1/2,-z,x+1/2', '-z+1/4,y+1/4,-x+3/4', 'z+3/4,-y+1/4,-x+3/4'], 'number': 220, 'point_group': '-43m', 'schoenflies': 'Td^6', 'short_h_m': 'I-43d', 'symops': ['x,y,z', 'y+1/4,-x+3/4,-z+1/4', '-x,-y+1/2,z', '-y+3/4,x+3/4,-z+1/4', 'x,-y,-z+1/2', '-y+1/4,-x+3/4,z+3/4', '-x,y+1/2,-z+1/2', 'y+3/4,x+3/4,z+3/4', 'z,x,y', 'x+1/4,-z+3/4,-y+1/4', '-z,-x+1/2,y', '-x+3/4,z+3/4,-y+1/4', 'z,-x,-y+1/2', '-x+1/4,-z+3/4,y+3/4', '-z,x+1/2,-y+1/2', 'x+3/4,z+3/4,y+3/4', 'y,z,x', 'y,-z,-x+1/2', '-z+1/4,-y+3/4,x+3/4', '-y,z+1/2,-x+1/2', 'z+1/4,y+1/4,x+1/4', '-y+1/2,-z,x+1/2', '-z+1/4,y+1/4,-x+3/4', 'z+3/4,-y+1/4,-x+3/4', 'x+1/2,y+1/2,z+1/2', 'y+3/4,-x+5/4,-z+3/4', '-x+1/2,-y+1,z+1/2', '-y+5/4,x+5/4,-z+3/4', 'x+1/2,-y+1/2,-z+1', '-y+3/4,-x+5/4,z+5/4', '-x+1/2,y+1,-z+1', 'y+5/4,x+5/4,z+5/4', 'z+1/2,x+1/2,y+1/2', 'x+3/4,-z+5/4,-y+3/4', '-z+1/2,-x+1,y+1/2', '-x+5/4,z+5/4,-y+3/4', 'z+1/2,-x+1/2,-y+1', '-x+3/4,-z+5/4,y+5/4', '-z+1/2,x+1,-y+1', 'x+5/4,z+5/4,y+5/4', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', '-z+3/4,-y+5/4,x+5/4', '-y+1/2,z+1,-x+1', 'z+3/4,y+3/4,x+3/4', '-y+1,-z+1/2,x+1', '-z+3/4,y+3/4,-x+5/4', 'z+5/4,-y+3/4,-x+5/4'], 'universal_h_m': 'I-43d'}, {'hall': '-P 4 2 3', 'hermann_mauguin': 'Pm-3m', 'hermann_mauguin_u': 'Pm-3m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x'], 'number': 221, 'point_group': 'm-3m', 'schoenflies': 'Oh^1', 'short_h_m': 'Pm-3m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x'], 'universal_h_m': 'Pm-3m'}, {'hall': ' P 4 2 3 -1n', 'hermann_mauguin': 'Pn-3n', 'hermann_mauguin_u': 'Pn-3n', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'x+1/2,-z+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', '-x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'number': 222, 'point_group': 'm-3m', 'schoenflies': 'Oh^2', 'short_h_m': 'Pn-3n', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'x+1/2,-z+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', '-x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'universal_h_m': 'Pn-3n:1'}, {'hall': '-P 4a 2bc 3', 'hermann_mauguin': 'Pn-3n', 'hermann_mauguin_u': 'Pn-3n', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x+1/2,-y+1/2', 'x,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x', '-z+1/2,y,x', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z-1/2', '-y,-x,z-1/2', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z-1/2', '-z,-x,-y', 'x-1/2,-z,-y', 'z-1/2,x-1/2,-y', '-x,z-1/2,-y', '-z,x-1/2,y-1/2', '-x,-z,y-1/2', 'z-1/2,-x,y-1/2', 'x-1/2,z-1/2,y-1/2', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z,-y,x-1/2', 'y-1/2,-z,x-1/2', 'z-1/2,y-1/2,x-1/2', 'y-1/2,z-1/2,-x', '-z,y-1/2,-x', 'z-1/2,-y,-x'], 'number': 222, 'point_group': 'm-3m', 'schoenflies': 'Oh^2', 'short_h_m': 'Pn-3n', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x+1/2,-y+1/2', 'x,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x', '-z+1/2,y,x', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y-1/2,z-1/2', '-y,-x,z-1/2', 'x-1/2,-y,z-1/2', 'y-1/2,x-1/2,z-1/2', '-z,-x,-y', 'x-1/2,-z,-y', 'z-1/2,x-1/2,-y', '-x,z-1/2,-y', '-z,x-1/2,y-1/2', '-x,-z,y-1/2', 'z-1/2,-x,y-1/2', 'x-1/2,z-1/2,y-1/2', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z,-y,x-1/2', 'y-1/2,-z,x-1/2', 'z-1/2,y-1/2,x-1/2', 'y-1/2,z-1/2,-x', '-z,y-1/2,-x', 'z-1/2,-y,-x'], 'universal_h_m': 'Pn-3n:2'}, {'hall': '-P 4n 2 3', 'hermann_mauguin': 'Pm-3n', 'hermann_mauguin_u': 'Pm-3n', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x,-y,-z', 'y-1/2,-x-1/2,-z-1/2', 'x,y,-z', '-y-1/2,x-1/2,-z-1/2', '-x,y,z', '-y-1/2,-x-1/2,z-1/2', 'x,-y,z', 'y-1/2,x-1/2,z-1/2', '-z,-x,-y', 'x-1/2,-z-1/2,-y-1/2', 'z,x,-y', '-x-1/2,z-1/2,-y-1/2', '-z,x,y', '-x-1/2,-z-1/2,y-1/2', 'z,-x,y', 'x-1/2,z-1/2,y-1/2', '-y,-z,-x', '-y,z,x', '-z-1/2,-y-1/2,x-1/2', 'y,-z,x', 'z-1/2,y-1/2,x-1/2', 'y,z,-x', '-z-1/2,y-1/2,-x-1/2', 'z-1/2,-y-1/2,-x-1/2'], 'number': 223, 'point_group': 'm-3m', 'schoenflies': 'Oh^3', 'short_h_m': 'Pm-3n', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x,-y,-z', 'y-1/2,-x-1/2,-z-1/2', 'x,y,-z', '-y-1/2,x-1/2,-z-1/2', '-x,y,z', '-y-1/2,-x-1/2,z-1/2', 'x,-y,z', 'y-1/2,x-1/2,z-1/2', '-z,-x,-y', 'x-1/2,-z-1/2,-y-1/2', 'z,x,-y', '-x-1/2,z-1/2,-y-1/2', '-z,x,y', '-x-1/2,-z-1/2,y-1/2', 'z,-x,y', 'x-1/2,z-1/2,y-1/2', '-y,-z,-x', '-y,z,x', '-z-1/2,-y-1/2,x-1/2', 'y,-z,x', 'z-1/2,y-1/2,x-1/2', 'y,z,-x', '-z-1/2,y-1/2,-x-1/2', 'z-1/2,-y-1/2,-x-1/2'], 'universal_h_m': 'Pm-3n'}, {'hall': ' P 4n 2 3 -1n', 'hermann_mauguin': 'Pn-3m', 'hermann_mauguin_u': 'Pn-3m', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z', '-z+1/2,-x+1/2,-y+1/2', 'x,-z,-y', 'z+1/2,x+1/2,-y+1/2', '-x,z,-y', '-z+1/2,x+1/2,y+1/2', '-x,-z,y', 'z+1/2,-x+1/2,y+1/2', 'x,z,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z,-y,x', 'y+1/2,-z+1/2,x+1/2', 'z,y,x', 'y+1/2,z+1/2,-x+1/2', '-z,y,-x', 'z,-y,-x'], 'number': 224, 'point_group': 'm-3m', 'schoenflies': 'Oh^4', 'short_h_m': 'Pn-3m', 'symops': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z', '-z+1/2,-x+1/2,-y+1/2', 'x,-z,-y', 'z+1/2,x+1/2,-y+1/2', '-x,z,-y', '-z+1/2,x+1/2,y+1/2', '-x,-z,y', 'z+1/2,-x+1/2,y+1/2', 'x,z,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z,-y,x', 'y+1/2,-z+1/2,x+1/2', 'z,y,x', 'y+1/2,z+1/2,-x+1/2', '-z,y,-x', 'z,-y,-x'], 'universal_h_m': 'Pn-3m:1'}, {'hall': '-P 4bc 2bc 3', 'hermann_mauguin': 'Pn-3m', 'hermann_mauguin_u': 'Pn-3m', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z+1/2', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z', '-x+1/2,y,-z+1/2', '-y,-x,-z', 'z,x,y', '-x,z+1/2,y+1/2', '-z+1/2,-x+1/2,y', 'x+1/2,-z,y+1/2', 'z,-x+1/2,-y+1/2', 'x+1/2,z+1/2,-y', '-z+1/2,x,-y+1/2', '-x,-z,-y', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z+1/2,y+1/2,-x', '-y+1/2,z,-x+1/2', '-z,-y,-x', '-y+1/2,-z+1/2,x', 'z+1/2,-y,x+1/2', '-z,y+1/2,x+1/2', '-x,-y,-z', 'y,-x-1/2,-z-1/2', 'x-1/2,y-1/2,-z', '-y-1/2,x,-z-1/2', '-x,y-1/2,z-1/2', '-y-1/2,-x-1/2,z', 'x-1/2,-y,z-1/2', 'y,x,z', '-z,-x,-y', 'x,-z-1/2,-y-1/2', 'z-1/2,x-1/2,-y', '-x-1/2,z,-y-1/2', '-z,x-1/2,y-1/2', '-x-1/2,-z-1/2,y', 'z-1/2,-x,y-1/2', 'x,z,y', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z-1/2,-y-1/2,x', 'y-1/2,-z,x-1/2', 'z,y,x', 'y-1/2,z-1/2,-x', '-z-1/2,y,-x-1/2', 'z,-y-1/2,-x-1/2'], 'number': 224, 'point_group': 'm-3m', 'schoenflies': 'Oh^4', 'short_h_m': 'Pn-3m', 'symops': ['x,y,z', '-y,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z+1/2', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z', '-x+1/2,y,-z+1/2', '-y,-x,-z', 'z,x,y', '-x,z+1/2,y+1/2', '-z+1/2,-x+1/2,y', 'x+1/2,-z,y+1/2', 'z,-x+1/2,-y+1/2', 'x+1/2,z+1/2,-y', '-z+1/2,x,-y+1/2', '-x,-z,-y', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z+1/2,y+1/2,-x', '-y+1/2,z,-x+1/2', '-z,-y,-x', '-y+1/2,-z+1/2,x', 'z+1/2,-y,x+1/2', '-z,y+1/2,x+1/2', '-x,-y,-z', 'y,-x-1/2,-z-1/2', 'x-1/2,y-1/2,-z', '-y-1/2,x,-z-1/2', '-x,y-1/2,z-1/2', '-y-1/2,-x-1/2,z', 'x-1/2,-y,z-1/2', 'y,x,z', '-z,-x,-y', 'x,-z-1/2,-y-1/2', 'z-1/2,x-1/2,-y', '-x-1/2,z,-y-1/2', '-z,x-1/2,y-1/2', '-x-1/2,-z-1/2,y', 'z-1/2,-x,y-1/2', 'x,z,y', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z-1/2,-y-1/2,x', 'y-1/2,-z,x-1/2', 'z,y,x', 'y-1/2,z-1/2,-x', '-z-1/2,y,-x-1/2', 'z,-y-1/2,-x-1/2'], 'universal_h_m': 'Pn-3m:2'}, {'hall': '-F 4 2 3', 'hermann_mauguin': 'Fm-3m', 'hermann_mauguin_u': 'Fm-3m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x'], 'number': 225, 'point_group': 'm-3m', 'schoenflies': 'Oh^5', 'short_h_m': 'Fm-3m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-x,z+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'x,-z+1/2,y+1/2', 'z,-x+1/2,-y+1/2', 'x,z+1/2,-y+1/2', '-z,x+1/2,-y+1/2', '-x,-z+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', 'z,y+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-z,-y+1/2,-x+1/2', '-y,-z+1/2,x+1/2', 'z,-y+1/2,x+1/2', '-z,y+1/2,x+1/2', '-x,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'y,x+1/2,z+1/2', '-z,-x+1/2,-y+1/2', 'x,-z+1/2,-y+1/2', 'z,x+1/2,-y+1/2', '-x,z+1/2,-y+1/2', '-z,x+1/2,y+1/2', '-x,-z+1/2,y+1/2', 'z,-x+1/2,y+1/2', 'x,z+1/2,y+1/2', '-y,-z+1/2,-x+1/2', '-y,z+1/2,x+1/2', '-z,-y+1/2,x+1/2', 'y,-z+1/2,x+1/2', 'z,y+1/2,x+1/2', 'y,z+1/2,-x+1/2', '-z,y+1/2,-x+1/2', 'z,-y+1/2,-x+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x,-z+1/2', 'z+1/2,x,y+1/2', '-x+1/2,z,y+1/2', '-z+1/2,-x,y+1/2', 'x+1/2,-z,y+1/2', 'z+1/2,-x,-y+1/2', 'x+1/2,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', 'z+1/2,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y,-x+1/2', '-y+1/2,-z,x+1/2', 'z+1/2,-y,x+1/2', '-z+1/2,y,x+1/2', '-x+1/2,-y,-z+1/2', 'y+1/2,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x,-z+1/2', '-x+1/2,y,z+1/2', '-y+1/2,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x,z+1/2', '-z+1/2,-x,-y+1/2', 'x+1/2,-z,-y+1/2', 'z+1/2,x,-y+1/2', '-x+1/2,z,-y+1/2', '-z+1/2,x,y+1/2', '-x+1/2,-z,y+1/2', 'z+1/2,-x,y+1/2', 'x+1/2,z,y+1/2', '-y+1/2,-z,-x+1/2', '-y+1/2,z,x+1/2', '-z+1/2,-y,x+1/2', 'y+1/2,-z,x+1/2', 'z+1/2,y,x+1/2', 'y+1/2,z,-x+1/2', '-z+1/2,y,-x+1/2', 'z+1/2,-y,-x+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-y+1/2,-x+1/2,-z', 'z+1/2,x+1/2,y', '-x+1/2,z+1/2,y', '-z+1/2,-x+1/2,y', 'x+1/2,-z+1/2,y', 'z+1/2,-x+1/2,-y', 'x+1/2,z+1/2,-y', '-z+1/2,x+1/2,-y', '-x+1/2,-z+1/2,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', 'z+1/2,y+1/2,-x', '-y+1/2,z+1/2,-x', '-z+1/2,-y+1/2,-x', '-y+1/2,-z+1/2,x', 'z+1/2,-y+1/2,x', '-z+1/2,y+1/2,x', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z', '-z+1/2,-x+1/2,-y', 'x+1/2,-z+1/2,-y', 'z+1/2,x+1/2,-y', '-x+1/2,z+1/2,-y', '-z+1/2,x+1/2,y', '-x+1/2,-z+1/2,y', 'z+1/2,-x+1/2,y', 'x+1/2,z+1/2,y', '-y+1/2,-z+1/2,-x', '-y+1/2,z+1/2,x', '-z+1/2,-y+1/2,x', 'y+1/2,-z+1/2,x', 'z+1/2,y+1/2,x', 'y+1/2,z+1/2,-x', '-z+1/2,y+1/2,-x', 'z+1/2,-y+1/2,-x'], 'universal_h_m': 'Fm-3m'}, {'hall': '-F 4a 2 3', 'hermann_mauguin': 'Fm-3c', 'hermann_mauguin_u': 'Fm-3c', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y,-z', 'y+1/2,x,-z', '-x+1/2,y+1/2,-z', '-y,-x+1/2,-z', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x,-y', 'x+1/2,z,-y', '-z+1/2,x+1/2,-y', '-x,-z+1/2,-y', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y,-x', '-y,-z,x', 'z,-y,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y,z', '-y-1/2,-x,z', 'x-1/2,-y-1/2,z', 'y,x-1/2,z', '-z,-x,-y', 'x-1/2,-z,-y', 'z-1/2,x-1/2,-y', '-x,z-1/2,-y', '-z,x,y', '-x-1/2,-z,y', 'z-1/2,-x-1/2,y', 'x,z-1/2,y', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z,-y,x-1/2', 'y-1/2,-z,x-1/2', 'z-1/2,y,x', 'y,z,-x', '-z,y,-x-1/2', 'z-1/2,-y-1/2,-x-1/2'], 'number': 226, 'point_group': 'm-3m', 'schoenflies': 'Oh^6', 'short_h_m': 'Fm-3c', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y,-z', 'y+1/2,x,-z', '-x+1/2,y+1/2,-z', '-y,-x+1/2,-z', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x,-y', 'x+1/2,z,-y', '-z+1/2,x+1/2,-y', '-x,-z+1/2,-y', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y,-x', '-y,-z,x', 'z,-y,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x,-y,-z', 'y-1/2,-x,-z', 'x-1/2,y-1/2,-z', '-y,x-1/2,-z', '-x,y,z', '-y-1/2,-x,z', 'x-1/2,-y-1/2,z', 'y,x-1/2,z', '-z,-x,-y', 'x-1/2,-z,-y', 'z-1/2,x-1/2,-y', '-x,z-1/2,-y', '-z,x,y', '-x-1/2,-z,y', 'z-1/2,-x-1/2,y', 'x,z-1/2,y', '-y,-z,-x', '-y,z-1/2,x-1/2', '-z,-y,x-1/2', 'y-1/2,-z,x-1/2', 'z-1/2,y,x', 'y,z,-x', '-z,y,-x-1/2', 'z-1/2,-y-1/2,-x-1/2', 'x,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1,z+1/2', 'y,-x+1,z+1/2', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1,-z+1/2', '-y,-x+1,-z+1/2', 'z,x+1/2,y+1/2', '-x+1/2,z+1/2,y+1/2', '-z+1/2,-x+1,y+1/2', 'x,-z+1,y+1/2', 'z,-x+1/2,-y+1/2', 'x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1,-y+1/2', '-x,-z+1,-y+1/2', 'y,z+1/2,x+1/2', 'y,-z+1,-x+1', 'z,y+1/2,-x+1', '-y+1/2,z+1/2,-x+1', '-z+1/2,-y+1/2,-x+1/2', '-y,-z+1/2,x+1/2', 'z,-y+1/2,x+1', '-z+1/2,y+1,x+1', '-x,-y+1/2,-z+1/2', 'y-1/2,-x+1/2,-z+1/2', 'x-1/2,y,-z+1/2', '-y,x,-z+1/2', '-x,y+1/2,z+1/2', '-y-1/2,-x+1/2,z+1/2', 'x-1/2,-y,z+1/2', 'y,x,z+1/2', '-z,-x+1/2,-y+1/2', 'x-1/2,-z+1/2,-y+1/2', 'z-1/2,x,-y+1/2', '-x,z,-y+1/2', '-z,x+1/2,y+1/2', '-x-1/2,-z+1/2,y+1/2', 'z-1/2,-x,y+1/2', 'x,z,y+1/2', '-y,-z+1/2,-x+1/2', '-y,z,x', '-z,-y+1/2,x', 'y-1/2,-z+1/2,x', 'z-1/2,y+1/2,x+1/2', 'y,z+1/2,-x+1/2', '-z,y+1/2,-x', 'z-1/2,-y,-x', 'x+1/2,y,z+1/2', '-y+1,x,z+1/2', '-x+1,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1,x,-z+1/2', '-x+1,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z+1/2,x,y+1/2', '-x+1,z,y+1/2', '-z+1,-x+1/2,y+1/2', 'x+1/2,-z+1/2,y+1/2', 'z+1/2,-x,-y+1/2', 'x+1,z,-y+1/2', '-z+1,x+1/2,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y+1/2,z,x+1/2', 'y+1/2,-z+1/2,-x+1', 'z+1/2,y,-x+1', '-y+1,z,-x+1', '-z+1,-y,-x+1/2', '-y+1/2,-z,x+1/2', 'z+1/2,-y,x+1', '-z+1,y+1/2,x+1', '-x+1/2,-y,-z+1/2', 'y,-x,-z+1/2', 'x,y-1/2,-z+1/2', '-y+1/2,x-1/2,-z+1/2', '-x+1/2,y,z+1/2', '-y,-x,z+1/2', 'x,-y-1/2,z+1/2', 'y+1/2,x-1/2,z+1/2', '-z+1/2,-x,-y+1/2', 'x,-z,-y+1/2', 'z,x-1/2,-y+1/2', '-x+1/2,z-1/2,-y+1/2', '-z+1/2,x,y+1/2', '-x,-z,y+1/2', 'z,-x-1/2,y+1/2', 'x+1/2,z-1/2,y+1/2', '-y+1/2,-z,-x+1/2', '-y+1/2,z-1/2,x', '-z+1/2,-y,x', 'y,-z,x', 'z,y,x+1/2', 'y+1/2,z,-x+1/2', '-z+1/2,y,-x', 'z,-y-1/2,-x', 'x+1/2,y+1/2,z', '-y+1,x+1/2,z', '-x+1,-y+1,z', 'y+1/2,-x+1,z', 'x+1/2,-y+1/2,-z', 'y+1,x+1/2,-z', '-x+1,y+1,-z', '-y+1/2,-x+1,-z', 'z+1/2,x+1/2,y', '-x+1,z+1/2,y', '-z+1,-x+1,y', 'x+1/2,-z+1,y', 'z+1/2,-x+1/2,-y', 'x+1,z+1/2,-y', '-z+1,x+1,-y', '-x+1/2,-z+1,-y', 'y+1/2,z+1/2,x', 'y+1/2,-z+1,-x+1/2', 'z+1/2,y+1/2,-x+1/2', '-y+1,z+1/2,-x+1/2', '-z+1,-y+1/2,-x', '-y+1/2,-z+1/2,x', 'z+1/2,-y+1/2,x+1/2', '-z+1,y+1,x+1/2', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y,-z', '-y+1/2,x,-z', '-x+1/2,y+1/2,z', '-y,-x+1/2,z', 'x,-y,z', 'y+1/2,x,z', '-z+1/2,-x+1/2,-y', 'x,-z+1/2,-y', 'z,x,-y', '-x+1/2,z,-y', '-z+1/2,x+1/2,y', '-x,-z+1/2,y', 'z,-x,y', 'x+1/2,z,y', '-y+1/2,-z+1/2,-x', '-y+1/2,z,x-1/2', '-z+1/2,-y+1/2,x-1/2', 'y,-z+1/2,x-1/2', 'z,y+1/2,x', 'y+1/2,z+1/2,-x', '-z+1/2,y+1/2,-x-1/2', 'z,-y,-x-1/2'], 'universal_h_m': 'Fm-3c'}, {'hall': ' F 4d 2 3 -1d', 'hermann_mauguin': 'Fd-3m', 'hermann_mauguin_u': 'Fd-3m', 'ncsym': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4', '-x+1/4,-y+1/4,-z+1/4', 'y,-x,-z', 'x+1/4,y-1/4,-z-1/4', '-y-1/2,x,-z-1/2', '-x+1/4,y+1/4,z+1/4', '-y,-x,z', 'x+1/4,-y-1/4,z-1/4', 'y-1/2,x,z-1/2', '-z+1/4,-x+1/4,-y+1/4', 'x,-z,-y', 'z+1/4,x-1/4,-y-1/4', '-x-1/2,z,-y-1/2', '-z+1/4,x+1/4,y+1/4', '-x,-z,y', 'z+1/4,-x-1/4,y-1/4', 'x-1/2,z,y-1/2', '-y+1/4,-z+1/4,-x+1/4', '-y-1/4,z+1/4,x-1/4', '-z,-y-1/2,x-1/2', 'y-1/4,-z-1/4,x+1/4', 'z,y,x', 'y+1/4,z+1/4,-x+1/4', '-z,y-1/2,-x-1/2', 'z-1/2,-y-1/2,-x'], 'number': 227, 'point_group': 'm-3m', 'schoenflies': 'Oh^7', 'short_h_m': 'Fd-3m', 'symops': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4', '-x+1/4,-y+1/4,-z+1/4', 'y,-x,-z', 'x+1/4,y-1/4,-z-1/4', '-y-1/2,x,-z-1/2', '-x+1/4,y+1/4,z+1/4', '-y,-x,z', 'x+1/4,-y-1/4,z-1/4', 'y-1/2,x,z-1/2', '-z+1/4,-x+1/4,-y+1/4', 'x,-z,-y', 'z+1/4,x-1/4,-y-1/4', '-x-1/2,z,-y-1/2', '-z+1/4,x+1/4,y+1/4', '-x,-z,y', 'z+1/4,-x-1/4,y-1/4', 'x-1/2,z,y-1/2', '-y+1/4,-z+1/4,-x+1/4', '-y-1/4,z+1/4,x-1/4', '-z,-y-1/2,x-1/2', 'y-1/4,-z-1/4,x+1/4', 'z,y,x', 'y+1/4,z+1/4,-x+1/4', '-z,y-1/2,-x-1/2', 'z-1/2,-y-1/2,-x', 'x,y+1/2,z+1/2', '-y+1/4,x+3/4,z+3/4', '-x,-y+1,z+1', 'y+3/4,-x+3/4,z+5/4', 'x,-y+1/2,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x,y+1,-z+1', '-y+3/4,-x+3/4,-z+5/4', 'z,x+1/2,y+1/2', '-x+1/4,z+3/4,y+3/4', '-z,-x+1,y+1', 'x+3/4,-z+3/4,y+5/4', 'z,-x+1/2,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z,x+1,-y+1', '-x+3/4,-z+3/4,-y+5/4', 'y,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', 'z+1/4,y+5/4,-x+5/4', '-y+1/2,z+1,-x+1/2', '-z+1/4,-y+3/4,-x+3/4', '-y,-z+1/2,x+1/2', 'z+1/4,-y+5/4,x+5/4', '-z+3/4,y+5/4,x+3/4', '-x+1/4,-y+3/4,-z+3/4', 'y,-x+1/2,-z+1/2', 'x+1/4,y+1/4,-z+1/4', '-y-1/2,x+1/2,-z', '-x+1/4,y+3/4,z+3/4', '-y,-x+1/2,z+1/2', 'x+1/4,-y+1/4,z+1/4', 'y-1/2,x+1/2,z', '-z+1/4,-x+3/4,-y+3/4', 'x,-z+1/2,-y+1/2', 'z+1/4,x+1/4,-y+1/4', '-x-1/2,z+1/2,-y', '-z+1/4,x+3/4,y+3/4', '-x,-z+1/2,y+1/2', 'z+1/4,-x+1/4,y+1/4', 'x-1/2,z+1/2,y', '-y+1/4,-z+3/4,-x+3/4', '-y-1/4,z+3/4,x+1/4', '-z,-y,x', 'y-1/4,-z+1/4,x+3/4', 'z,y+1/2,x+1/2', 'y+1/4,z+3/4,-x+3/4', '-z,y,-x', 'z-1/2,-y,-x+1/2', 'x+1/2,y,z+1/2', '-y+3/4,x+1/4,z+3/4', '-x+1/2,-y+1/2,z+1', 'y+5/4,-x+1/4,z+5/4', 'x+1/2,-y,-z+1/2', 'y+3/4,x+1/4,-z+3/4', '-x+1/2,y+1/2,-z+1', '-y+5/4,-x+1/4,-z+5/4', 'z+1/2,x,y+1/2', '-x+3/4,z+1/4,y+3/4', '-z+1/2,-x+1/2,y+1', 'x+5/4,-z+1/4,y+5/4', 'z+1/2,-x,-y+1/2', 'x+3/4,z+1/4,-y+3/4', '-z+1/2,x+1/2,-y+1', '-x+5/4,-z+1/4,-y+5/4', 'y+1/2,z,x+1/2', 'y+1,-z,-x+1', 'z+3/4,y+3/4,-x+5/4', '-y+1,z+1/2,-x+1/2', '-z+3/4,-y+1/4,-x+3/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+5/4', '-z+5/4,y+3/4,x+3/4', '-x+3/4,-y+1/4,-z+3/4', 'y+1/2,-x,-z+1/2', 'x+3/4,y-1/4,-z+1/4', '-y,x,-z', '-x+3/4,y+1/4,z+3/4', '-y+1/2,-x,z+1/2', 'x+3/4,-y-1/4,z+1/4', 'y,x,z', '-z+3/4,-x+1/4,-y+3/4', 'x+1/2,-z,-y+1/2', 'z+3/4,x-1/4,-y+1/4', '-x,z,-y', '-z+3/4,x+1/4,y+3/4', '-x+1/2,-z,y+1/2', 'z+3/4,-x-1/4,y+1/4', 'x,z,y', '-y+3/4,-z+1/4,-x+3/4', '-y+1/4,z+1/4,x+1/4', '-z+1/2,-y-1/2,x', 'y+1/4,-z-1/4,x+3/4', 'z+1/2,y,x+1/2', 'y+3/4,z+1/4,-x+3/4', '-z+1/2,y-1/2,-x', 'z,-y-1/2,-x+1/2', 'x+1/2,y+1/2,z', '-y+3/4,x+3/4,z+1/4', '-x+1/2,-y+1,z+1/2', 'y+5/4,-x+3/4,z+3/4', 'x+1/2,-y+1/2,-z', 'y+3/4,x+3/4,-z+1/4', '-x+1/2,y+1,-z+1/2', '-y+5/4,-x+3/4,-z+3/4', 'z+1/2,x+1/2,y', '-x+3/4,z+3/4,y+1/4', '-z+1/2,-x+1,y+1/2', 'x+5/4,-z+3/4,y+3/4', 'z+1/2,-x+1/2,-y', 'x+3/4,z+3/4,-y+1/4', '-z+1/2,x+1,-y+1/2', '-x+5/4,-z+3/4,-y+3/4', 'y+1/2,z+1/2,x', 'y+1,-z+1/2,-x+1/2', 'z+3/4,y+5/4,-x+3/4', '-y+1,z+1,-x', '-z+3/4,-y+3/4,-x+1/4', '-y+1/2,-z+1/2,x', 'z+3/4,-y+5/4,x+3/4', '-z+5/4,y+5/4,x+1/4', '-x+3/4,-y+3/4,-z+1/4', 'y+1/2,-x+1/2,-z', 'x+3/4,y+1/4,-z-1/4', '-y,x+1/2,-z-1/2', '-x+3/4,y+3/4,z+1/4', '-y+1/2,-x+1/2,z', 'x+3/4,-y+1/4,z-1/4', 'y,x+1/2,z-1/2', '-z+3/4,-x+3/4,-y+1/4', 'x+1/2,-z+1/2,-y', 'z+3/4,x+1/4,-y-1/4', '-x,z+1/2,-y-1/2', '-z+3/4,x+3/4,y+1/4', '-x+1/2,-z+1/2,y', 'z+3/4,-x+1/4,y-1/4', 'x,z+1/2,y-1/2', '-y+3/4,-z+3/4,-x+1/4', '-y+1/4,z+3/4,x-1/4', '-z+1/2,-y,x-1/2', 'y+1/4,-z+1/4,x+1/4', 'z+1/2,y+1/2,x', 'y+3/4,z+3/4,-x+1/4', '-z+1/2,y,-x-1/2', 'z,-y,-x'], 'universal_h_m': 'Fd-3m:1'}, {'hall': '-F 4vw 2vw 3', 'hermann_mauguin': 'Fd-3m', 'hermann_mauguin_u': 'Fd-3m', 'ncsym': ['x,y,z', '-y,x+1/4,z+1/4', '-x+3/4,-y+1/4,z+1/2', 'y+3/4,-x,z+3/4', 'x,-y+1/4,-z+1/4', 'y+3/4,x+1/4,-z+1/2', '-x+3/4,y,-z+3/4', '-y,-x,-z', 'z,x,y', '-x,z+1/4,y+1/4', '-z+3/4,-x+1/4,y+1/2', 'x+3/4,-z,y+3/4', 'z,-x+1/4,-y+1/4', 'x+3/4,z+1/4,-y+1/2', '-z+3/4,x,-y+3/4', '-x,-z,-y', 'y,z,x', 'y+1/2,-z+3/4,-x+1/4', 'z+1/4,y+3/4,-x+1/2', '-y+1/4,z+1/2,-x+3/4', '-z,-y+1/2,-x+1/2', '-y+1/4,-z+1/4,x', 'z+1/4,-y,x+1/4', '-z+1/2,y+1/4,x+3/4', '-x,-y,-z', 'y,-x-1/4,-z-1/4', 'x-3/4,y-1/4,-z-1/2', '-y-3/4,x,-z-3/4', '-x,y-1/4,z-1/4', '-y-3/4,-x-1/4,z-1/2', 'x-3/4,-y,z-3/4', 'y,x,z', '-z,-x,-y', 'x,-z-1/4,-y-1/4', 'z-3/4,x-1/4,-y-1/2', '-x-3/4,z,-y-3/4', '-z,x-1/4,y-1/4', '-x-3/4,-z-1/4,y-1/2', 'z-3/4,-x,y-3/4', 'x,z,y', '-y,-z,-x', '-y-1/2,z-3/4,x-1/4', '-z-1/4,-y-3/4,x-1/2', 'y-1/4,-z-1/2,x-3/4', 'z,y-1/2,x-1/2', 'y-1/4,z-1/4,-x', '-z-1/4,y,-x-1/4', 'z-1/2,-y-1/4,-x-3/4'], 'number': 227, 'point_group': 'm-3m', 'schoenflies': 'Oh^7', 'short_h_m': 'Fd-3m', 'symops': ['x,y,z', '-y,x+1/4,z+1/4', '-x+3/4,-y+1/4,z+1/2', 'y+3/4,-x,z+3/4', 'x,-y+1/4,-z+1/4', 'y+3/4,x+1/4,-z+1/2', '-x+3/4,y,-z+3/4', '-y,-x,-z', 'z,x,y', '-x,z+1/4,y+1/4', '-z+3/4,-x+1/4,y+1/2', 'x+3/4,-z,y+3/4', 'z,-x+1/4,-y+1/4', 'x+3/4,z+1/4,-y+1/2', '-z+3/4,x,-y+3/4', '-x,-z,-y', 'y,z,x', 'y+1/2,-z+3/4,-x+1/4', 'z+1/4,y+3/4,-x+1/2', '-y+1/4,z+1/2,-x+3/4', '-z,-y+1/2,-x+1/2', '-y+1/4,-z+1/4,x', 'z+1/4,-y,x+1/4', '-z+1/2,y+1/4,x+3/4', '-x,-y,-z', 'y,-x-1/4,-z-1/4', 'x-3/4,y-1/4,-z-1/2', '-y-3/4,x,-z-3/4', '-x,y-1/4,z-1/4', '-y-3/4,-x-1/4,z-1/2', 'x-3/4,-y,z-3/4', 'y,x,z', '-z,-x,-y', 'x,-z-1/4,-y-1/4', 'z-3/4,x-1/4,-y-1/2', '-x-3/4,z,-y-3/4', '-z,x-1/4,y-1/4', '-x-3/4,-z-1/4,y-1/2', 'z-3/4,-x,y-3/4', 'x,z,y', '-y,-z,-x', '-y-1/2,z-3/4,x-1/4', '-z-1/4,-y-3/4,x-1/2', 'y-1/4,-z-1/2,x-3/4', 'z,y-1/2,x-1/2', 'y-1/4,z-1/4,-x', '-z-1/4,y,-x-1/4', 'z-1/2,-y-1/4,-x-3/4', 'x,y+1/2,z+1/2', '-y,x+3/4,z+3/4', '-x+3/4,-y+3/4,z+1', 'y+3/4,-x+1/2,z+5/4', 'x,-y+3/4,-z+3/4', 'y+3/4,x+3/4,-z+1', '-x+3/4,y+1/2,-z+5/4', '-y,-x+1/2,-z+1/2', 'z,x+1/2,y+1/2', '-x,z+3/4,y+3/4', '-z+3/4,-x+3/4,y+1', 'x+3/4,-z+1/2,y+5/4', 'z,-x+3/4,-y+3/4', 'x+3/4,z+3/4,-y+1', '-z+3/4,x+1/2,-y+5/4', '-x,-z+1/2,-y+1/2', 'y,z+1/2,x+1/2', 'y+1/2,-z+5/4,-x+3/4', 'z+1/4,y+5/4,-x+1', '-y+1/4,z+1,-x+5/4', '-z,-y+1,-x+1', '-y+1/4,-z+3/4,x+1/2', 'z+1/4,-y+1/2,x+3/4', '-z+1/2,y+3/4,x+5/4', '-x,-y+1/2,-z+1/2', 'y,-x+1/4,-z+1/4', 'x-3/4,y+1/4,-z', '-y-3/4,x+1/2,-z-1/4', '-x,y+1/4,z+1/4', '-y-3/4,-x+1/4,z', 'x-3/4,-y+1/2,z-1/4', 'y,x+1/2,z+1/2', '-z,-x+1/2,-y+1/2', 'x,-z+1/4,-y+1/4', 'z-3/4,x+1/4,-y', '-x-3/4,z+1/2,-y-1/4', '-z,x+1/4,y+1/4', '-x-3/4,-z+1/4,y', 'z-3/4,-x+1/2,y-1/4', 'x,z+1/2,y+1/2', '-y,-z+1/2,-x+1/2', '-y-1/2,z-1/4,x+1/4', '-z-1/4,-y-1/4,x', 'y-1/4,-z,x-1/4', 'z,y,x', 'y-1/4,z+1/4,-x+1/2', '-z-1/4,y+1/2,-x+1/4', 'z-1/2,-y+1/4,-x-1/4', 'x+1/2,y,z+1/2', '-y+1/2,x+1/4,z+3/4', '-x+5/4,-y+1/4,z+1', 'y+5/4,-x,z+5/4', 'x+1/2,-y+1/4,-z+3/4', 'y+5/4,x+1/4,-z+1', '-x+5/4,y,-z+5/4', '-y+1/2,-x,-z+1/2', 'z+1/2,x,y+1/2', '-x+1/2,z+1/4,y+3/4', '-z+5/4,-x+1/4,y+1', 'x+5/4,-z,y+5/4', 'z+1/2,-x+1/4,-y+3/4', 'x+5/4,z+1/4,-y+1', '-z+5/4,x,-y+5/4', '-x+1/2,-z,-y+1/2', 'y+1/2,z,x+1/2', 'y+1,-z+3/4,-x+3/4', 'z+3/4,y+3/4,-x+1', '-y+3/4,z+1/2,-x+5/4', '-z+1/2,-y+1/2,-x+1', '-y+3/4,-z+1/4,x+1/2', 'z+3/4,-y,x+3/4', '-z+1,y+1/4,x+5/4', '-x+1/2,-y,-z+1/2', 'y+1/2,-x-1/4,-z+1/4', 'x-1/4,y-1/4,-z', '-y-1/4,x,-z-1/4', '-x+1/2,y-1/4,z+1/4', '-y-1/4,-x-1/4,z', 'x-1/4,-y,z-1/4', 'y+1/2,x,z+1/2', '-z+1/2,-x,-y+1/2', 'x+1/2,-z-1/4,-y+1/4', 'z-1/4,x-1/4,-y', '-x-1/4,z,-y-1/4', '-z+1/2,x-1/4,y+1/4', '-x-1/4,-z-1/4,y', 'z-1/4,-x,y-1/4', 'x+1/2,z,y+1/2', '-y+1/2,-z,-x+1/2', '-y,z-3/4,x+1/4', '-z+1/4,-y-3/4,x', 'y+1/4,-z-1/2,x-1/4', 'z+1/2,y-1/2,x', 'y+1/4,z-1/4,-x+1/2', '-z+1/4,y,-x+1/4', 'z,-y-1/4,-x-1/4', 'x+1/2,y+1/2,z', '-y+1/2,x+3/4,z+1/4', '-x+5/4,-y+3/4,z+1/2', 'y+5/4,-x+1/2,z+3/4', 'x+1/2,-y+3/4,-z+1/4', 'y+5/4,x+3/4,-z+1/2', '-x+5/4,y+1/2,-z+3/4', '-y+1/2,-x+1/2,-z', 'z+1/2,x+1/2,y', '-x+1/2,z+3/4,y+1/4', '-z+5/4,-x+3/4,y+1/2', 'x+5/4,-z+1/2,y+3/4', 'z+1/2,-x+3/4,-y+1/4', 'x+5/4,z+3/4,-y+1/2', '-z+5/4,x+1/2,-y+3/4', '-x+1/2,-z+1/2,-y', 'y+1/2,z+1/2,x', 'y+1,-z+5/4,-x+1/4', 'z+3/4,y+5/4,-x+1/2', '-y+3/4,z+1,-x+3/4', '-z+1/2,-y+1,-x+1/2', '-y+3/4,-z+3/4,x', 'z+3/4,-y+1/2,x+1/4', '-z+1,y+3/4,x+3/4', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/4,-z-1/4', 'x-1/4,y+1/4,-z-1/2', '-y-1/4,x+1/2,-z-3/4', '-x+1/2,y+1/4,z-1/4', '-y-1/4,-x+1/4,z-1/2', 'x-1/4,-y+1/2,z-3/4', 'y+1/2,x+1/2,z', '-z+1/2,-x+1/2,-y', 'x+1/2,-z+1/4,-y-1/4', 'z-1/4,x+1/4,-y-1/2', '-x-1/4,z+1/2,-y-3/4', '-z+1/2,x+1/4,y-1/4', '-x-1/4,-z+1/4,y-1/2', 'z-1/4,-x+1/2,y-3/4', 'x+1/2,z+1/2,y', '-y+1/2,-z+1/2,-x', '-y,z-1/4,x-1/4', '-z+1/4,-y-1/4,x-1/2', 'y+1/4,-z,x-3/4', 'z+1/2,y,x-1/2', 'y+1/4,z+1/4,-x', '-z+1/4,y+1/2,-x-1/4', 'z,-y+1/4,-x-3/4'], 'universal_h_m': 'Fd-3m:2'}, {'hall': ' F 4d 2 3 -1ad', 'hermann_mauguin': 'Fd-3c', 'hermann_mauguin_u': 'Fd-3c', 'ncsym': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4', '-x+3/4,-y+1/4,-z+1/4', 'y+1/2,-x,-z', 'x+3/4,y-1/4,-z-1/4', '-y,x,-z-1/2', '-x+3/4,y+1/4,z+1/4', '-y+1/2,-x,z', 'x+3/4,-y-1/4,z-1/4', 'y,x,z-1/2', '-z+3/4,-x+1/4,-y+1/4', 'x+1/2,-z,-y', 'z+3/4,x-1/4,-y-1/4', '-x,z,-y-1/2', '-z+3/4,x+1/4,y+1/4', '-x+1/2,-z,y', 'z+3/4,-x-1/4,y-1/4', 'x,z,y-1/2', '-y+3/4,-z+1/4,-x+1/4', '-y+1/4,z+1/4,x-1/4', '-z+1/2,-y-1/2,x-1/2', 'y+1/4,-z-1/4,x+1/4', 'z+1/2,y,x', 'y+3/4,z+1/4,-x+1/4', '-z+1/2,y-1/2,-x-1/2', 'z,-y-1/2,-x'], 'number': 228, 'point_group': 'm-3m', 'schoenflies': 'Oh^8', 'short_h_m': 'Fd-3c', 'symops': ['x,y,z', '-y+1/4,x+1/4,z+1/4', '-x,-y+1/2,z+1/2', 'y+3/4,-x+1/4,z+3/4', 'x,-y,-z', 'y+1/4,x+1/4,-z+1/4', '-x,y+1/2,-z+1/2', '-y+3/4,-x+1/4,-z+3/4', 'z,x,y', '-x+1/4,z+1/4,y+1/4', '-z,-x+1/2,y+1/2', 'x+3/4,-z+1/4,y+3/4', 'z,-x,-y', 'x+1/4,z+1/4,-y+1/4', '-z,x+1/2,-y+1/2', '-x+3/4,-z+1/4,-y+3/4', 'y,z,x', 'y+1/2,-z,-x+1/2', 'z+1/4,y+3/4,-x+3/4', '-y+1/2,z+1/2,-x', '-z+1/4,-y+1/4,-x+1/4', '-y,-z,x', 'z+1/4,-y+3/4,x+3/4', '-z+3/4,y+3/4,x+1/4', '-x+3/4,-y+1/4,-z+1/4', 'y+1/2,-x,-z', 'x+3/4,y-1/4,-z-1/4', '-y,x,-z-1/2', '-x+3/4,y+1/4,z+1/4', '-y+1/2,-x,z', 'x+3/4,-y-1/4,z-1/4', 'y,x,z-1/2', '-z+3/4,-x+1/4,-y+1/4', 'x+1/2,-z,-y', 'z+3/4,x-1/4,-y-1/4', '-x,z,-y-1/2', '-z+3/4,x+1/4,y+1/4', '-x+1/2,-z,y', 'z+3/4,-x-1/4,y-1/4', 'x,z,y-1/2', '-y+3/4,-z+1/4,-x+1/4', '-y+1/4,z+1/4,x-1/4', '-z+1/2,-y-1/2,x-1/2', 'y+1/4,-z-1/4,x+1/4', 'z+1/2,y,x', 'y+3/4,z+1/4,-x+1/4', '-z+1/2,y-1/2,-x-1/2', 'z,-y-1/2,-x', 'x,y+1/2,z+1/2', '-y+1/4,x+3/4,z+3/4', '-x,-y+1,z+1', 'y+3/4,-x+3/4,z+5/4', 'x,-y+1/2,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x,y+1,-z+1', '-y+3/4,-x+3/4,-z+5/4', 'z,x+1/2,y+1/2', '-x+1/4,z+3/4,y+3/4', '-z,-x+1,y+1', 'x+3/4,-z+3/4,y+5/4', 'z,-x+1/2,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z,x+1,-y+1', '-x+3/4,-z+3/4,-y+5/4', 'y,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1', 'z+1/4,y+5/4,-x+5/4', '-y+1/2,z+1,-x+1/2', '-z+1/4,-y+3/4,-x+3/4', '-y,-z+1/2,x+1/2', 'z+1/4,-y+5/4,x+5/4', '-z+3/4,y+5/4,x+3/4', '-x+3/4,-y+3/4,-z+3/4', 'y+1/2,-x+1/2,-z+1/2', 'x+3/4,y+1/4,-z+1/4', '-y,x+1/2,-z', '-x+3/4,y+3/4,z+3/4', '-y+1/2,-x+1/2,z+1/2', 'x+3/4,-y+1/4,z+1/4', 'y,x+1/2,z', '-z+3/4,-x+3/4,-y+3/4', 'x+1/2,-z+1/2,-y+1/2', 'z+3/4,x+1/4,-y+1/4', '-x,z+1/2,-y', '-z+3/4,x+3/4,y+3/4', '-x+1/2,-z+1/2,y+1/2', 'z+3/4,-x+1/4,y+1/4', 'x,z+1/2,y', '-y+3/4,-z+3/4,-x+3/4', '-y+1/4,z+3/4,x+1/4', '-z+1/2,-y,x', 'y+1/4,-z+1/4,x+3/4', 'z+1/2,y+1/2,x+1/2', 'y+3/4,z+3/4,-x+3/4', '-z+1/2,y,-x', 'z,-y,-x+1/2', 'x+1/2,y,z+1/2', '-y+3/4,x+1/4,z+3/4', '-x+1/2,-y+1/2,z+1', 'y+5/4,-x+1/4,z+5/4', 'x+1/2,-y,-z+1/2', 'y+3/4,x+1/4,-z+3/4', '-x+1/2,y+1/2,-z+1', '-y+5/4,-x+1/4,-z+5/4', 'z+1/2,x,y+1/2', '-x+3/4,z+1/4,y+3/4', '-z+1/2,-x+1/2,y+1', 'x+5/4,-z+1/4,y+5/4', 'z+1/2,-x,-y+1/2', 'x+3/4,z+1/4,-y+3/4', '-z+1/2,x+1/2,-y+1', '-x+5/4,-z+1/4,-y+5/4', 'y+1/2,z,x+1/2', 'y+1,-z,-x+1', 'z+3/4,y+3/4,-x+5/4', '-y+1,z+1/2,-x+1/2', '-z+3/4,-y+1/4,-x+3/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+5/4', '-z+5/4,y+3/4,x+3/4', '-x+5/4,-y+1/4,-z+3/4', 'y+1,-x,-z+1/2', 'x+5/4,y-1/4,-z+1/4', '-y+1/2,x,-z', '-x+5/4,y+1/4,z+3/4', '-y+1,-x,z+1/2', 'x+5/4,-y-1/4,z+1/4', 'y+1/2,x,z', '-z+5/4,-x+1/4,-y+3/4', 'x+1,-z,-y+1/2', 'z+5/4,x-1/4,-y+1/4', '-x+1/2,z,-y', '-z+5/4,x+1/4,y+3/4', '-x+1,-z,y+1/2', 'z+5/4,-x-1/4,y+1/4', 'x+1/2,z,y', '-y+5/4,-z+1/4,-x+3/4', '-y+3/4,z+1/4,x+1/4', '-z+1,-y-1/2,x', 'y+3/4,-z-1/4,x+3/4', 'z+1,y,x+1/2', 'y+5/4,z+1/4,-x+3/4', '-z+1,y-1/2,-x', 'z+1/2,-y-1/2,-x+1/2', 'x+1/2,y+1/2,z', '-y+3/4,x+3/4,z+1/4', '-x+1/2,-y+1,z+1/2', 'y+5/4,-x+3/4,z+3/4', 'x+1/2,-y+1/2,-z', 'y+3/4,x+3/4,-z+1/4', '-x+1/2,y+1,-z+1/2', '-y+5/4,-x+3/4,-z+3/4', 'z+1/2,x+1/2,y', '-x+3/4,z+3/4,y+1/4', '-z+1/2,-x+1,y+1/2', 'x+5/4,-z+3/4,y+3/4', 'z+1/2,-x+1/2,-y', 'x+3/4,z+3/4,-y+1/4', '-z+1/2,x+1,-y+1/2', '-x+5/4,-z+3/4,-y+3/4', 'y+1/2,z+1/2,x', 'y+1,-z+1/2,-x+1/2', 'z+3/4,y+5/4,-x+3/4', '-y+1,z+1,-x', '-z+3/4,-y+3/4,-x+1/4', '-y+1/2,-z+1/2,x', 'z+3/4,-y+5/4,x+3/4', '-z+5/4,y+5/4,x+1/4', '-x+5/4,-y+3/4,-z+1/4', 'y+1,-x+1/2,-z', 'x+5/4,y+1/4,-z-1/4', '-y+1/2,x+1/2,-z-1/2', '-x+5/4,y+3/4,z+1/4', '-y+1,-x+1/2,z', 'x+5/4,-y+1/4,z-1/4', 'y+1/2,x+1/2,z-1/2', '-z+5/4,-x+3/4,-y+1/4', 'x+1,-z+1/2,-y', 'z+5/4,x+1/4,-y-1/4', '-x+1/2,z+1/2,-y-1/2', '-z+5/4,x+3/4,y+1/4', '-x+1,-z+1/2,y', 'z+5/4,-x+1/4,y-1/4', 'x+1/2,z+1/2,y-1/2', '-y+5/4,-z+3/4,-x+1/4', '-y+3/4,z+3/4,x-1/4', '-z+1,-y,x-1/2', 'y+3/4,-z+1/4,x+1/4', 'z+1,y+1/2,x', 'y+5/4,z+3/4,-x+1/4', '-z+1,y,-x-1/2', 'z+1/2,-y,-x'], 'universal_h_m': 'Fd-3c:1'}, {'hall': '-F 4ud 2vw 3', 'hermann_mauguin': 'Fd-3c', 'hermann_mauguin_u': 'Fd-3c', 'ncsym': ['x,y,z', '-y+1/2,x+1/4,z+1/4', '-x+1/4,-y+3/4,z+1/2', 'y+3/4,-x+1/2,z+3/4', 'x,-y+1/4,-z+1/4', 'y+1/4,x+1/4,-z+1/2', '-x+1/4,y+1/2,-z+3/4', '-y,-x+1/2,-z', 'z,x,y', '-x+1/2,z+1/4,y+1/4', '-z+1/4,-x+3/4,y+1/2', 'x+3/4,-z+1/2,y+3/4', 'z,-x+1/4,-y+1/4', 'x+1/4,z+1/4,-y+1/2', '-z+1/4,x+1/2,-y+3/4', '-x,-z+1/2,-y', 'y,z,x', 'y+1/2,-z+1/4,-x+3/4', 'z+1/4,y+3/4,-x', '-y+3/4,z+1/2,-x+1/4', '-z+1/2,-y+1/2,-x+1/2', '-y+1/4,-z+1/4,x', 'z+1/4,-y,x+3/4', '-z,y+3/4,x+1/4', '-x,-y,-z', 'y-1/2,-x-1/4,-z-1/4', 'x-1/4,y-3/4,-z-1/2', '-y-3/4,x-1/2,-z-3/4', '-x,y-1/4,z-1/4', '-y-1/4,-x-1/4,z-1/2', 'x-1/4,-y-1/2,z-3/4', 'y,x-1/2,z', '-z,-x,-y', 'x-1/2,-z-1/4,-y-1/4', 'z-1/4,x-3/4,-y-1/2', '-x-3/4,z-1/2,-y-3/4', '-z,x-1/4,y-1/4', '-x-1/4,-z-1/4,y-1/2', 'z-1/4,-x-1/2,y-3/4', 'x,z-1/2,y', '-y,-z,-x', '-y-1/2,z-1/4,x-3/4', '-z-1/4,-y-3/4,x', 'y-3/4,-z-1/2,x-1/4', 'z-1/2,y-1/2,x-1/2', 'y-1/4,z-1/4,-x', '-z-1/4,y,-x-3/4', 'z,-y-3/4,-x-1/4'], 'number': 228, 'point_group': 'm-3m', 'schoenflies': 'Oh^8', 'short_h_m': 'Fd-3c', 'symops': ['x,y,z', '-y+1/2,x+1/4,z+1/4', '-x+1/4,-y+3/4,z+1/2', 'y+3/4,-x+1/2,z+3/4', 'x,-y+1/4,-z+1/4', 'y+1/4,x+1/4,-z+1/2', '-x+1/4,y+1/2,-z+3/4', '-y,-x+1/2,-z', 'z,x,y', '-x+1/2,z+1/4,y+1/4', '-z+1/4,-x+3/4,y+1/2', 'x+3/4,-z+1/2,y+3/4', 'z,-x+1/4,-y+1/4', 'x+1/4,z+1/4,-y+1/2', '-z+1/4,x+1/2,-y+3/4', '-x,-z+1/2,-y', 'y,z,x', 'y+1/2,-z+1/4,-x+3/4', 'z+1/4,y+3/4,-x', '-y+3/4,z+1/2,-x+1/4', '-z+1/2,-y+1/2,-x+1/2', '-y+1/4,-z+1/4,x', 'z+1/4,-y,x+3/4', '-z,y+3/4,x+1/4', '-x,-y,-z', 'y-1/2,-x-1/4,-z-1/4', 'x-1/4,y-3/4,-z-1/2', '-y-3/4,x-1/2,-z-3/4', '-x,y-1/4,z-1/4', '-y-1/4,-x-1/4,z-1/2', 'x-1/4,-y-1/2,z-3/4', 'y,x-1/2,z', '-z,-x,-y', 'x-1/2,-z-1/4,-y-1/4', 'z-1/4,x-3/4,-y-1/2', '-x-3/4,z-1/2,-y-3/4', '-z,x-1/4,y-1/4', '-x-1/4,-z-1/4,y-1/2', 'z-1/4,-x-1/2,y-3/4', 'x,z-1/2,y', '-y,-z,-x', '-y-1/2,z-1/4,x-3/4', '-z-1/4,-y-3/4,x', 'y-3/4,-z-1/2,x-1/4', 'z-1/2,y-1/2,x-1/2', 'y-1/4,z-1/4,-x', '-z-1/4,y,-x-3/4', 'z,-y-3/4,-x-1/4', 'x,y+1/2,z+1/2', '-y+1/2,x+3/4,z+3/4', '-x+1/4,-y+5/4,z+1', 'y+3/4,-x+1,z+5/4', 'x,-y+3/4,-z+3/4', 'y+1/4,x+3/4,-z+1', '-x+1/4,y+1,-z+5/4', '-y,-x+1,-z+1/2', 'z,x+1/2,y+1/2', '-x+1/2,z+3/4,y+3/4', '-z+1/4,-x+5/4,y+1', 'x+3/4,-z+1,y+5/4', 'z,-x+3/4,-y+3/4', 'x+1/4,z+3/4,-y+1', '-z+1/4,x+1,-y+5/4', '-x,-z+1,-y+1/2', 'y,z+1/2,x+1/2', 'y+1/2,-z+3/4,-x+5/4', 'z+1/4,y+5/4,-x+1/2', '-y+3/4,z+1,-x+3/4', '-z+1/2,-y+1,-x+1', '-y+1/4,-z+3/4,x+1/2', 'z+1/4,-y+1/2,x+5/4', '-z,y+5/4,x+3/4', '-x,-y+1/2,-z+1/2', 'y-1/2,-x+1/4,-z+1/4', 'x-1/4,y-1/4,-z', '-y-3/4,x,-z-1/4', '-x,y+1/4,z+1/4', '-y-1/4,-x+1/4,z', 'x-1/4,-y,z-1/4', 'y,x,z+1/2', '-z,-x+1/2,-y+1/2', 'x-1/2,-z+1/4,-y+1/4', 'z-1/4,x-1/4,-y', '-x-3/4,z,-y-1/4', '-z,x+1/4,y+1/4', '-x-1/4,-z+1/4,y', 'z-1/4,-x,y-1/4', 'x,z,y+1/2', '-y,-z+1/2,-x+1/2', '-y-1/2,z+1/4,x-1/4', '-z-1/4,-y-1/4,x+1/2', 'y-3/4,-z,x+1/4', 'z-1/2,y,x', 'y-1/4,z+1/4,-x+1/2', '-z-1/4,y+1/2,-x-1/4', 'z,-y-1/4,-x+1/4', 'x+1/2,y,z+1/2', '-y+1,x+1/4,z+3/4', '-x+3/4,-y+3/4,z+1', 'y+5/4,-x+1/2,z+5/4', 'x+1/2,-y+1/4,-z+3/4', 'y+3/4,x+1/4,-z+1', '-x+3/4,y+1/2,-z+5/4', '-y+1/2,-x+1/2,-z+1/2', 'z+1/2,x,y+1/2', '-x+1,z+1/4,y+3/4', '-z+3/4,-x+3/4,y+1', 'x+5/4,-z+1/2,y+5/4', 'z+1/2,-x+1/4,-y+3/4', 'x+3/4,z+1/4,-y+1', '-z+3/4,x+1/2,-y+5/4', '-x+1/2,-z+1/2,-y+1/2', 'y+1/2,z,x+1/2', 'y+1,-z+1/4,-x+5/4', 'z+3/4,y+3/4,-x+1/2', '-y+5/4,z+1/2,-x+3/4', '-z+1,-y+1/2,-x+1', '-y+3/4,-z+1/4,x+1/2', 'z+3/4,-y,x+5/4', '-z+1/2,y+3/4,x+3/4', '-x+1/2,-y,-z+1/2', 'y,-x-1/4,-z+1/4', 'x+1/4,y-3/4,-z', '-y-1/4,x-1/2,-z-1/4', '-x+1/2,y-1/4,z+1/4', '-y+1/4,-x-1/4,z', 'x+1/4,-y-1/2,z-1/4', 'y+1/2,x-1/2,z+1/2', '-z+1/2,-x,-y+1/2', 'x,-z-1/4,-y+1/4', 'z+1/4,x-3/4,-y', '-x-1/4,z-1/2,-y-1/4', '-z+1/2,x-1/4,y+1/4', '-x+1/4,-z-1/4,y', 'z+1/4,-x-1/2,y-1/4', 'x+1/2,z-1/2,y+1/2', '-y+1/2,-z,-x+1/2', '-y,z-1/4,x-1/4', '-z+1/4,-y-3/4,x+1/2', 'y-1/4,-z-1/2,x+1/4', 'z,y-1/2,x', 'y+1/4,z-1/4,-x+1/2', '-z+1/4,y,-x-1/4', 'z+1/2,-y-3/4,-x+1/4', 'x+1/2,y+1/2,z', '-y+1,x+3/4,z+1/4', '-x+3/4,-y+5/4,z+1/2', 'y+5/4,-x+1,z+3/4', 'x+1/2,-y+3/4,-z+1/4', 'y+3/4,x+3/4,-z+1/2', '-x+3/4,y+1,-z+3/4', '-y+1/2,-x+1,-z', 'z+1/2,x+1/2,y', '-x+1,z+3/4,y+1/4', '-z+3/4,-x+5/4,y+1/2', 'x+5/4,-z+1,y+3/4', 'z+1/2,-x+3/4,-y+1/4', 'x+3/4,z+3/4,-y+1/2', '-z+3/4,x+1,-y+3/4', '-x+1/2,-z+1,-y', 'y+1/2,z+1/2,x', 'y+1,-z+3/4,-x+3/4', 'z+3/4,y+5/4,-x', '-y+5/4,z+1,-x+1/4', '-z+1,-y+1,-x+1/2', '-y+3/4,-z+3/4,x', 'z+3/4,-y+1/2,x+3/4', '-z+1/2,y+5/4,x+1/4', '-x+1/2,-y+1/2,-z', 'y,-x+1/4,-z-1/4', 'x+1/4,y-1/4,-z-1/2', '-y-1/4,x,-z-3/4', '-x+1/2,y+1/4,z-1/4', '-y+1/4,-x+1/4,z-1/2', 'x+1/4,-y,z-3/4', 'y+1/2,x,z', '-z+1/2,-x+1/2,-y', 'x,-z+1/4,-y-1/4', 'z+1/4,x-1/4,-y-1/2', '-x-1/4,z,-y-3/4', '-z+1/2,x+1/4,y-1/4', '-x+1/4,-z+1/4,y-1/2', 'z+1/4,-x,y-3/4', 'x+1/2,z,y', '-y+1/2,-z+1/2,-x', '-y,z+1/4,x-3/4', '-z+1/4,-y-1/4,x', 'y-1/4,-z,x-1/4', 'z,y,x-1/2', 'y+1/4,z+1/4,-x', '-z+1/4,y+1/2,-x-3/4', 'z+1/2,-y-1/4,-x-1/4'], 'universal_h_m': 'Fd-3c:2'}, {'hall': '-I 4 2 3', 'hermann_mauguin': 'Im-3m', 'hermann_mauguin_u': 'Im-3m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x'], 'number': 229, 'point_group': 'm-3m', 'schoenflies': 'Oh^9', 'short_h_m': 'Im-3m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z', '-z,-x,-y', 'x,-z,-y', 'z,x,-y', '-x,z,-y', '-z,x,y', '-x,-z,y', 'z,-x,y', 'x,z,y', '-y,-z,-x', '-y,z,x', '-z,-y,x', 'y,-z,x', 'z,y,x', 'y,z,-x', '-z,y,-x', 'z,-y,-x', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z+1/2,x+1/2,y+1/2', '-x+1/2,z+1/2,y+1/2', '-z+1/2,-x+1/2,y+1/2', 'x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,-y+1/2', 'x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,-x+1/2', 'z+1/2,y+1/2,-x+1/2', '-y+1/2,z+1/2,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x+1/2', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'x+1/2,-z+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', '-x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'universal_h_m': 'Im-3m'}, {'hall': '-I 4bd 2c 3', 'hermann_mauguin': 'Ia-3d', 'hermann_mauguin_u': 'Ia-3d', 'ncsym': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z,-x,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z+1/2,x,-y', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z-1/2', '-y-1/4,-x-3/4,z-3/4', 'x-1/2,-y,z', 'y-1/4,x-1/4,z-1/4', '-z,-x,-y', 'x-1/4,-z-3/4,-y-1/4', 'z-1/2,x,-y-1/2', '-x-1/4,z-1/4,-y-3/4', '-z,x,y-1/2', '-x-1/4,-z-3/4,y-3/4', 'z-1/2,-x,y', 'x-1/4,z-1/4,y-1/4', '-y,-z,-x', '-y-1/2,z-1/2,x', '-z-3/4,-y-1/4,x-1/4', 'y,-z-1/2,x-1/2', 'z-1/4,y-1/4,x-1/4', 'y-1/2,z,-x-1/2', '-z-3/4,y-3/4,-x-1/4', 'z-3/4,-y-1/4,-x-3/4'], 'number': 230, 'point_group': 'm-3m', 'schoenflies': 'Oh^10', 'short_h_m': 'Ia-3d', 'symops': ['x,y,z', '-y+1/4,x+3/4,z+1/4', '-x+1/2,-y,z+1/2', 'y+1/4,-x+1/4,z+3/4', 'x,-y,-z+1/2', 'y+1/4,x+3/4,-z+3/4', '-x+1/2,y,-z', '-y+1/4,-x+1/4,-z+1/4', 'z,x,y', '-x+1/4,z+3/4,y+1/4', '-z+1/2,-x,y+1/2', 'x+1/4,-z+1/4,y+3/4', 'z,-x,-y+1/2', 'x+1/4,z+3/4,-y+3/4', '-z+1/2,x,-y', '-x+1/4,-z+1/4,-y+1/4', 'y,z,x', 'y+1/2,-z+1/2,-x', 'z+3/4,y+1/4,-x+1/4', '-y,z+1/2,-x+1/2', '-z+1/4,-y+1/4,-x+1/4', '-y+1/2,-z,x+1/2', 'z+3/4,-y+3/4,x+1/4', '-z+3/4,y+1/4,x+3/4', '-x,-y,-z', 'y-1/4,-x-3/4,-z-1/4', 'x-1/2,y,-z-1/2', '-y-1/4,x-1/4,-z-3/4', '-x,y,z-1/2', '-y-1/4,-x-3/4,z-3/4', 'x-1/2,-y,z', 'y-1/4,x-1/4,z-1/4', '-z,-x,-y', 'x-1/4,-z-3/4,-y-1/4', 'z-1/2,x,-y-1/2', '-x-1/4,z-1/4,-y-3/4', '-z,x,y-1/2', '-x-1/4,-z-3/4,y-3/4', 'z-1/2,-x,y', 'x-1/4,z-1/4,y-1/4', '-y,-z,-x', '-y-1/2,z-1/2,x', '-z-3/4,-y-1/4,x-1/4', 'y,-z-1/2,x-1/2', 'z-1/4,y-1/4,x-1/4', 'y-1/2,z,-x-1/2', '-z-3/4,y-3/4,-x-1/4', 'z-3/4,-y-1/4,-x-3/4', 'x+1/2,y+1/2,z+1/2', '-y+3/4,x+5/4,z+3/4', '-x+1,-y+1/2,z+1', 'y+3/4,-x+3/4,z+5/4', 'x+1/2,-y+1/2,-z+1', 'y+3/4,x+5/4,-z+5/4', '-x+1,y+1/2,-z+1/2', '-y+3/4,-x+3/4,-z+3/4', 'z+1/2,x+1/2,y+1/2', '-x+3/4,z+5/4,y+3/4', '-z+1,-x+1/2,y+1', 'x+3/4,-z+3/4,y+5/4', 'z+1/2,-x+1/2,-y+1', 'x+3/4,z+5/4,-y+5/4', '-z+1,x+1/2,-y+1/2', '-x+3/4,-z+3/4,-y+3/4', 'y+1/2,z+1/2,x+1/2', 'y+1,-z+1,-x+1/2', 'z+5/4,y+3/4,-x+3/4', '-y+1/2,z+1,-x+1', '-z+3/4,-y+3/4,-x+3/4', '-y+1,-z+1/2,x+1', 'z+5/4,-y+5/4,x+3/4', '-z+5/4,y+3/4,x+5/4', '-x+1/2,-y+1/2,-z+1/2', 'y+1/4,-x-1/4,-z+1/4', 'x,y+1/2,-z', '-y+1/4,x+1/4,-z-1/4', '-x+1/2,y+1/2,z', '-y+1/4,-x-1/4,z-1/4', 'x,-y+1/2,z+1/2', 'y+1/4,x+1/4,z+1/4', '-z+1/2,-x+1/2,-y+1/2', 'x+1/4,-z-1/4,-y+1/4', 'z,x+1/2,-y', '-x+1/4,z+1/4,-y-1/4', '-z+1/2,x+1/2,y', '-x+1/4,-z-1/4,y-1/4', 'z,-x+1/2,y+1/2', 'x+1/4,z+1/4,y+1/4', '-y+1/2,-z+1/2,-x+1/2', '-y,z,x+1/2', '-z-1/4,-y+1/4,x+1/4', 'y+1/2,-z,x', 'z+1/4,y+1/4,x+1/4', 'y,z+1/2,-x', '-z-1/4,y-1/4,-x+1/4', 'z-1/4,-y+1/4,-x-1/4'], 'universal_h_m': 'Ia-3d'}, {'hall': 'P 1 (1/2*x+1/2*y,1/2*x-1/2*y,-z)', 'hermann_mauguin': 'C1', 'hermann_mauguin_u': 'C1', 'ncsym': ['x, y, z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'C1', 'symops': ['x,y,z', '1/2+x,1/2+y,z'], 'universal_h_m': 'C1'}, {'hall': '-P 1 (-x,-1/2*y+1/2*z,1/2*y+1/2*z)', 'hermann_mauguin': 'A-1', 'hermann_mauguin_u': 'A-1', 'ncsym': ['x, y, z', '-x, -y, -z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'Ci^1', 'short_h_m': 'A-1', 'symops': ['x,y,z', '-x,-y,-z', 'x,1/2+y,1/2+z', '-x,1/2-y,1/2-z'], 'universal_h_m': 'A-1'}, {'hall': '-P 1 (-1/2*x+1/2*z,-y,1/2*x+1/2*z)', 'hermann_mauguin': 'B-1', 'hermann_mauguin_u': 'B-1', 'ncsym': ['x, y, z', '-x, -y, -z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'Ci^1', 'short_h_m': 'B-1', 'symops': ['x, y, z', 'x+1/2, y, z+1/2', '-x, -y, -z', '-x+1/2, -y, -z+1/2'], 'universal_h_m': 'B-1'}, {'hall': '-P 1 (-1/2*x+1/2*y+1/2*z,1/2*x-1/2*y+1/2*z,1/2*x+1/2*y-1/2*z)', 'hermann_mauguin': 'I-1', 'hermann_mauguin_u': 'I-1', 'ncsym': ['x,y,z', '-x,-y,-z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'D2^4', 'short_h_m': 'I-1', 'symops': ['x,y,z', '1/2-x,1/2-y,1/2-z', '1/2+x,1/2+y,1/2+z', '-x,-y,-z'], 'universal_h_m': 'I-1'}, {'hall': '-C 2yc (x+y-16/3*z,-x+y+16/3*z,1/3*z)', 'hermann_mauguin': 'R12/c1', 'hermann_mauguin_u': 'R12/c1', 'ncsym': ['x, y, z', 'y, x, -z+1/2', '-x, -y, -z', '-y, -x, z-1/2'], 'number': 15, 'point_group': '2/m', 'schoenflies': 'C2h^6', 'short_h_m': 'R2/c', 'symops': ['x, y, z', 'y, x, -z+1/2', 'x+2/3, y+1/3, z+1/3', 'y+2/3, x+1/3, -z+5/6', 'x+1/3, y+2/3, z+2/3', 'y+1/3, x+2/3, -z+7/6', '-x, -y, -z', '-y, -x, z-1/2', '-x+2/3, -y+1/3, -z+1/3', '-y+2/3, -x+1/3, z-1/6', '-x+1/3, -y+2/3, -z+2/3', '-y+1/3, -x+2/3, z+1/6'], 'universal_h_m': 'R12/c1'}, {'hall': ' P 2ac 2ab (x,y,z+1/4)', 'hermann_mauguin': 'P212121', 'hermann_mauguin_u': 'P2_12_12_1', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x+1/2,-y,z+1/2'], 'number': 19, 'point_group': '222', 'schoenflies': 'D2^4', 'short_h_m': 'P2_12_12_1', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z', '-x+1/2,-y,z+1/2'], 'universal_h_m': 'P212121(originshiftx,y,z+1/4)'}, {'hall': 'P 2yb (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'B1211', 'hermann_mauguin_u': 'B12_11', 'ncsym': ['x, y, z', '-x, y+1/2, -z'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'B2_1', 'symops': ['x, y, z', '-x, y+1/2, -z', 'x+1/2, y, z+1/2', '-x+1/2, y+1/2, -z+1/2'], 'universal_h_m': 'B1211'}, {'hall': '-P 1 (1/2*x+1/2*y,1/2*x-1/2*y,-z)', 'hermann_mauguin': 'C-1', 'hermann_mauguin_u': 'C-1', 'ncsym': ['x, y, z', '-x, -y, -z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'Ci^1', 'short_h_m': 'C-1', 'symops': ['x, y, z', 'x+1/2, y+1/2, z', '-x, -y, -z', '-x+1/2, -y+1/2, -z'], 'universal_h_m': 'C-1'}, {'hall': '-P 2yb (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'B121/m1', 'hermann_mauguin_u': 'B12_1/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,-y-1/2,z+1/2'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'B2_1/m', 'symops': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y-1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,-y-1/2,z+1/2'], 'universal_h_m': 'B121/m1'}, {'hall': ' P 1 (-x,-1/2*y+1/2*z,1/2*y+1/2*z)', 'hermann_mauguin': 'P1', 'hermann_mauguin_u': 'P1', 'ncsym': ['x,y,z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'P1', 'symops': ['x,y,z', 'x,y+1/2,z+1/2'], 'universal_h_m': 'P1(-a,-b+c,b+c)'}, {'hall': ' P 1 (-1/2*x+1/2*z,-y,1/2*x+1/2*z)', 'hermann_mauguin': 'P1', 'hermann_mauguin_u': 'P1', 'ncsym': ['x,y,z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'P1', 'symops': ['x,y,z', 'x+1/2,y,z+1/2'], 'universal_h_m': 'P1(-a+c,-b,a+c)'}, {'hall': ' P 1 (-1/2*x+1/2*y+1/2*z,1/2*x-1/2*y+1/2*z,1/2*x+1/2*y-1/2*z)', 'hermann_mauguin': 'P1', 'hermann_mauguin_u': 'P1', 'ncsym': ['x,y,z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'P1', 'symops': ['x,y,z', 'x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'P1(b+c,a+c,a+b)'}, {'hall': ' P 1 (1/2*y+1/2*z,1/2*x+1/2*z,1/2*x+1/2*y)', 'hermann_mauguin': 'P1', 'hermann_mauguin_u': 'P1', 'ncsym': ['x,y,z'], 'number': 1, 'point_group': '1', 'schoenflies': 'C1^1', 'short_h_m': 'P1', 'symops': ['x,y,z', 'x,y+1/2,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,y+1/2,z'], 'universal_h_m': 'P1(-a+b+c,a-b+c,a+b-c)'}, {'hall': '-P 1 (1/2*y+1/2*z,1/2*x+1/2*z,1/2*x+1/2*y)', 'hermann_mauguin': 'P-1', 'hermann_mauguin_u': 'P-1', 'ncsym': ['x,y,z', '-x,-y,-z'], 'number': 2, 'point_group': '-1', 'schoenflies': 'Ci^1', 'short_h_m': 'P-1', 'symops': ['x,y,z', '-x,-y,-z', 'x,y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,-z'], 'universal_h_m': 'P-1(-a+b+c,a-b+c,a+b-c)'}, {'hall': ' P 2y (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P121', 'hermann_mauguin_u': 'P121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 3, 'point_group': '2', 'schoenflies': 'C2^1', 'short_h_m': 'P2', 'symops': ['x,y,z', '-x,y,-z', 'x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2'], 'universal_h_m': 'P121(2*a+c,b,c)'}, {'hall': ' C 2y (x-1/2*z,y,1/2*z)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,y,-z', 'x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'universal_h_m': 'C121(a,b,a+2*c)'}, {'hall': ' P 2y (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P121', 'hermann_mauguin_u': 'P121', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 3, 'point_group': '2', 'schoenflies': 'C2^1', 'short_h_m': 'P2', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z'], 'universal_h_m': 'P121(c,2*a+c,b)'}, {'hall': ' C 2y (1/2*z,x-1/2*z,y)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,-y,z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,-y,z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2'], 'universal_h_m': 'C121(a+2*c,a,b)'}, {'hall': ' C 2y (z,y+1/4,-x-1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y+1/2,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,y,-z+1/2', 'x,y+1/2,z+1/2', '-x,y+1/2,-z'], 'universal_h_m': 'C121(c-1/4,b-1/4,-a)'}, {'hall': ' C 2y (x+1/4,y+1/4,z)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y+1/2,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z'], 'universal_h_m': 'C121(a-1/4,b-1/4,c)'}, {'hall': ' C 2y (x+1/4,y+1/4,-x+z-1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y+1/2,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z'], 'universal_h_m': 'C121(a+c-1/4,b-1/4,c)'}, {'hall': ' C 2y (x-1/2*z+1/4,y+1/4,1/2*z)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,y+1/2,-z'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x+1/2,y,z+1/2', '-x,y,-z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'C121(a-1/4,b-1/4,a+2*c)'}, {'hall': ' C 2y (z,x+1/4,y+1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2'], 'universal_h_m': 'C121(c-1/4,a-1/4,b)'}, {'hall': ' C 2y (-x-1/4,z,y+1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,y,z+1/2', '-x,-y,z+1/2'], 'universal_h_m': 'C121(-a-1/4,c-1/4,b)'}, {'hall': ' P 2yb (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P1211', 'hermann_mauguin_u': 'P12_11', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'P2_1', 'symops': ['x,y,z', '-x,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P1211(c,2*a+c,b)'}, {'hall': ' C 2y (-x+z-1/4,x+1/4,y+1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2'], 'universal_h_m': 'C121(c-1/4,a+c-1/4,b)'}, {'hall': ' C 2y (1/2*z,x-1/2*z+1/4,y+1/4)', 'hermann_mauguin': 'C121', 'hermann_mauguin_u': 'C121', 'ncsym': ['x,y,z', '-x,-y,z+1/2'], 'number': 5, 'point_group': '2', 'schoenflies': 'C2^3', 'short_h_m': 'C2', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,y+1/2,z', '-x+1/2,-y,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'C121(a+2*c-1/4,a-1/4,b)'}, {'hall': ' P -2y (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P1m1', 'hermann_mauguin_u': 'P1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', 'x,-y,z', 'x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P1m1(2*a+c,b,c)'}, {'hall': ' C -2y (x-1/2*z,y,1/2*z)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,-y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y,z', 'x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'C1m1(a,b,a+2*c)'}, {'hall': ' P -2y (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P1m1', 'hermann_mauguin_u': 'P1m1', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'P1m1(c,2*a+c,b)'}, {'hall': ' C -2y (1/2*z,x-1/2*z,y)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,y,-z', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z', 'x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,y,-z+1/2'], 'universal_h_m': 'C1m1(a+2*c,a,b)'}, {'hall': ' P -2y (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P1m1', 'hermann_mauguin_u': 'P1m1', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 6, 'point_group': 'm', 'schoenflies': 'Cs^1', 'short_h_m': 'Pm', 'symops': ['x,y,z', '-x,y,z', 'x,y+1/2,z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'P1m1(b,c,2*a+c)'}, {'hall': ' C -2y (y,1/2*z,x-1/2*z)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', '-x,y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x,y,z', 'x,y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'C1m1(b,a+2*c,a)'}, {'hall': ' C -2y (z,y+1/4,-x-1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'C1m1(c-1/4,b-1/4,-a)'}, {'hall': ' P -2yc (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P1c1', 'hermann_mauguin_u': 'P1c1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pc', 'symops': ['x,y,z', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'universal_h_m': 'P1c1(2*a+c,b,c)'}, {'hall': ' C -2y (x-1/2*z+1/4,y+1/4,1/2*z)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,-y,z+1/2'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y+1/2,z', 'x+1/2,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'C1m1(a-1/4,b-1/4,a+2*c)'}, {'hall': ' C -2y (x+1/4,y+1/4,-x+z-1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x+1/2,-y,z+1/2'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'C1m1(a+c-1/4,b-1/4,c)'}, {'hall': ' C -2y (x+1/4,y+1/4,z)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x+1/2,-y,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'C1m1(a-1/4,b-1/4,c)'}, {'hall': ' C -2y (-x-1/4,z,y+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,y,-z'], 'universal_h_m': 'C1m1(-a-1/4,c-1/4,b)'}, {'hall': ' P -2yc (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P1c1', 'hermann_mauguin_u': 'P1c1', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pc', 'symops': ['x,y,z', 'x+1/2,y,-z', 'x+1/2,y+1/2,z', 'x,y+1/2,-z'], 'universal_h_m': 'P1c1(c,2*a+c,b)'}, {'hall': ' C -2y (1/2*z,x-1/2*z+1/4,y+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x+1/2,y,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z+1/2', 'x,y+1/2,z+1/2', 'x,y+1/2,-z', 'x+1/2,y,z+1/2', 'x+1/2,y,-z'], 'universal_h_m': 'C1m1(a+2*c-1/4,a-1/4,b)'}, {'hall': ' C -2y (-x+z-1/4,x+1/4,y+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'C1m1(c-1/4,a+c-1/4,b)'}, {'hall': ' C -2y (z,x+1/4,y+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', 'x,y+1/2,-z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', 'x,y,-z+1/2', 'x,y+1/2,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'C1m1(c-1/4,a-1/4,b)'}, {'hall': ' P -2yc (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P1c1', 'hermann_mauguin_u': 'P1c1', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 7, 'point_group': 'm', 'schoenflies': 'Cs^2', 'short_h_m': 'Pc', 'symops': ['x,y,z', '-x,y+1/2,z', 'x,y+1/2,z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'P1c1(b,c,2*a+c)'}, {'hall': ' C -2y (y+1/4,-x-1/4,z)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x+1/2,y,z', 'x+1/2,y+1/2,z', '-x,y+1/2,z'], 'universal_h_m': 'C1m1(b-1/4,-a-1/4,c)'}, {'hall': ' C -2y (y+1/4,1/2*z,x-1/2*z+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', '-x,y+1/2,z'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x+1/2,y,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,y,z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,z'], 'universal_h_m': 'C1m1(b-1/4,a+2*c-1/4,a)'}, {'hall': ' C -2y (y+1/4,-x+z-1/4,x+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', '-x,y+1/2,z+1/2'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x+1/2,y,z', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'C1m1(b-1/4,c-1/4,a+c)'}, {'hall': ' C -2y (y+1/4,z,x+1/4)', 'hermann_mauguin': 'C1m1', 'hermann_mauguin_u': 'C1m1', 'ncsym': ['x,y,z', '-x,y,z+1/2'], 'number': 8, 'point_group': 'm', 'schoenflies': 'Cs^3', 'short_h_m': 'Cm', 'symops': ['x,y,z', '-x+1/2,y,z', 'x+1/2,y,z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'C1m1(b-1/4,c-1/4,a)'}, {'hall': '-P 2y (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P12/m1', 'hermann_mauguin_u': 'P12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P12/m1(2*a+c,b,c)'}, {'hall': '-C 2y (x-1/2*z,y,1/2*z)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,-z', 'x,-y,z', 'x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'C12/m1(a,b,a+2*c)'}, {'hall': '-P 2y (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P12/m1', 'hermann_mauguin_u': 'P12/m1', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'P12/m1(c,2*a+c,b)'}, {'hall': '-C 2y (1/2*z,x-1/2*z,y)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,-y,z', '-x,-y,-z', 'x,y,-z', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', 'x,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2'], 'universal_h_m': 'C12/m1(a+2*c,a,b)'}, {'hall': '-P 2y (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P12/m1', 'hermann_mauguin_u': 'P12/m1', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 10, 'point_group': '2/m', 'schoenflies': 'C2h^1', 'short_h_m': 'P2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z', 'x,y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'P12/m1(b,c,2*a+c)'}, {'hall': '-C 2y (y,1/2*z,x-1/2*z)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y,-z', '-x,-y,-z', '-x,y,z', 'x,y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'C12/m1(b,a+2*c,a)'}, {'hall': '-C 2y (z,y-1/4,-x-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y+1/2,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y,z+1/2'], 'universal_h_m': 'C12/m1(c-1/4,b+1/4,-a)'}, {'hall': '-C 2y (x+1/4,y-1/4,z)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y+1/2,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,-y,z'], 'universal_h_m': 'C12/m1(a-1/4,b+1/4,c)'}, {'hall': '-C 2y (x+1/4,y-1/4,-x+z-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y+1/2,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'C12/m1(a+c-1/4,b+1/4,c)'}, {'hall': '-C 2y (x-1/2*z+1/4,y-1/4,1/2*z)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,y+1/2,-z', '-x,-y,-z', 'x,-y+1/2,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'x,-y+1/2,z', 'x+1/2,y,z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'C12/m1(a-1/4,b+1/4,a+2*c)'}, {'hall': '-C 2y (z,x+1/4,y-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,-y+1/2,-z+1/2', 'x,y,-z+1/2', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,-y,-z', 'x,y+1/2,-z'], 'universal_h_m': 'C12/m1(c-1/4,a+1/4,b)'}, {'hall': '-C 2y (-x-1/4,z,y-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x+1/2,-y,-z+1/2', 'x,y,-z+1/2', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', '-x,-y,-z', 'x+1/2,y,-z'], 'universal_h_m': 'C12/m1(-a-1/4,c+1/4,b)'}, {'hall': '-P 2yb (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P121/m1', 'hermann_mauguin_u': 'P12_1/m1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'P2_1/m', 'symops': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'P121/m1(c,2*a+c,b)'}, {'hall': '-C 2y (-x+z-1/4,x+1/4,y-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'C12/m1(c-1/4,a+c+1/4,b)'}, {'hall': '-C 2y (1/2*z,x-1/2*z+1/4,y-1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,-y,-z', 'x,y,-z+1/2'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,-y+1/2,-z+1/2', 'x,y,-z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z', '-x+1/2,-y,-z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,-y,-z', 'x,y+1/2,-z', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y,-z'], 'universal_h_m': 'C12/m1(a+2*c-1/4,a+1/4,b)'}, {'hall': '-P 2yb (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P121/m1', 'hermann_mauguin_u': 'P12_1/m1', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z'], 'number': 11, 'point_group': '2/m', 'schoenflies': 'C2h^2', 'short_h_m': 'P2_1/m', 'symops': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z', 'x,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'P121/m1(b,c,2*a+c)'}, {'hall': '-C 2y (y-1/4,z,x+1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+1/2,y,z', 'x+1/2,y,z+1/2', 'x+1/2,-y,-z', '-x,-y,-z', '-x,y,z+1/2'], 'universal_h_m': 'C12/m1(b-1/4,c+1/4,a)'}, {'hall': '-C 2y (y-1/4,-x-1/4,z)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+1/2,y,z', 'x+1/2,y+1/2,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x,y+1/2,z'], 'universal_h_m': 'C12/m1(b-1/4,-a+1/4,c)'}, {'hall': '-C 2y (y-1/4,-x+z-1/4,x+1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y,-z', '-x,-y,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'C12/m1(b-1/4,c+1/4,a+c)'}, {'hall': '-C 2y (y-1/4,1/2*z,x-1/2*z+1/4)', 'hermann_mauguin': 'C12/m1', 'hermann_mauguin_u': 'C12/m1', 'ncsym': ['x,y,z', 'x+1/2,-y,-z', '-x,-y,-z', '-x+1/2,y,z'], 'number': 12, 'point_group': '2/m', 'schoenflies': 'C2h^3', 'short_h_m': 'C2/m', 'symops': ['x,y,z', 'x,-y,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+1/2,y,z', 'x,y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,-y,-z', '-x,-y,-z', '-x,y,z+1/2', 'x+1/2,y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', '-x,y+1/2,z'], 'universal_h_m': 'C12/m1(b-1/4,a+2*c+1/4,a)'}, {'hall': '-P 2yc (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P12/c1', 'hermann_mauguin_u': 'P12/c1', 'ncsym': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z+1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,-y,z'], 'universal_h_m': 'P12/c1(2*a+c,b,c)'}, {'hall': '-P 2yc (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P12/c1', 'hermann_mauguin_u': 'P12/c1', 'ncsym': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x+1/2,y,-z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x,-y,-z', 'x+1/2,y,-z', 'x+1/2,y+1/2,z', '-x,-y+1/2,z', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z'], 'universal_h_m': 'P12/c1(c,2*a+c,b)'}, {'hall': '-P 2yc (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P12/c1', 'hermann_mauguin_u': 'P12/c1', 'ncsym': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y+1/2,z'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', 'x,-y+1/2,-z', '-x,-y,-z', '-x,y+1/2,z', 'x,y+1/2,z+1/2', 'x,-y,-z+1/2', '-x,-y+1/2,-z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'P12/c1(b,c,2*a+c)'}, {'hall': '-P 2ybc (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'P121/c1', 'hermann_mauguin_u': 'P12_1/c1', 'ncsym': ['x,y,z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,-y+1/2,z+1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P121/c1(2*a+c,b,c)'}, {'hall': '-P 2ybc (-1/2*x+z,1/2*x,y)', 'hermann_mauguin': 'P121/c1', 'hermann_mauguin_u': 'P12_1/c1', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,-y,-z', 'x+1/2,y,-z+1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,-y,-z', 'x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'P121/c1(c,2*a+c,b)'}, {'hall': '-P 2ybc (y,-1/2*x+z,1/2*x)', 'hermann_mauguin': 'P121/c1', 'hermann_mauguin_u': 'P12_1/c1', 'ncsym': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x+1/2,y+1/2,z'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y,-z', '-x+1/2,y+1/2,z', 'x,y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x,-y+1/2,-z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'P121/c1(b,c,2*a+c)'}, {'hall': ' A 2 -2 (x,y-1/4,z+1/4)', 'hermann_mauguin': 'Amm2', 'hermann_mauguin_u': 'Amm2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Amm2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Amm2(a,b+1/4,c-1/4)'}, {'hall': ' A 2 -2b (y-1/4,-x,z+1/4)', 'hermann_mauguin': 'Aem2', 'hermann_mauguin_u': 'Aem2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Aem2', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,z', '-x,y,z', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', 'x,-y,z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'Aem2(b,-a+1/4,c-1/4)'}, {'hall': ' I 2 -2a (x+1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'Ima2', 'hermann_mauguin_u': 'Ima2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ima2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,y,z', 'x+1/2,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'Ima2(a-1/4,b-1/4,c+1/4)'}, {'hall': ' F 2 -2 (x,y+1/4,z+1/4)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z', 'x,-y,z+1/2'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Fmm2(a,b-1/4,c-1/4)'}, {'hall': ' A 2 -2b (x,y-1/4,z+1/4)', 'hermann_mauguin': 'Aem2', 'hermann_mauguin_u': 'Aem2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Aem2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,y+1/2,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'Aem2(a,b+1/4,c-1/4)'}, {'hall': ' A 2 -2 (y-1/4,-x,z+1/4)', 'hermann_mauguin': 'Amm2', 'hermann_mauguin_u': 'Amm2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Amm2', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,z', '-x+1/2,y,z', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y,z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'Amm2(b,-a+1/4,c-1/4)'}, {'hall': ' I 2 -2a (y+1/4,-x-1/4,z-1/4)', 'hermann_mauguin': 'Ima2', 'hermann_mauguin_u': 'Ima2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ima2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'Ima2(b-1/4,-a-1/4,c+1/4)'}, {'hall': ' F 2 -2 (x-1/4,y,z-1/4)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y,z+1/2', 'x,-y,z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x+1/2,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', '-x,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z', '-x,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Fmm2(a+1/4,b,c+1/4)'}, {'hall': ' A 2 -2b (-x,z+1/4,y-1/4)', 'hermann_mauguin': 'Aem2', 'hermann_mauguin_u': 'Aem2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Aem2', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,y,z+1/2', 'x,y,-z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', '-x,y+1/2,z', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'Aem2(-a,c+1/4,b-1/4)'}, {'hall': ' A 2 -2 (y-1/4,z+1/4,x)', 'hermann_mauguin': 'Amm2', 'hermann_mauguin_u': 'Amm2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Amm2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x,y,-z', '-x+1/2,y,z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z'], 'universal_h_m': 'Amm2(b,c+1/4,a-1/4)'}, {'hall': ' I 2 -2a (y+1/4,z-1/4,x+1/4)', 'hermann_mauguin': 'Ima2', 'hermann_mauguin_u': 'Ima2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ima2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y,-z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z'], 'universal_h_m': 'Ima2(b-1/4,c-1/4,a+1/4)'}, {'hall': ' F 2 -2 (y+1/4,z+1/4,x)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z', '-x,y+1/2,-z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x,y,-z', '-x+1/2,y,z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,y,-z+1/2', 'x+1/2,y,-z+1/2', '-x,y,z+1/2'], 'universal_h_m': 'Fmm2(b,c-1/4,a-1/4)'}, {'hall': ' A 2 -2 (-x,z+1/4,y-1/4)', 'hermann_mauguin': 'Amm2', 'hermann_mauguin_u': 'Amm2', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 38, 'point_group': 'mm2', 'schoenflies': 'C2v^14', 'short_h_m': 'Amm2', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x,y,z', 'x,y,-z+1/2', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', '-x,y+1/2,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'Amm2(-a,c+1/4,b-1/4)'}, {'hall': ' A 2 -2b (y-1/4,z+1/4,x)', 'hermann_mauguin': 'Aem2', 'hermann_mauguin_u': 'Aem2', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 39, 'point_group': 'mm2', 'schoenflies': 'C2v^15', 'short_h_m': 'Aem2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x+1/2,y,-z', '-x,y,z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'Aem2(b,c+1/4,a-1/4)'}, {'hall': ' I 2 -2a (-x-1/4,z-1/4,y+1/4)', 'hermann_mauguin': 'Ima2', 'hermann_mauguin_u': 'Ima2', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 46, 'point_group': 'mm2', 'schoenflies': 'C2v^22', 'short_h_m': 'Ima2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,y,z', 'x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'Ima2(-a-1/4,c-1/4,b+1/4)'}, {'hall': ' F 2 -2 (y,z-1/4,x-1/4)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y,z', '-x,y+1/2,-z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x,y,-z+1/2', 'x,y,-z+1/2', '-x,y,z', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', 'x,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y,-z', 'x+1/2,y,-z', '-x+1/2,y,z+1/2'], 'universal_h_m': 'Fmm2(b+1/4,c,a+1/4)'}, {'hall': ' F 2 -2 (x-1/4,y-1/4,z+1/2)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x+1/2,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x,-y+1/2,z+1/2', '-x,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Fmm2(a+1/4,b+1/4,c+1/2)'}, {'hall': ' F 2 -2 (y-1/4,z+1/2,x-1/4)', 'hermann_mauguin': 'Fmm2', 'hermann_mauguin_u': 'Fmm2', 'ncsym': ['x,y,z', 'x,y+1/2,-z', '-x,y+1/2,z', '-x,y,-z'], 'number': 42, 'point_group': 'mm2', 'schoenflies': 'C2v^18', 'short_h_m': 'Fmm2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x+1/2,y+1/2,z', '-x,y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,y,-z', 'x+1/2,y,-z', '-x,y,z+1/2'], 'universal_h_m': 'Fmm2(b+1/4,c+1/4,a+1/2)'}, {'hall': ' C 2 -2 (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cmm2', 'hermann_mauguin_u': 'Cmm2', 'ncsym': ['x,y,z', '-x,-y,z', '-x+1/2,y,z', 'x+1/2,-y,z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'Cmm2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x+1/2,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-x,-y,z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Cmm2(a-1/4,b-1/4,c)'}, {'hall': ' C 2 -2 (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cmm2', 'hermann_mauguin_u': 'Cmm2', 'ncsym': ['x,y,z', 'x,y,-z+1/2', '-x,y,z+1/2', '-x,y,-z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'Cmm2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x+1/2,y,z+1/2', '-x,y,-z', 'x+1/2,y,-z', '-x,y,z+1/2'], 'universal_h_m': 'Cmm2(b-1/4,c-1/4,a)'}, {'hall': ' A 2 -2ab (x,y-1/4,z+1/4)', 'hermann_mauguin': 'Aea2', 'hermann_mauguin_u': 'Aea2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Aea2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x+1/2,y+1/2,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Aea2(a,b+1/4,c-1/4)'}, {'hall': ' C 2c -2 (y+1/4,-x-1/4,z)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z+1/2', 'x+1/2,-y,z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmc21(b-1/4,-a-1/4,c)'}, {'hall': ' I 2 -2c (x+1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'Iba2', 'hermann_mauguin_u': 'Iba2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'number': 45, 'point_group': 'mm2', 'schoenflies': 'C2v^21', 'short_h_m': 'Iba2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x+1/2,y,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Iba2(a-1/4,b-1/4,c+1/4)'}, {'hall': ' A 2 -2ab (y-1/4,-x,z+1/4)', 'hermann_mauguin': 'Aea2', 'hermann_mauguin_u': 'Aea2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y+1/2,z', 'x,-y+1/2,z+1/2'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Aea2', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y+1/2,z', '-x,y+1/2,z', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', 'x,-y+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Aea2(b,-a+1/4,c-1/4)'}, {'hall': ' C 2c -2 (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x,y+1/2,z', 'x,-y+1/2,z+1/2'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmc21(a-1/4,b-1/4,c)'}, {'hall': ' C 2c -2 (-x-1/4,z,y+1/4)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', '-x,y+1/2,-z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x,y+1/2,-z', '-x,y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmc21(-a-1/4,c-1/4,b)'}, {'hall': ' A 2 -2ab (y-1/4,z+1/4,x)', 'hermann_mauguin': 'Aea2', 'hermann_mauguin_u': 'Aea2', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', '-x,y+1/2,-z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Aea2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x+1/2,y,-z+1/2', '-x,y,z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Aea2(b,c+1/4,a-1/4)'}, {'hall': ' I 2 -2c (y+1/4,z-1/4,x+1/4)', 'hermann_mauguin': 'Iba2', 'hermann_mauguin_u': 'Iba2', 'ncsym': ['x,y,z', 'x,y+1/2,-z+1/2', '-x,y,z+1/2', '-x,y+1/2,-z'], 'number': 45, 'point_group': 'mm2', 'schoenflies': 'C2v^21', 'short_h_m': 'Iba2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z', 'x+1/2,y,-z', '-x,y,z+1/2'], 'universal_h_m': 'Iba2(b-1/4,c-1/4,a+1/4)'}, {'hall': ' A 2 -2ab (-x,z+1/4,y-1/4)', 'hermann_mauguin': 'Aea2', 'hermann_mauguin_u': 'Aea2', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y+1/2,z', '-x,y+1/2,-z'], 'number': 41, 'point_group': 'mm2', 'schoenflies': 'C2v^17', 'short_h_m': 'Aea2', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,y,-z', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Aea2(-a,c+1/4,b-1/4)'}, {'hall': ' C 2c -2 (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', 'x+1/2,y,-z', '-x+1/2,y+1/2,z', '-x,y+1/2,-z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y+1/2,-z', 'x+1/2,y,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmc21(b-1/4,c-1/4,a)'}, {'hall': ' C 2 -2c (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Ccc2', 'hermann_mauguin_u': 'Ccc2', 'ncsym': ['x,y,z', '-x,-y,z', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'number': 37, 'point_group': 'mm2', 'schoenflies': 'C2v^13', 'short_h_m': 'Ccc2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x+1/2,y,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Ccc2(a-1/4,b-1/4,c)'}, {'hall': ' C 2 -2c (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Ccc2', 'hermann_mauguin_u': 'Ccc2', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', '-x,y,-z'], 'number': 37, 'point_group': 'mm2', 'schoenflies': 'C2v^13', 'short_h_m': 'Ccc2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Ccc2(b-1/4,c-1/4,a)'}, {'hall': ' A 2 -2a (x-1/4,y-1/4,z+1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', '-x,y,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Ama2(a+1/4,b+1/4,c-1/4)'}, {'hall': ' C 2c -2 (x,y-1/4,z)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y,z', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmc21(a,b+1/4,c)'}, {'hall': ' I 2 -2 (x,y+1/4,z)', 'hermann_mauguin': 'Imm2', 'hermann_mauguin_u': 'Imm2', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Imm2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Imm2(a,b-1/4,c)'}, {'hall': ' A 2 -2a (y-1/4,-x+1/4,z+1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,z', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y,z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Ama2(b+1/4,-a+1/4,c-1/4)'}, {'hall': ' C 2c -2 (y-1/4,-x,z)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmc21(b,-a+1/4,c)'}, {'hall': ' I 2 -2 (x+1/4,y,z-1/4)', 'hermann_mauguin': 'Imm2', 'hermann_mauguin_u': 'Imm2', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Imm2', 'symops': ['x,y,z', '-x+1/2,-y,z', '-x+1/2,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Imm2(a-1/4,b,c+1/4)'}, {'hall': ' C 2c -2 (y-1/4,z,x)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', 'x,y,-z', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmc21(b,c+1/4,a)'}, {'hall': ' A 2 -2a (y-1/4,z+1/4,x-1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', 'x,y,-z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Ama2(b+1/4,c+1/4,a-1/4)'}, {'hall': ' I 2 -2 (y+1/4,z,x)', 'hermann_mauguin': 'Imm2', 'hermann_mauguin_u': 'Imm2', 'ncsym': ['x,y,z', 'x,y,-z', '-x,y+1/2,z+1/2', '-x,y+1/2,-z+1/2'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Imm2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x,y,-z', '-x+1/2,y,z', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Imm2(b,c-1/4,a)'}, {'hall': ' A 2 -2a (-x+1/4,z+1/4,y-1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x,y,z', '-x+1/2,y+1/2,-z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x,y,z', 'x+1/2,y,-z+1/2', 'x,y+1/2,z+1/2', '-x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Ama2(-a+1/4,c+1/4,b-1/4)'}, {'hall': ' C 2c -2 (-x,z,y-1/4)', 'hermann_mauguin': 'Cmc21', 'hermann_mauguin_u': 'Cmc2_1', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x,y,z', '-x+1/2,y+1/2,-z'], 'number': 36, 'point_group': 'mm2', 'schoenflies': 'C2v^12', 'short_h_m': 'Cmc2_1', 'symops': ['x,y,z', '-x,y+1/2,-z+1/2', '-x,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmc21(-a,c+1/4,b)'}, {'hall': ' I 2 -2 (y,z-1/4,x+1/4)', 'hermann_mauguin': 'Imm2', 'hermann_mauguin_u': 'Imm2', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z', '-x,y,z', '-x+1/2,y+1/2,-z'], 'number': 44, 'point_group': 'mm2', 'schoenflies': 'C2v^20', 'short_h_m': 'Imm2', 'symops': ['x,y,z', '-x,y,-z+1/2', 'x,y,-z+1/2', '-x,y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Imm2(b-1/4,c,a+1/4)'}, {'hall': ' A 2 -2a (x,y-1/4,z+1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x,-y+1/2,z', '-x+1/2,y,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Ama2(a,b+1/4,c-1/4)'}, {'hall': ' A 2 -2a (y-1/4,-x,z+1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', '-x,-y,z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,z', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Ama2(b,-a+1/4,c-1/4)'}, {'hall': ' A 2 -2a (y-1/4,z+1/4,x)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y,z+1/2', '-x,y+1/2,-z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x+1/2,y,-z', 'x,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,y+1/2,-z', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Ama2(b,c+1/4,a-1/4)'}, {'hall': ' A 2 -2a (-x,z+1/4,y-1/4)', 'hermann_mauguin': 'Ama2', 'hermann_mauguin_u': 'Ama2', 'ncsym': ['x,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z'], 'number': 40, 'point_group': 'mm2', 'schoenflies': 'C2v^16', 'short_h_m': 'Ama2', 'symops': ['x,y,z', '-x,y,-z+1/2', '-x+1/2,y,z', 'x+1/2,y,-z+1/2', 'x,y+1/2,z+1/2', '-x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Ama2(-a,c+1/4,b-1/4)'}, {'hall': '-C 2 2c (z+1/4,x,y)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,z', '-x+1/2,-y,-z', '-x+1/2,y,z', 'x+1/2,-y,z', 'x+1/2,y,-z', 'x,y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2'], 'universal_h_m': 'Cccm(c,a,b-1/4)'}, {'hall': '-C 2 2c (y,z+1/4,x)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,z', 'x,-y,-z', '-x,-y+1/2,-z', 'x,-y+1/2,z', 'x,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,y,z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2'], 'universal_h_m': 'Cccm(b,c,a-1/4)'}, {'hall': '-C 2 2c (x,y,z+1/4)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z+1/2', 'x,y,-z+1/2', '-x,y,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Cccm(a,b,c-1/4)'}, {'hall': '-F 2 2 (x+1/4,y+1/4,z+1/4)', 'hermann_mauguin': 'Fmmm', 'hermann_mauguin_u': 'Fmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 69, 'point_group': 'mmm', 'schoenflies': 'D2h^23', 'short_h_m': 'Fmmm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y,-z', '-x,-y+1/2,-z', 'x+1/2,y,-z', '-x,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Fmmm(a-1/4,b-1/4,c-1/4)'}, {'hall': '-C 2 2c (z,x+1/4,y+1/4)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,z', '-x,-y+1/2,-z+1/2', '-x,y,z', 'x+1/2,-y+1/2,z', 'x+1/2,y,-z+1/2', 'x,y+1/2,z+1/2', 'x,-y,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,z+1/2', '-x,-y,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cccm(c-1/4,a-1/4,b)'}, {'hall': '-C 2 2c (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,-y,z', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y,-z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,-y,-z', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cccm(b-1/4,c-1/4,a)'}, {'hall': '-C 2 2c (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cccm', 'hermann_mauguin_u': 'Cccm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 66, 'point_group': 'mmm', 'schoenflies': 'D2h^20', 'short_h_m': 'Cccm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y,-z', '-x+1/2,y,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cccm(a-1/4,b-1/4,c)'}, {'hall': '-I 2 2 (x-1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'Immm', 'hermann_mauguin_u': 'Immm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 71, 'point_group': 'mmm', 'schoenflies': 'D2h^25', 'short_h_m': 'Immm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Immm(a+1/4,b-1/4,c+1/4)'}, {'hall': '-F 2 2 (x-1/4,y-1/4,z)', 'hermann_mauguin': 'Fmmm', 'hermann_mauguin_u': 'Fmmm', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y,-z', '-x,y,z+1/2', 'x,-y,z+1/2'], 'number': 69, 'point_group': 'mmm', 'schoenflies': 'D2h^23', 'short_h_m': 'Fmmm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'x,y,-z', '-x+1/2,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,y,-z+1/2', '-x,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Fmmm(a+1/4,b+1/4,c)'}, {'hall': '-F 2 2 (x+1/2,y-1/4,z-1/4)', 'hermann_mauguin': 'Fmmm', 'hermann_mauguin_u': 'Fmmm', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x+1/2,y,-z', '-x,y,z', 'x+1/2,-y,z'], 'number': 69, 'point_group': 'mmm', 'schoenflies': 'D2h^23', 'short_h_m': 'Fmmm', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x,y,z', 'x,-y+1/2,z', 'x,y+1/2,z+1/2', '-x,-y,z+1/2', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x,y+1/2,-z', '-x,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y,-z', '-x+1/2,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Fmmm(a+1/2,b+1/4,c+1/4)'}, {'hall': '-F 2 2 (x+1/4,y+1/2,z-1/4)', 'hermann_mauguin': 'Fmmm', 'hermann_mauguin_u': 'Fmmm', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y,-z', 'x,y+1/2,-z', '-x,y+1/2,z', 'x,-y,z'], 'number': 69, 'point_group': 'mmm', 'schoenflies': 'D2h^23', 'short_h_m': 'Fmmm', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y,z', 'x,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x,y,-z', '-x,-y,-z', 'x+1/2,y,-z', '-x,y,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Fmmm(a-1/4,b+1/2,c+1/4)'}, {'hall': '-I 2 2c (x,y,z-1/4)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,-z+1/2', 'x,y,-z+1/2', '-x,y,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'Ibam(a,b,c+1/4)'}, {'hall': '-C 2 2 (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cmmm', 'hermann_mauguin_u': 'Cmmm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Cmmm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'x,y,-z', '-x+1/2,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-x,-y,z', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Cmmm(a-1/4,b-1/4,c)'}, {'hall': '-I 2 2c (x-1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,-y,z'], 'universal_h_m': 'Ibam(a+1/4,b-1/4,c+1/4)'}, {'hall': '-I 2 2c (z-1/4,x,y)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x,-y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', 'x,-y,-z', '-x,y,-z', '-x,-y,z', '-x+1/2,-y,-z', '-x+1/2,y,z', 'x+1/2,-y,z', 'x+1/2,y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x,y+1/2,-z+1/2'], 'universal_h_m': 'Ibam(c,a,b+1/4)'}, {'hall': '-C 2 2 (z,x+1/4,y+1/4)', 'hermann_mauguin': 'Cmmm', 'hermann_mauguin_u': 'Cmmm', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z', '-x,y+1/2,z+1/2', 'x,-y,z+1/2'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Cmmm', 'symops': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,z', '-x,-y+1/2,-z+1/2', '-x,y,z', 'x,-y+1/2,z', 'x,y,-z+1/2', 'x,y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z', '-x,-y,z+1/2', '-x,-y,-z', '-x,y+1/2,z+1/2', 'x,-y,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'Cmmm(c-1/4,a-1/4,b)'}, {'hall': '-I 2 2c (z-1/4,x-1/4,y+1/4)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z', '-x,y+1/2,z+1/2', 'x,-y,z+1/2'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', 'x,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,z', '-x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,z', 'x+1/2,-y+1/2,z', 'x+1/2,y,-z+1/2', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,z+1/2', '-x,-y,-z', '-x,y+1/2,z+1/2', 'x,-y,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'Ibam(c+1/4,a-1/4,b+1/4)'}, {'hall': '-I 2 2c (y,z-1/4,x)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', '-x,y,-z', '-x,-y,z', 'x,-y,-z', '-x,-y+1/2,-z', 'x,-y+1/2,z', 'x,y+1/2,-z', '-x,y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y,-z+1/2', '-x+1/2,y,z+1/2'], 'universal_h_m': 'Ibam(b,c,a+1/4)'}, {'hall': '-C 2 2 (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cmmm', 'hermann_mauguin_u': 'Cmmm', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y,-z', '-x,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 65, 'point_group': 'mmm', 'schoenflies': 'D2h^19', 'short_h_m': 'Cmmm', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,-y,z', 'x,y,-z+1/2', '-x+1/2,y,z', 'x+1/2,y,z+1/2', '-x,y,-z', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x,-y,-z', 'x+1/2,-y,z+1/2', 'x+1/2,y,-z', '-x,y,z+1/2'], 'universal_h_m': 'Cmmm(b-1/4,c-1/4,a)'}, {'hall': '-I 2 2c (y+1/4,z-1/4,x-1/4)', 'hermann_mauguin': 'Ibam', 'hermann_mauguin_u': 'Ibam', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y,-z', '-x,y,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 72, 'point_group': 'mmm', 'schoenflies': 'D2h^26', 'short_h_m': 'Ibam', 'symops': ['x,y,z', '-x+1/2,y,-z+1/2', '-x+1/2,-y,z', 'x,-y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'x,-y+1/2,z', 'x,y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x,y+1/2,-z', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,-y,-z', 'x+1/2,-y,z+1/2', 'x+1/2,y,-z', '-x,y,z+1/2'], 'universal_h_m': 'Ibam(b+1/4,c-1/4,a+1/4)'}, {'hall': '-C 2c 2 (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,z', 'x,-y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x,-y+1/2,z', 'x,y,-z+1/2', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y+1/2,-z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z', '-x,-y,-z', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y,-z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmcm(b-1/4,c-1/4,a)'}, {'hall': '-C 2c 2 (z,y+1/4,-x-1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,-y+1/2,z', '-x+1/2,y,-z+1/2', '-x,-y+1/2,-z+1/2', '-x+1/2,y,z', 'x,y,-z+1/2', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', 'x+1/2,-y,-z', '-x,-y,z+1/2', '-x+1/2,y+1/2,-z', '-x,-y,-z', '-x+1/2,y+1/2,z+1/2', 'x,y+1/2,-z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmcm(c-1/4,b-1/4,-a)'}, {'hall': '-C 2c 2 (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmcm(a-1/4,b-1/4,c)'}, {'hall': '-C 2c 2 (-x-1/4,z,y+1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z+1/2', 'x,-y,-z+1/2', '-x+1/2,-y+1/2,z', '-x+1/2,-y,-z+1/2', 'x,-y+1/2,z', '-x+1/2,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x,y+1/2,-z', 'x+1/2,-y,-z', '-x,-y+1/2,z+1/2', '-x,-y,-z', 'x+1/2,-y+1/2,z+1/2', '-x,y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmcm(-a-1/4,c-1/4,b)'}, {'hall': '-C 2c 2 (z,x+1/4,y+1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z+1/2', '-x,y,-z+1/2', '-x+1/2,-y+1/2,z', '-x,-y+1/2,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z', 'x+1/2,y,-z+1/2', 'x,y+1/2,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z', '-x+1/2,-y,z+1/2', '-x,-y,-z', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmcm(c-1/4,a-1/4,b)'}, {'hall': '-C 2c 2 (y+1/4,-x-1/4,z)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/2,y,-z', 'x,-y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y,-z+1/2', 'x,-y+1/2,z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y,z+1/2', '-x,y+1/2,-z', 'x+1/2,-y,-z+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y,z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmcm(b-1/4,-a-1/4,c)'}, {'hall': '-C 2ac 2 (z,x+1/4,y+1/4)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x+1/2,y,-z', '-x+1/2,y,z+1/2', 'x,-y,z+1/2'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x,y,-z+1/2', '-x+1/2,-y,z', '-x,-y+1/2,-z+1/2', '-x+1/2,y+1/2,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,-z+1/2', 'x,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y+1/2,-z', '-x+1/2,-y+1/2,z+1/2', '-x,-y,-z', '-x+1/2,y,z+1/2', 'x,-y,z+1/2', 'x+1/2,y,-z'], 'universal_h_m': 'Cmce(c-1/4,a-1/4,b)'}, {'hall': '-C 2ac 2 (-x-1/4,z,y+1/4)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x,-y,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z', '-x,y,z+1/2', 'x,-y+1/2,z+1/2'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', '-x,y+1/2,-z+1/2', 'x,-y,-z+1/2', '-x,-y+1/2,z', '-x+1/2,-y,-z+1/2', 'x+1/2,-y+1/2,z', '-x+1/2,y,z', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z', 'x+1/2,-y,-z', '-x+1/2,-y+1/2,z+1/2', '-x,-y,-z', 'x,-y+1/2,z+1/2', '-x,y,z+1/2', 'x,y+1/2,-z'], 'universal_h_m': 'Cmce(-a-1/4,c-1/4,b)'}, {'hall': '-C 2ac 2 (y+1/4,z,x+1/4)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y,-z', 'x+1/2,y,-z', '-x,y+1/2,z', 'x+1/2,-y+1/2,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,z', 'x,-y+1/2,-z', '-x+1/2,-y,-z+1/2', 'x,-y+1/2,z+1/2', 'x,y,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,-y+1/2,z', 'x+1/2,y,-z', '-x,y+1/2,z'], 'universal_h_m': 'Cmce(b-1/4,c-1/4,a)'}, {'hall': '-C 2ac 2 (y+1/4,-x-1/4,z)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x,-y,-z+1/2', '-x+1/2,y,-z', '-x,-y,-z', 'x+1/2,y,-z+1/2', '-x,y,z+1/2', 'x+1/2,-y,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', '-x+1/2,y,-z', 'x,-y,-z+1/2', '-x+1/2,-y+1/2,-z', 'x,y+1/2,-z+1/2', 'x,-y+1/2,z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,-z', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z', 'x+1/2,y,-z+1/2', 'x+1/2,-y,z', '-x,y,z+1/2'], 'universal_h_m': 'Cmce(b-1/4,-a-1/4,c)'}, {'hall': '-C 2ac 2 (x+1/4,y+1/4,z)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x,y,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z+1/2', '-x,y+1/2,z', 'x,-y,z+1/2'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z', '-x,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,y,-z+1/2', '-x+1/2,y,z', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', 'x,y+1/2,-z+1/2', '-x,y+1/2,z', 'x,-y,z+1/2'], 'universal_h_m': 'Cmce(a-1/4,b-1/4,c)'}, {'hall': '-C 2ac 2 (z,y+1/4,-x-1/4)', 'hermann_mauguin': 'Cmce', 'hermann_mauguin_u': 'Cmce', 'ncsym': ['x,y,z', '-x,-y+1/2,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y,-z', '-x,-y,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y,z'], 'number': 64, 'point_group': 'mmm', 'schoenflies': 'D2h^18', 'short_h_m': 'Cmce', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x,-y+1/2,z', '-x+1/2,y,-z', '-x,-y+1/2,-z+1/2', '-x+1/2,y,z+1/2', 'x,y,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x,-y,z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x,-y,-z', '-x+1/2,y+1/2,z', 'x,y+1/2,-z', 'x+1/2,-y,z'], 'universal_h_m': 'Cmce(c-1/4,b-1/4,-a)'}, {'hall': '-C 2c 2 (z-1/4,x+1/2,y+1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y,z', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', 'x+1/2,-y,-z+1/2', '-x+1/2,y,-z+1/2', '-x,-y,z', '-x+1/2,-y,-z+1/2', '-x,y,z', 'x,-y,z', 'x+1/2,y,-z+1/2', 'x,y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x,-y+1/2,z+1/2', '-x+1/2,-y+1/2,-z', '-x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmcm(c+1/2,a-1/4,b+1/4)'}, {'hall': '-C 2c 2 (-x+1/2,z-1/4,y+1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y,z', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x,y+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', '-x,-y,z', '-x,-y+1/2,-z+1/2', 'x,-y,z', '-x,y,z', 'x,y+1/2,-z+1/2', 'x+1/2,y,z+1/2', '-x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,-z', '-x+1/2,-y,z+1/2', '-x+1/2,-y+1/2,-z', 'x+1/2,-y,z+1/2', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Cmcm(-a+1/2,c-1/4,b+1/4)'}, {'hall': '-I 2 2 (x,y,z+1/4)', 'hermann_mauguin': 'Immm', 'hermann_mauguin_u': 'Immm', 'ncsym': ['x,y,z', '-x,-y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x,y,z', 'x,-y,z'], 'number': 71, 'point_group': 'mmm', 'schoenflies': 'D2h^25', 'short_h_m': 'Immm', 'symops': ['x,y,z', '-x,-y,z', 'x,-y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z+1/2', 'x,y,-z+1/2', '-x,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Immm(a,b,c-1/4)'}, {'hall': '-C 2c 2 (y+1/4,z-1/4,x+1/2)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,z', 'x,-y,-z', '-x+1/2,-y+1/2,-z', 'x,-y,z', 'x,y,-z', '-x+1/2,y+1/2,z', 'x+1/2,y,z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y,-z+1/2', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmcm(b+1/2,c-1/4,a+1/4)'}, {'hall': '-C 2c 2 (y+1/4,-x+1/2,z-1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x+1/2,-y,z+1/2', '-x+1/2,y,-z+1/2', 'x,-y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', 'x,-y,z', '-x+1/2,y,z+1/2', 'x+1/2,y+1/2,z', '-x,-y+1/2,z+1/2', '-x,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z', '-x,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z', 'x+1/2,-y+1/2,z', '-x,y+1/2,z+1/2'], 'universal_h_m': 'Cmcm(b+1/2,-a-1/4,c+1/4)'}, {'hall': '-I 2 2 (x+1/4,y,z)', 'hermann_mauguin': 'Immm', 'hermann_mauguin_u': 'Immm', 'ncsym': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y,-z', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y+1/2,z+1/2', 'x,-y,z'], 'number': 71, 'point_group': 'mmm', 'schoenflies': 'D2h^25', 'short_h_m': 'Immm', 'symops': ['x,y,z', '-x+1/2,-y,z', 'x,-y,-z', '-x+1/2,y,-z', '-x+1/2,-y,-z', 'x,y,-z', '-x+1/2,y,z', 'x,-y,z', 'x+1/2,y+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'Immm(a-1/4,b,c)'}, {'hall': '-C 2c 2 (z-1/4,y+1/4,-x+1/2)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', 'x+1/2,-y+1/2,-z', '-x+1/2,-y+1/2,z', '-x,y,-z', '-x+1/2,-y+1/2,-z', '-x,y,z', 'x,y,-z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,-y,z+1/2', '-x,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', '-x,y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmcm(c+1/2,b-1/4,-a+1/4)'}, {'hall': '-C 2c 2 (x+1/2,y+1/4,z-1/4)', 'hermann_mauguin': 'Cmcm', 'hermann_mauguin_u': 'Cmcm', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 63, 'point_group': 'mmm', 'schoenflies': 'D2h^17', 'short_h_m': 'Cmcm', 'symops': ['x,y,z', '-x,-y+1/2,z+1/2', 'x,-y+1/2,-z+1/2', '-x,y,-z', '-x,-y+1/2,-z+1/2', 'x,y,-z', '-x,y,z', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y,-z+1/2', 'x+1/2,y+1/2,-z', '-x+1/2,y+1/2,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Cmcm(a+1/2,b-1/4,c+1/4)'}, {'hall': '-I 2 2 (x,y+1/4,z)', 'hermann_mauguin': 'Immm', 'hermann_mauguin_u': 'Immm', 'ncsym': ['x,y,z', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x,y,-z', '-x+1/2,-y,-z+1/2', 'x,y,-z', '-x,y,z', 'x+1/2,-y,z+1/2'], 'number': 71, 'point_group': 'mmm', 'schoenflies': 'D2h^25', 'short_h_m': 'Immm', 'symops': ['x,y,z', '-x,-y+1/2,z', 'x,-y+1/2,-z', '-x,y,-z', '-x,-y+1/2,-z', 'x,y,-z', '-x,y,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', 'x+1/2,-y,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'Immm(a,b-1/4,c)'}, {'hall': '-I 4 (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', '-x+1/2,-y,-z+1/2', 'y+1/2,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x,-z+1/2', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', '-x,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x+1/2,-z+1/2'], 'universal_h_m': 'I4/m(a+b,-a+b,c)'}, {'hall': '-P 4 (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P4/m', 'hermann_mauguin_u': 'P4/m', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z'], 'number': 83, 'point_group': '4/m', 'schoenflies': 'C4h^1', 'short_h_m': 'P4/m', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z'], 'universal_h_m': 'P4/m(a+b,-a+b,c)'}, {'hall': '-I 4 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x,-z', 'x,y,-z', '-y,x+1/2,-z', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-x,-y,-z', 'y,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-x,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x,-z+1/2'], 'universal_h_m': 'I4/m(a+b+1/2,-a+b,c)'}, {'hall': '-P 4c (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P42/m', 'hermann_mauguin_u': 'P4_2/m', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2'], 'number': 84, 'point_group': '4/m', 'schoenflies': 'C4h^2', 'short_h_m': 'P4_2/m', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z+1/2'], 'universal_h_m': 'P42/m(a+b,-a+b,c)'}, {'hall': '-I 4 (x+1/2,y,z)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', '-x,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y,-z', '-y+1/2,x+1/2,-z', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z+1/2'], 'universal_h_m': 'I4/m(a+1/2,b,c)'}, {'hall': '-I 4 (x+1/2,y,z+1/4)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', '-x,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z'], 'universal_h_m': 'I4/m(a+1/2,b,c-1/4)'}, {'hall': '-P 4 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P4/m', 'hermann_mauguin_u': 'P4/m', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z'], 'number': 83, 'point_group': '4/m', 'schoenflies': 'C4h^1', 'short_h_m': 'P4/m', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y,-z', '-y+1/2,x,-z', 'x+1/2,y+1/2,z', '-y,x+1/2,z', '-x,-y,z', 'y+1/2,-x,z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z'], 'universal_h_m': 'P4/m(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 (x+1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x,-z+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y,z+1/2', 'y+1/2,-x,z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z'], 'universal_h_m': 'I4/m(a-1/4,b-1/4,c+1/4)'}, {'hall': '-I 4 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z+1/4)', 'hermann_mauguin': 'I4/m', 'hermann_mauguin_u': 'I4/m', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z'], 'number': 87, 'point_group': '4/m', 'schoenflies': 'C4h^5', 'short_h_m': 'I4/m', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x,-z+1/2', 'x,y,-z+1/2', '-y,x+1/2,-z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-x,-y,-z+1/2', 'y,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x,-z+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-x,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y,-z', '-y+1/2,x+1/2,-z', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y+1/2,-z', '-y,x,-z'], 'universal_h_m': 'I4/m(a+b+1/2,-a+b,c-1/4)'}, {'hall': '-P 4c (1/2*x+1/2*y,-1/2*x+1/2*y,z+1/4)', 'hermann_mauguin': 'P42/m', 'hermann_mauguin_u': 'P4_2/m', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z'], 'number': 84, 'point_group': '4/m', 'schoenflies': 'C4h^2', 'short_h_m': 'P4_2/m', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-x,-y,-z+1/2', 'y,-x,-z', 'x,y,-z+1/2', '-y,x,-z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z'], 'universal_h_m': 'P42/m(a+b,-a+b,c-1/4)'}, {'hall': '-P 4c (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P42/m', 'hermann_mauguin_u': 'P4_2/m', 'ncsym': ['x,y,z', '-y,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z+1/2', '-x,-y,-z', 'y,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z+1/2'], 'number': 84, 'point_group': '4/m', 'schoenflies': 'C4h^2', 'short_h_m': 'P4_2/m', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z+1/2', 'x,y,-z', '-y+1/2,x,-z+1/2', 'x+1/2,y+1/2,z', '-y,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x,z+1/2', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2'], 'universal_h_m': 'P42/m(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 2 (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'y,x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', '-y+1/2,-x,-z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z+1/2', 'y+1/2,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x,-z+1/2', 'y+1/2,x,z+1/2', '-x+1/2,y,z+1/2', '-y+1/2,-x,z+1/2', 'x+1/2,-y,z+1/2', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x+1/2,-z+1/2', 'y,x+1/2,z+1/2', '-x,y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'I4/mmm(a+b,-a+b,c)'}, {'hall': '-P 4 2 (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P4/mmm', 'hermann_mauguin_u': 'P4/mmm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'y,x,z'], 'number': 123, 'point_group': '4/mmm', 'schoenflies': 'D4h^1', 'short_h_m': 'P4/mmm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'y,x,z', '-x,y,z', '-y,-x,z', 'x,-y,z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P4/mmm(a+b,-a+b,c)'}, {'hall': '-I 4 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z+1/2', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'y,x,z+1/2', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', '-y+1/2,-x,-z', 'x+1/2,-y,-z', 'y+1/2,x,-z', '-x+1/2,y,-z', '-x+1/2,-y,-z+1/2', 'y+1/2,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x,-z+1/2', 'y+1/2,x,z', '-x+1/2,y,z', '-y+1/2,-x,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', '-y,-x+1/2,-z', 'x,-y+1/2,-z', 'y,x+1/2,-z', '-x,y+1/2,-z', '-x,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x+1/2,-z+1/2', 'y,x+1/2,z', '-x,y+1/2,z', '-y,-x+1/2,z', 'x,-y+1/2,z'], 'universal_h_m': 'I4/mcm(a+b,-a+b,c)'}, {'hall': '-P 4 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P4/mcc', 'hermann_mauguin_u': 'P4/mcc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2'], 'number': 124, 'point_group': '4/mmm', 'schoenflies': 'D4h^2', 'short_h_m': 'P4/mcc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z+1/2', 'x,-y,-z+1/2', 'y,x,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'y,-x,-z', 'x,y,-z', '-y,x,-z', 'y,x,z+1/2', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P4/mcc(a+b,-a+b,c)'}, {'hall': '-I 4 2c (x,y,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x,-y,-z+1/2', 'y,-x,-z+1/2', 'x,y,-z+1/2', '-y,x,-z+1/2', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'y,x,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'I4/mcm(a,b,c+1/4)'}, {'hall': '-I 4 2 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z', 'y+1/2,x+1/2,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-y,-x,-z', 'x,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x,-z', 'x,y,-z', '-y,x+1/2,-z', 'y+1/2,x+1/2,z', '-x+1/2,y,z', '-y,-x,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y,-z', 'y,x,-z', '-x,y+1/2,-z', '-x,-y,-z', 'y,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z', 'y,x,z', '-x,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y,z', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-y+1/2,-x,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'y,x+1/2,z+1/2', '-x,y,z+1/2', '-y+1/2,-x,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x,-z+1/2', 'y+1/2,x,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'I4/mmm(a+b+1/2,-a+b,c)'}, {'hall': '-P 4 2 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P4/mmm', 'hermann_mauguin_u': 'P4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z', 'y+1/2,x+1/2,z'], 'number': 123, 'point_group': '4/mmm', 'schoenflies': 'D4h^1', 'short_h_m': 'P4/mmm', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y,-z', '-y+1/2,x,-z', 'y,x,z', '-x+1/2,y,z', '-y+1/2,-x+1/2,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-y,x+1/2,z', '-x,-y,z', 'y+1/2,-x,z', '-y,-x,-z', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', 'y+1/2,x+1/2,z', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z'], 'universal_h_m': 'P4/mmm(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 2c (x+1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z', 'y+1/2,x+1/2,z'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z', 'y,x,-z', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x,-z+1/2', '-x+1/2,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'y,x,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z', 'y+1/2,x+1/2,z'], 'universal_h_m': 'I4/mcm(a-1/4,b-1/4,c+1/4)'}, {'hall': '-I 4 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-x,-y,-z+1/2', 'y,-x,-z+1/2', 'x,y,-z+1/2', '-y,x,-z+1/2', 'y,x,z+1/2', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', '-y+1/2,-x,-z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y,-z', '-y+1/2,x,-z', 'y+1/2,x,z', '-x+1/2,y,z', '-y+1/2,-x,z', 'x+1/2,-y,z', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y+1/2,-z', '-y,x+1/2,-z', 'y,x+1/2,z', '-x,y+1/2,z', '-y,-x+1/2,z', 'x,-y+1/2,z'], 'universal_h_m': 'I4/mcm(a+b,-a+b,c+1/4)'}, {'hall': '-P 4 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z-1/4)', 'hermann_mauguin': 'P4/mcc', 'hermann_mauguin_u': 'P4/mcc', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 124, 'point_group': '4/mmm', 'schoenflies': 'D4h^2', 'short_h_m': 'P4/mcc', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-y,-x,-z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-x,-y,-z+1/2', 'y,-x,-z+1/2', 'x,y,-z+1/2', '-y,x,-z+1/2', 'y,x,z+1/2', '-x,y,z+1/2', '-y,-x,z+1/2', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P4/mcc(a+b,-a+b,c+1/4)'}, {'hall': '-I 4 2c (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-y,-x,-z+1/2', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x,-z', 'x,y,-z', '-y,x+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y,z+1/2', '-y,-x,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y,-z+1/2', 'y,x,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'y,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z', 'y,x,z+1/2', '-x,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-y+1/2,-x,-z', 'x+1/2,-y+1/2,-z', 'y,x+1/2,-z', '-x,y,-z', '-x,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', 'y,x+1/2,z', '-x,y,z', '-y+1/2,-x,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-y,-x+1/2,-z', 'x,-y,-z', 'y+1/2,x,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y+1/2,-z+1/2', '-y,x,-z+1/2', 'y+1/2,x,z', '-x+1/2,y+1/2,z', '-y,-x+1/2,z', 'x,-y,z'], 'universal_h_m': 'I4/mcm(a+b+1/2,-a+b,c)'}, {'hall': '-P 4 2c (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P4/mcc', 'hermann_mauguin_u': 'P4/mcc', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 124, 'point_group': '4/mmm', 'schoenflies': 'D4h^2', 'short_h_m': 'P4/mcc', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y,-z', '-y+1/2,x,-z', 'y,x,z+1/2', '-x+1/2,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-y,x+1/2,z', '-x,-y,z', 'y+1/2,-x,z', '-y,-x,-z+1/2', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P4/mcc(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 2 (x+1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x,-z+1/2', '-x+1/2,y,z', '-y+1/2,-x+1/2,z', 'x,-y+1/2,z', 'y,x,z', 'x+1/2,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z', '-y,-x,-z', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'I4/mmm(a-1/4,b-1/4,c+1/4)'}, {'hall': '-I 4 2 (x+1/2,y,z+1/4)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z', '-y+1/2,-x+1/2,z', 'x,-y,z', 'y+1/2,x+1/2,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x,y,z', '-y+1/2,-x+1/2,z', 'x,-y,z', 'y+1/2,x+1/2,z', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y,x,z+1/2'], 'universal_h_m': 'I4/mmm(a+1/2,b,c-1/4)'}, {'hall': '-I 4 2c (x+1/2,y,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x,-y,-z', 'y+1/2,x+1/2,-z', '-x,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z+1/2', 'y+1/2,x+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y+1/2,-z', '-y,x,-z', '-x+1/2,y+1/2,z', '-y,-x,z', 'x+1/2,-y+1/2,z', 'y,x,z'], 'universal_h_m': 'I4/mcm(a+1/2,b,c+1/4)'}, {'hall': '-P 4c 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P42/mcm', 'hermann_mauguin_u': 'P4_2/mcm', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'y,x,z+1/2'], 'number': 132, 'point_group': '4/mmm', 'schoenflies': 'D4h^10', 'short_h_m': 'P4_2/mcm', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-y,-x,-z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', 'y,x,z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P42/mcm(a+b,-a+b,c)'}, {'hall': '-I 4 2 (x+1/2,y,z)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-y,-x,-z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'y,x,z+1/2'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x,-y,-z', 'y+1/2,x+1/2,-z', '-x,y,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y,-z', '-y+1/2,x+1/2,-z', '-x,y,z', '-y+1/2,-x+1/2,z', 'x,-y,z', 'y+1/2,x+1/2,z', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y,x,z+1/2'], 'universal_h_m': 'I4/mmm(a+1/2,b,c)'}, {'hall': '-P 4c 2 (1/2*x+1/2*y,-1/2*x+1/2*y,z)', 'hermann_mauguin': 'P42/mmc', 'hermann_mauguin_u': 'P4_2/mmc', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'y,x,z'], 'number': 131, 'point_group': '4/mmm', 'schoenflies': 'D4h^9', 'short_h_m': 'P4_2/mmc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-y,-x,-z', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', 'y,x,z', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z', '-y+1/2,x+1/2,-z+1/2', 'y+1/2,x+1/2,z', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P42/mmc(a+b,-a+b,c)'}, {'hall': '-I 4 2c (x+1/2,y,z)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-y,-x,-z', '-x,-y,-z', 'y,-x,-z+1/2', 'x,y,-z', '-y,x,-z+1/2', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'y,x,z'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y+1/2,x+1/2,z', '-x,-y,z', 'y+1/2,-x+1/2,z', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y,-z', '-y+1/2,x+1/2,-z', '-x,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z+1/2', 'y+1/2,x+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y+1/2,z+1/2', 'y,-x,z+1/2', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z+1/2', '-x+1/2,y+1/2,z', '-y,-x,z', 'x+1/2,-y+1/2,z', 'y,x,z'], 'universal_h_m': 'I4/mcm(a+1/2,b,c)'}, {'hall': '-I 4 2c (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z', 'y,x,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-y,-x,-z', 'x,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x,-z+1/2', 'x,y,-z+1/2', '-y,x+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y,z+1/2', '-y,-x,z+1/2', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z', 'x+1/2,-y,-z', 'y,x,-z', '-x,y+1/2,-z', '-x,-y,-z+1/2', 'y,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x,-z+1/2', 'y,x,z+1/2', '-x,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y,z+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-y+1/2,-x,-z+1/2', 'x+1/2,-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x,y,-z+1/2', '-x,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y,-z', '-y+1/2,x+1/2,-z', 'y,x+1/2,z', '-x,y,z', '-y+1/2,-x,z', 'x+1/2,-y+1/2,z', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x,-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y+1/2,-z', '-y,x,-z', 'y+1/2,x,z', '-x+1/2,y+1/2,z', '-y,-x+1/2,z', 'x,-y,z'], 'universal_h_m': 'I4/mcm(a+b+1/2,-a+b,c+1/4)'}, {'hall': '-P 4c 2c (1/2*x+1/2*y,-1/2*x+1/2*y,z-1/4)', 'hermann_mauguin': 'P42/mcm', 'hermann_mauguin_u': 'P4_2/mcm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z', 'y,x,z+1/2'], 'number': 132, 'point_group': '4/mmm', 'schoenflies': 'D4h^10', 'short_h_m': 'P4_2/mcm', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-y,-x,-z', 'x,-y,-z+1/2', 'y,x,-z', '-x,y,-z+1/2', '-x,-y,-z+1/2', 'y,-x,-z', 'x,y,-z+1/2', '-y,x,-z', 'y,x,z+1/2', '-x,y,z', '-y,-x,z+1/2', 'x,-y,z', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z', 'x+1/2,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z', '-x+1/2,y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z'], 'universal_h_m': 'P42/mcm(a+b,-a+b,c+1/4)'}, {'hall': '-P 4c 2c (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P42/mcm', 'hermann_mauguin_u': 'P4_2/mcm', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', '-x,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y,z', 'y+1/2,x+1/2,z+1/2'], 'number': 132, 'point_group': '4/mmm', 'schoenflies': 'D4h^10', 'short_h_m': 'P4_2/mcm', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'x,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y,-z', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z+1/2', 'x,y,-z', '-y+1/2,x,-z+1/2', 'y,x,z+1/2', '-x+1/2,y,z', '-y+1/2,-x+1/2,z+1/2', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-y,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x,z+1/2', '-y,-x,-z+1/2', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y,z'], 'universal_h_m': 'P42/mcm(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 2c (x-1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'I4/mcm', 'hermann_mauguin_u': 'I4/mcm', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z', 'y,x,-z+1/2', '-x+1/2,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', '-x,y+1/2,z', '-y,-x,z+1/2', 'x+1/2,-y,z', 'y+1/2,x+1/2,z+1/2'], 'number': 140, 'point_group': '4/mmm', 'schoenflies': 'D4h^18', 'short_h_m': 'I4/mcm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', 'x,-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+1/2,y,-z', '-y,-x,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x,-z+1/2', 'x,y,-z+1/2', '-y,x+1/2,-z+1/2', '-x+1/2,y,z+1/2', '-y,-x,z+1/2', 'x,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x,z+1/2', '-x,-y,z+1/2', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z+1/2', 'y,x,-z+1/2', '-x,y+1/2,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', '-x,-y,-z', 'y,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z', '-x,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y,z', 'y,x,z'], 'universal_h_m': 'I4/mcm(a+1/4,b-1/4,c+1/4)'}, {'hall': '-I 4 2 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y+1/4,z+1/4)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', '-y,-x,-z+1/2', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x,-z+1/2', 'x,y,-z+1/2', '-y,x+1/2,-z+1/2', 'y+1/2,x+1/2,z', '-x+1/2,y,z', '-y,-x,z', 'x,-y+1/2,z', 'x+1/2,y+1/2,z', '-y+1/2,x,z', '-x,-y,z', 'y,-x+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y,-z+1/2', 'y,x,-z+1/2', '-x,y+1/2,-z+1/2', '-x,-y,-z+1/2', 'y,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x,-z+1/2', 'y,x,z', '-x,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y,z', 'x+1/2,y,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x,z+1/2', '-y+1/2,-x,-z', 'x+1/2,-y+1/2,-z', 'y,x+1/2,-z', '-x,y,-z', '-x,-y+1/2,-z', 'y,-x,-z', 'x+1/2,y,-z', '-y+1/2,x+1/2,-z', 'y,x+1/2,z+1/2', '-x,y,z+1/2', '-y+1/2,-x,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y+1/2,z+1/2', '-y,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x+1/2,z+1/2', '-y,-x+1/2,-z', 'x,-y,-z', 'y+1/2,x,-z', '-x+1/2,y+1/2,-z', '-x+1/2,-y,-z', 'y+1/2,-x+1/2,-z', 'x,y+1/2,-z', '-y,x,-z', 'y+1/2,x,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x,-y,z+1/2'], 'universal_h_m': 'I4/mmm(a+b+1/2,-a+b,c-1/4)'}, {'hall': '-P 4c 2 (1/2*x+1/2*y,-1/2*x+1/2*y,z+1/4)', 'hermann_mauguin': 'P42/mmc', 'hermann_mauguin_u': 'P4_2/mmc', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z'], 'number': 131, 'point_group': '4/mmm', 'schoenflies': 'D4h^9', 'short_h_m': 'P4_2/mmc', 'symops': ['x,y,z', '-y,x,z+1/2', '-x,-y,z', 'y,-x,z+1/2', '-y,-x,-z+1/2', 'x,-y,-z', 'y,x,-z+1/2', '-x,y,-z', '-x,-y,-z+1/2', 'y,-x,-z', 'x,y,-z+1/2', '-y,x,-z', 'y,x,z', '-x,y,z+1/2', '-y,-x,z', 'x,-y,z+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'x+1/2,-y+1/2,-z', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,-z', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z', 'y+1/2,x+1/2,z', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z+1/2'], 'universal_h_m': 'P42/mmc(a+b,-a+b,c-1/4)'}, {'hall': '-P 4c 2 (1/2*x+1/2*y-1/4,-1/2*x+1/2*y-1/4,z)', 'hermann_mauguin': 'P42/mmc', 'hermann_mauguin_u': 'P4_2/mmc', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z'], 'number': 131, 'point_group': '4/mmm', 'schoenflies': 'D4h^9', 'short_h_m': 'P4_2/mmc', 'symops': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', '-y+1/2,-x+1/2,-z', 'x,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y,-z+1/2', '-x+1/2,-y+1/2,-z', 'y,-x+1/2,-z+1/2', 'x,y,-z', '-y+1/2,x,-z+1/2', 'y,x,z', '-x+1/2,y,z+1/2', '-y+1/2,-x+1/2,z', 'x,-y+1/2,z+1/2', 'x+1/2,y+1/2,z', '-y,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x,z+1/2', '-y,-x,-z', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', 'y+1/2,x+1/2,z', '-x,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y,z+1/2'], 'universal_h_m': 'P42/mmc(a+b,-a+b+1/2,c)'}, {'hall': '-I 4 2 (x-1/4,y+1/4,z-1/4)', 'hermann_mauguin': 'I4/mmm', 'hermann_mauguin_u': 'I4/mmm', 'ncsym': ['x,y,z', '-y+1/2,x,z+1/2', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z+1/2', 'x,-y+1/2,-z+1/2', 'y,x,-z', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z+1/2', '-x,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z'], 'number': 139, 'point_group': '4/mmm', 'schoenflies': 'D4h^17', 'short_h_m': 'I4/mmm', 'symops': ['x,y,z', '-y,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x,z', 'x,-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-y,-x,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x,-z+1/2', 'x,y,-z+1/2', '-y,x+1/2,-z+1/2', '-x+1/2,y,z', '-y,-x,z', 'x,-y+1/2,z', 'y+1/2,x+1/2,z', 'x+1/2,y+1/2,z+1/2', '-y+1/2,x,z+1/2', '-x,-y,z+1/2', 'y,-x+1/2,z+1/2', 'x+1/2,-y,-z', 'y,x,-z', '-x,y+1/2,-z', '-y+1/2,-x+1/2,-z', '-x,-y,-z', 'y,-x+1/2,-z', 'x+1/2,y+1/2,-z', '-y+1/2,x,-z', '-x,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y,z+1/2', 'y,x,z+1/2'], 'universal_h_m': 'I4/mmm(a+1/4,b-1/4,c+1/4)'}, {'hall': '-P 6 (1/2*x,1/2*y,1/2*z)', 'hermann_mauguin': 'P6/m', 'hermann_mauguin_u': 'P6/m', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z'], 'number': 175, 'point_group': '6/m', 'schoenflies': 'C6h^1', 'short_h_m': 'P6/m', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'x+1/2,y,z', 'x-y+1/2,x,z', '-y+1/2,x-y,z', '-x+1/2,-y,z', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z', 'y+1/2,-x+y,-z', 'x+1/2,y,-z', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z', 'x,y+1/2,z', 'x-y,x+1/2,z', '-y,x-y+1/2,z', '-x,-y+1/2,z', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z', 'y,-x+y+1/2,-z', 'x,y+1/2,-z', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z', 'x,y,z+1/2', 'x-y,x,z+1/2', '-y,x-y,z+1/2', '-x,-y,z+1/2', '-x+y,-x,z+1/2', 'y,-x+y,z+1/2', '-x,-y,-z+1/2', '-x+y,-x,-z+1/2', 'y,-x+y,-z+1/2', 'x,y,-z+1/2', 'x-y,x,-z+1/2', '-y,x-y,-z+1/2', 'x+1/2,y,z+1/2', 'x-y+1/2,x,z+1/2', '-y+1/2,x-y,z+1/2', '-x+1/2,-y,z+1/2', '-x+y+1/2,-x,z+1/2', 'y+1/2,-x+y,z+1/2', '-x+1/2,-y,-z+1/2', '-x+y+1/2,-x,-z+1/2', 'y+1/2,-x+y,-z+1/2', 'x+1/2,y,-z+1/2', 'x-y+1/2,x,-z+1/2', '-y+1/2,x-y,-z+1/2', 'x,y+1/2,z+1/2', 'x-y,x+1/2,z+1/2', '-y,x-y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x+y,-x+1/2,z+1/2', 'y,-x+y+1/2,z+1/2', '-x,-y+1/2,-z+1/2', '-x+y,-x+1/2,-z+1/2', 'y,-x+y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', 'x-y,x+1/2,-z+1/2', '-y,x-y+1/2,-z+1/2', 'x+1/2,y+1/2,z+1/2', 'x-y+1/2,x+1/2,z+1/2', '-y+1/2,x-y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+y+1/2,-x+1/2,z+1/2', 'y+1/2,-x+y+1/2,z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+y+1/2,-x+1/2,-z+1/2', 'y+1/2,-x+y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x-y+1/2,x+1/2,-z+1/2', '-y+1/2,x-y+1/2,-z+1/2'], 'universal_h_m': 'P6/m(2*a,2*b,2*c)'}, {'hall': '-P 6 (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P6/m', 'hermann_mauguin_u': 'P6/m', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z'], 'number': 175, 'point_group': '6/m', 'schoenflies': 'C6h^1', 'short_h_m': 'P6/m', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'x+1/2,y,z', 'x-y+1/2,x,z', '-y+1/2,x-y,z', '-x+1/2,-y,z', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z', 'y+1/2,-x+y,-z', 'x+1/2,y,-z', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z', 'x,y+1/2,z', 'x-y,x+1/2,z', '-y,x-y+1/2,z', '-x,-y+1/2,z', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z', 'y,-x+y+1/2,-z', 'x,y+1/2,-z', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z'], 'universal_h_m': 'P6/m(2*a,2*b,c)'}, {'hall': '-P 6c (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P63/m', 'hermann_mauguin_u': 'P6_3/m', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2'], 'number': 176, 'point_group': '6/m', 'schoenflies': 'C6h^2', 'short_h_m': 'P6_3/m', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2', 'x+1/2,y,z', 'x-y+1/2,x,z+1/2', '-y+1/2,x-y,z', '-x+1/2,-y,z+1/2', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z+1/2', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z+1/2', 'y+1/2,-x+y,-z', 'x+1/2,y,-z+1/2', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z+1/2', 'x,y+1/2,z', 'x-y,x+1/2,z+1/2', '-y,x-y+1/2,z', '-x,-y+1/2,z+1/2', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z+1/2', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z+1/2', 'y,-x+y+1/2,-z', 'x,y+1/2,-z+1/2', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z+1/2', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z+1/2', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z+1/2', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z+1/2', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z+1/2', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z+1/2'], 'universal_h_m': 'P63/m(2*a,2*b,c)'}, {'hall': '-P 6 2 (1/2*x,1/2*y,1/2*z)', 'hermann_mauguin': 'P6/mmm', 'hermann_mauguin_u': 'P6/mmm', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'number': 191, 'point_group': '6/mmm', 'schoenflies': 'D6h^1', 'short_h_m': 'P6/mmm', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z', 'x+1/2,y,z', 'x-y+1/2,x,z', '-y+1/2,x-y,z', '-x+1/2,-y,z', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z', '-y+1/2,-x,-z', 'x-y+1/2,-y,-z', 'x+1/2,x-y,-z', 'y+1/2,x,-z', '-x+y+1/2,y,-z', '-x+1/2,-x+y,-z', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z', 'y+1/2,-x+y,-z', 'x+1/2,y,-z', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z', 'y+1/2,x,z', '-x+y+1/2,y,z', '-x+1/2,-x+y,z', '-y+1/2,-x,z', 'x-y+1/2,-y,z', 'x+1/2,x-y,z', 'x,y+1/2,z', 'x-y,x+1/2,z', '-y,x-y+1/2,z', '-x,-y+1/2,z', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z', '-y,-x+1/2,-z', 'x-y,-y+1/2,-z', 'x,x-y+1/2,-z', 'y,x+1/2,-z', '-x+y,y+1/2,-z', '-x,-x+y+1/2,-z', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z', 'y,-x+y+1/2,-z', 'x,y+1/2,-z', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z', 'y,x+1/2,z', '-x+y,y+1/2,z', '-x,-x+y+1/2,z', '-y,-x+1/2,z', 'x-y,-y+1/2,z', 'x,x-y+1/2,z', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,-z', 'x-y+1/2,-y+1/2,-z', 'x+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+y+1/2,y+1/2,-z', '-x+1/2,-x+y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,z', '-x+y+1/2,y+1/2,z', '-x+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,z', 'x-y+1/2,-y+1/2,z', 'x+1/2,x-y+1/2,z', 'x,y,z+1/2', 'x-y,x,z+1/2', '-y,x-y,z+1/2', '-x,-y,z+1/2', '-x+y,-x,z+1/2', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z+1/2', 'x,x-y,-z+1/2', 'y,x,-z+1/2', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/2', '-x,-y,-z+1/2', '-x+y,-x,-z+1/2', 'y,-x+y,-z+1/2', 'x,y,-z+1/2', 'x-y,x,-z+1/2', '-y,x-y,-z+1/2', 'y,x,z+1/2', '-x+y,y,z+1/2', '-x,-x+y,z+1/2', '-y,-x,z+1/2', 'x-y,-y,z+1/2', 'x,x-y,z+1/2', 'x+1/2,y,z+1/2', 'x-y+1/2,x,z+1/2', '-y+1/2,x-y,z+1/2', '-x+1/2,-y,z+1/2', '-x+y+1/2,-x,z+1/2', 'y+1/2,-x+y,z+1/2', '-y+1/2,-x,-z+1/2', 'x-y+1/2,-y,-z+1/2', 'x+1/2,x-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+y+1/2,y,-z+1/2', '-x+1/2,-x+y,-z+1/2', '-x+1/2,-y,-z+1/2', '-x+y+1/2,-x,-z+1/2', 'y+1/2,-x+y,-z+1/2', 'x+1/2,y,-z+1/2', 'x-y+1/2,x,-z+1/2', '-y+1/2,x-y,-z+1/2', 'y+1/2,x,z+1/2', '-x+y+1/2,y,z+1/2', '-x+1/2,-x+y,z+1/2', '-y+1/2,-x,z+1/2', 'x-y+1/2,-y,z+1/2', 'x+1/2,x-y,z+1/2', 'x,y+1/2,z+1/2', 'x-y,x+1/2,z+1/2', '-y,x-y+1/2,z+1/2', '-x,-y+1/2,z+1/2', '-x+y,-x+1/2,z+1/2', 'y,-x+y+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x-y,-y+1/2,-z+1/2', 'x,x-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x+y,y+1/2,-z+1/2', '-x,-x+y+1/2,-z+1/2', '-x,-y+1/2,-z+1/2', '-x+y,-x+1/2,-z+1/2', 'y,-x+y+1/2,-z+1/2', 'x,y+1/2,-z+1/2', 'x-y,x+1/2,-z+1/2', '-y,x-y+1/2,-z+1/2', 'y,x+1/2,z+1/2', '-x+y,y+1/2,z+1/2', '-x,-x+y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x-y,-y+1/2,z+1/2', 'x,x-y+1/2,z+1/2', 'x+1/2,y+1/2,z+1/2', 'x-y+1/2,x+1/2,z+1/2', '-y+1/2,x-y+1/2,z+1/2', '-x+1/2,-y+1/2,z+1/2', '-x+y+1/2,-x+1/2,z+1/2', 'y+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'x-y+1/2,-y+1/2,-z+1/2', 'x+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+y+1/2,y+1/2,-z+1/2', '-x+1/2,-x+y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z+1/2', '-x+y+1/2,-x+1/2,-z+1/2', 'y+1/2,-x+y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x-y+1/2,x+1/2,-z+1/2', '-y+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+y+1/2,y+1/2,z+1/2', '-x+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x-y+1/2,-y+1/2,z+1/2', 'x+1/2,x-y+1/2,z+1/2'], 'universal_h_m': 'P6/mmm(2*a,2*b,2*c)'}, {'hall': '-P 6 2 (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P6/mmm', 'hermann_mauguin_u': 'P6/mmm', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z'], 'number': 191, 'point_group': '6/mmm', 'schoenflies': 'D6h^1', 'short_h_m': 'P6/mmm', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z', 'x-y,-y,-z', 'x,x-y,-z', 'y,x,-z', '-x+y,y,-z', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z', '-x+y,y,z', '-x,-x+y,z', '-y,-x,z', 'x-y,-y,z', 'x,x-y,z', 'x+1/2,y,z', 'x-y+1/2,x,z', '-y+1/2,x-y,z', '-x+1/2,-y,z', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z', '-y+1/2,-x,-z', 'x-y+1/2,-y,-z', 'x+1/2,x-y,-z', 'y+1/2,x,-z', '-x+y+1/2,y,-z', '-x+1/2,-x+y,-z', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z', 'y+1/2,-x+y,-z', 'x+1/2,y,-z', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z', 'y+1/2,x,z', '-x+y+1/2,y,z', '-x+1/2,-x+y,z', '-y+1/2,-x,z', 'x-y+1/2,-y,z', 'x+1/2,x-y,z', 'x,y+1/2,z', 'x-y,x+1/2,z', '-y,x-y+1/2,z', '-x,-y+1/2,z', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z', '-y,-x+1/2,-z', 'x-y,-y+1/2,-z', 'x,x-y+1/2,-z', 'y,x+1/2,-z', '-x+y,y+1/2,-z', '-x,-x+y+1/2,-z', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z', 'y,-x+y+1/2,-z', 'x,y+1/2,-z', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z', 'y,x+1/2,z', '-x+y,y+1/2,z', '-x,-x+y+1/2,z', '-y,-x+1/2,z', 'x-y,-y+1/2,z', 'x,x-y+1/2,z', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,-z', 'x-y+1/2,-y+1/2,-z', 'x+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,-z', '-x+y+1/2,y+1/2,-z', '-x+1/2,-x+y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,z', '-x+y+1/2,y+1/2,z', '-x+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,z', 'x-y+1/2,-y+1/2,z', 'x+1/2,x-y+1/2,z'], 'universal_h_m': 'P6/mmm(2*a,2*b,c)'}, {'hall': '-P 6 2c (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P6/mcc', 'hermann_mauguin_u': 'P6/mcc', 'ncsym': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z+1/2', 'x-y,-y,-z+1/2', 'x,x-y,-z+1/2', 'y,x,-z+1/2', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z+1/2', '-x+y,y,z+1/2', '-x,-x+y,z+1/2', '-y,-x,z+1/2', 'x-y,-y,z+1/2', 'x,x-y,z+1/2'], 'number': 192, 'point_group': '6/mmm', 'schoenflies': 'D6h^2', 'short_h_m': 'P6/mcc', 'symops': ['x,y,z', 'x-y,x,z', '-y,x-y,z', '-x,-y,z', '-x+y,-x,z', 'y,-x+y,z', '-y,-x,-z+1/2', 'x-y,-y,-z+1/2', 'x,x-y,-z+1/2', 'y,x,-z+1/2', '-x+y,y,-z+1/2', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z', 'y,-x+y,-z', 'x,y,-z', 'x-y,x,-z', '-y,x-y,-z', 'y,x,z+1/2', '-x+y,y,z+1/2', '-x,-x+y,z+1/2', '-y,-x,z+1/2', 'x-y,-y,z+1/2', 'x,x-y,z+1/2', 'x+1/2,y,z', 'x-y+1/2,x,z', '-y+1/2,x-y,z', '-x+1/2,-y,z', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z', '-y+1/2,-x,-z+1/2', 'x-y+1/2,-y,-z+1/2', 'x+1/2,x-y,-z+1/2', 'y+1/2,x,-z+1/2', '-x+y+1/2,y,-z+1/2', '-x+1/2,-x+y,-z+1/2', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z', 'y+1/2,-x+y,-z', 'x+1/2,y,-z', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z', 'y+1/2,x,z+1/2', '-x+y+1/2,y,z+1/2', '-x+1/2,-x+y,z+1/2', '-y+1/2,-x,z+1/2', 'x-y+1/2,-y,z+1/2', 'x+1/2,x-y,z+1/2', 'x,y+1/2,z', 'x-y,x+1/2,z', '-y,x-y+1/2,z', '-x,-y+1/2,z', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z', '-y,-x+1/2,-z+1/2', 'x-y,-y+1/2,-z+1/2', 'x,x-y+1/2,-z+1/2', 'y,x+1/2,-z+1/2', '-x+y,y+1/2,-z+1/2', '-x,-x+y+1/2,-z+1/2', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z', 'y,-x+y+1/2,-z', 'x,y+1/2,-z', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z', 'y,x+1/2,z+1/2', '-x+y,y+1/2,z+1/2', '-x,-x+y+1/2,z+1/2', '-y,-x+1/2,z+1/2', 'x-y,-y+1/2,z+1/2', 'x,x-y+1/2,z+1/2', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,-z+1/2', 'x-y+1/2,-y+1/2,-z+1/2', 'x+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x+y+1/2,y+1/2,-z+1/2', '-x+1/2,-x+y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,z+1/2', '-x+y+1/2,y+1/2,z+1/2', '-x+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x-y+1/2,-y+1/2,z+1/2', 'x+1/2,x-y+1/2,z+1/2'], 'universal_h_m': 'P6/mcc(2*a,2*b,c)'}, {'hall': '-P 6c 2 (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P63/mcm', 'hermann_mauguin_u': 'P6_3/mcm', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z', 'x-y,-y,-z+1/2', 'x,x-y,-z', 'y,x,-z+1/2', '-x+y,y,-z', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2', 'y,x,z', '-x+y,y,z+1/2', '-x,-x+y,z', '-y,-x,z+1/2', 'x-y,-y,z', 'x,x-y,z+1/2'], 'number': 193, 'point_group': '6/mmm', 'schoenflies': 'D6h^3', 'short_h_m': 'P6_3/mcm', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z', 'x-y,-y,-z+1/2', 'x,x-y,-z', 'y,x,-z+1/2', '-x+y,y,-z', '-x,-x+y,-z+1/2', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2', 'y,x,z', '-x+y,y,z+1/2', '-x,-x+y,z', '-y,-x,z+1/2', 'x-y,-y,z', 'x,x-y,z+1/2', 'x+1/2,y,z', 'x-y+1/2,x,z+1/2', '-y+1/2,x-y,z', '-x+1/2,-y,z+1/2', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z+1/2', '-y+1/2,-x,-z', 'x-y+1/2,-y,-z+1/2', 'x+1/2,x-y,-z', 'y+1/2,x,-z+1/2', '-x+y+1/2,y,-z', '-x+1/2,-x+y,-z+1/2', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z+1/2', 'y+1/2,-x+y,-z', 'x+1/2,y,-z+1/2', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z+1/2', 'y+1/2,x,z', '-x+y+1/2,y,z+1/2', '-x+1/2,-x+y,z', '-y+1/2,-x,z+1/2', 'x-y+1/2,-y,z', 'x+1/2,x-y,z+1/2', 'x,y+1/2,z', 'x-y,x+1/2,z+1/2', '-y,x-y+1/2,z', '-x,-y+1/2,z+1/2', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z+1/2', '-y,-x+1/2,-z', 'x-y,-y+1/2,-z+1/2', 'x,x-y+1/2,-z', 'y,x+1/2,-z+1/2', '-x+y,y+1/2,-z', '-x,-x+y+1/2,-z+1/2', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z+1/2', 'y,-x+y+1/2,-z', 'x,y+1/2,-z+1/2', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z+1/2', 'y,x+1/2,z', '-x+y,y+1/2,z+1/2', '-x,-x+y+1/2,z', '-y,-x+1/2,z+1/2', 'x-y,-y+1/2,z', 'x,x-y+1/2,z+1/2', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z+1/2', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,-z', 'x-y+1/2,-y+1/2,-z+1/2', 'x+1/2,x-y+1/2,-z', 'y+1/2,x+1/2,-z+1/2', '-x+y+1/2,y+1/2,-z', '-x+1/2,-x+y+1/2,-z+1/2', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z+1/2', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z+1/2', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,z', '-x+y+1/2,y+1/2,z+1/2', '-x+1/2,-x+y+1/2,z', '-y+1/2,-x+1/2,z+1/2', 'x-y+1/2,-y+1/2,z', 'x+1/2,x-y+1/2,z+1/2'], 'universal_h_m': 'P63/mcm(2*a,2*b,c)'}, {'hall': '-P 6c 2c (1/2*x,1/2*y,z)', 'hermann_mauguin': 'P63/mmc', 'hermann_mauguin_u': 'P6_3/mmc', 'ncsym': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2', 'y,x,z+1/2', '-x+y,y,z', '-x,-x+y,z+1/2', '-y,-x,z', 'x-y,-y,z+1/2', 'x,x-y,z'], 'number': 194, 'point_group': '6/mmm', 'schoenflies': 'D6h^4', 'short_h_m': 'P6_3/mmc', 'symops': ['x,y,z', 'x-y,x,z+1/2', '-y,x-y,z', '-x,-y,z+1/2', '-x+y,-x,z', 'y,-x+y,z+1/2', '-y,-x,-z+1/2', 'x-y,-y,-z', 'x,x-y,-z+1/2', 'y,x,-z', '-x+y,y,-z+1/2', '-x,-x+y,-z', '-x,-y,-z', '-x+y,-x,-z+1/2', 'y,-x+y,-z', 'x,y,-z+1/2', 'x-y,x,-z', '-y,x-y,-z+1/2', 'y,x,z+1/2', '-x+y,y,z', '-x,-x+y,z+1/2', '-y,-x,z', 'x-y,-y,z+1/2', 'x,x-y,z', 'x+1/2,y,z', 'x-y+1/2,x,z+1/2', '-y+1/2,x-y,z', '-x+1/2,-y,z+1/2', '-x+y+1/2,-x,z', 'y+1/2,-x+y,z+1/2', '-y+1/2,-x,-z+1/2', 'x-y+1/2,-y,-z', 'x+1/2,x-y,-z+1/2', 'y+1/2,x,-z', '-x+y+1/2,y,-z+1/2', '-x+1/2,-x+y,-z', '-x+1/2,-y,-z', '-x+y+1/2,-x,-z+1/2', 'y+1/2,-x+y,-z', 'x+1/2,y,-z+1/2', 'x-y+1/2,x,-z', '-y+1/2,x-y,-z+1/2', 'y+1/2,x,z+1/2', '-x+y+1/2,y,z', '-x+1/2,-x+y,z+1/2', '-y+1/2,-x,z', 'x-y+1/2,-y,z+1/2', 'x+1/2,x-y,z', 'x,y+1/2,z', 'x-y,x+1/2,z+1/2', '-y,x-y+1/2,z', '-x,-y+1/2,z+1/2', '-x+y,-x+1/2,z', 'y,-x+y+1/2,z+1/2', '-y,-x+1/2,-z+1/2', 'x-y,-y+1/2,-z', 'x,x-y+1/2,-z+1/2', 'y,x+1/2,-z', '-x+y,y+1/2,-z+1/2', '-x,-x+y+1/2,-z', '-x,-y+1/2,-z', '-x+y,-x+1/2,-z+1/2', 'y,-x+y+1/2,-z', 'x,y+1/2,-z+1/2', 'x-y,x+1/2,-z', '-y,x-y+1/2,-z+1/2', 'y,x+1/2,z+1/2', '-x+y,y+1/2,z', '-x,-x+y+1/2,z+1/2', '-y,-x+1/2,z', 'x-y,-y+1/2,z+1/2', 'x,x-y+1/2,z', 'x+1/2,y+1/2,z', 'x-y+1/2,x+1/2,z+1/2', '-y+1/2,x-y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+y+1/2,-x+1/2,z', 'y+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'x-y+1/2,-y+1/2,-z', 'x+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,-z', '-x+y+1/2,y+1/2,-z+1/2', '-x+1/2,-x+y+1/2,-z', '-x+1/2,-y+1/2,-z', '-x+y+1/2,-x+1/2,-z+1/2', 'y+1/2,-x+y+1/2,-z', 'x+1/2,y+1/2,-z+1/2', 'x-y+1/2,x+1/2,-z', '-y+1/2,x-y+1/2,-z+1/2', 'y+1/2,x+1/2,z+1/2', '-x+y+1/2,y+1/2,z', '-x+1/2,-x+y+1/2,z+1/2', '-y+1/2,-x+1/2,z', 'x-y+1/2,-y+1/2,z+1/2', 'x+1/2,x-y+1/2,z'], 'universal_h_m': 'P63/mmc(2*a,2*b,c)'}, {'hall': '-F 2 2 3 (x+1/4,y+1/4,z+1/4)', 'hermann_mauguin': 'Fm-3', 'hermann_mauguin_u': 'Fm-3', 'ncsym': ['x,y,z', '-x,-y,z', 'x,-y,-z', '-x,y,-z', 'z,x,y', '-z,-x,y', 'z,-x,-y', '-z,x,-y', 'y,z,x', 'y,-z,-x', '-y,z,-x', '-y,-z,x', '-x+1/2,-y+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2'], 'number': 202, 'point_group': 'm-3', 'schoenflies': 'Th^3', 'short_h_m': 'Fm-3', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', 'z,x,y', '-z+1/2,-x+1/2,y', 'z,-x+1/2,-y+1/2', '-z+1/2,x,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z+1/2,x', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z', '-z+1/2,-x+1/2,-y+1/2', 'z,x,-y+1/2', '-z+1/2,x,y', 'z,-x+1/2,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z,x', 'y,-z+1/2,x', 'y,z,-x+1/2', 'x,y+1/2,z+1/2', '-x+1/2,-y,z+1/2', 'x,-y,-z', '-x+1/2,y+1/2,-z', 'z,x+1/2,y+1/2', '-z+1/2,-x,y+1/2', 'z,-x,-y', '-z+1/2,x+1/2,-y', 'y,z+1/2,x+1/2', 'y,-z,-x', '-y+1/2,z+1/2,-x', '-y+1/2,-z,x+1/2', '-x+1/2,-y,-z', 'x,y+1/2,-z', '-x+1/2,y+1/2,z+1/2', 'x,-y,z+1/2', '-z+1/2,-x,-y', 'z,x+1/2,-y', '-z+1/2,x+1/2,y+1/2', 'z,-x,y+1/2', '-y+1/2,-z,-x', '-y+1/2,z+1/2,x+1/2', 'y,-z,x+1/2', 'y,z+1/2,-x', 'x+1/2,y,z+1/2', '-x,-y+1/2,z+1/2', 'x+1/2,-y+1/2,-z', '-x,y,-z', 'z+1/2,x,y+1/2', '-z,-x+1/2,y+1/2', 'z+1/2,-x+1/2,-y', '-z,x,-y', 'y+1/2,z,x+1/2', 'y+1/2,-z+1/2,-x', '-y,z,-x', '-y,-z+1/2,x+1/2', '-x,-y+1/2,-z', 'x+1/2,y,-z', '-x,y,z+1/2', 'x+1/2,-y+1/2,z+1/2', '-z,-x+1/2,-y', 'z+1/2,x,-y', '-z,x,y+1/2', 'z+1/2,-x+1/2,y+1/2', '-y,-z+1/2,-x', '-y,z,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'y+1/2,z,-x', 'x+1/2,y+1/2,z', '-x,-y,z', 'x+1/2,-y,-z+1/2', '-x,y+1/2,-z+1/2', 'z+1/2,x+1/2,y', '-z,-x,y', 'z+1/2,-x,-y+1/2', '-z,x+1/2,-y+1/2', 'y+1/2,z+1/2,x', 'y+1/2,-z,-x+1/2', '-y,z+1/2,-x+1/2', '-y,-z,x', '-x,-y,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-x,y+1/2,z', 'x+1/2,-y,z', '-z,-x,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-z,x+1/2,y', 'z+1/2,-x,y', '-y,-z,-x+1/2', '-y,z+1/2,x', 'y+1/2,-z,x', 'y+1/2,z+1/2,-x+1/2'], 'universal_h_m': 'Fm-3(a-1/4,b-1/4,c-1/4)'}, {'hall': '-I 2 2 3 (x+1/4,y+1/4,z+1/4)', 'hermann_mauguin': 'Im-3', 'hermann_mauguin_u': 'Im-3', 'ncsym': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', 'z,x,y', '-z+1/2,-x+1/2,y', 'z,-x+1/2,-y+1/2', '-z+1/2,x,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z+1/2,x', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2', '-z,-x,-y', 'z+1/2,x+1/2,-y', '-z,x+1/2,y+1/2', 'z+1/2,-x,y+1/2', '-y,-z,-x', '-y,z+1/2,x+1/2', 'y+1/2,-z,x+1/2', 'y+1/2,z+1/2,-x'], 'number': 204, 'point_group': 'm-3', 'schoenflies': 'Th^5', 'short_h_m': 'Im-3', 'symops': ['x,y,z', '-x+1/2,-y+1/2,z', 'x,-y+1/2,-z+1/2', '-x+1/2,y,-z+1/2', 'z,x,y', '-z+1/2,-x+1/2,y', 'z,-x+1/2,-y+1/2', '-z+1/2,x,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', '-y+1/2,z,-x+1/2', '-y+1/2,-z+1/2,x', '-x+1/2,-y+1/2,-z+1/2', 'x,y,-z+1/2', '-x+1/2,y,z', 'x,-y+1/2,z', '-z+1/2,-x+1/2,-y+1/2', 'z,x,-y+1/2', '-z+1/2,x,y', 'z,-x+1/2,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z,x', 'y,-z+1/2,x', 'y,z,-x+1/2', 'x+1/2,y+1/2,z+1/2', '-x,-y,z+1/2', 'x+1/2,-y,-z', '-x,y+1/2,-z', 'z+1/2,x+1/2,y+1/2', '-z,-x,y+1/2', 'z+1/2,-x,-y', '-z,x+1/2,-y', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z,-x', '-y,z+1/2,-x', '-y,-z,x+1/2', '-x,-y,-z', 'x+1/2,y+1/2,-z', '-x,y+1/2,z+1/2', 'x+1/2,-y,z+1/2', '-z,-x,-y', 'z+1/2,x+1/2,-y', '-z,x+1/2,y+1/2', 'z+1/2,-x,y+1/2', '-y,-z,-x', '-y,z+1/2,x+1/2', 'y+1/2,-z,x+1/2', 'y+1/2,z+1/2,-x'], 'universal_h_m': 'Im-3(a-1/4,b-1/4,c-1/4)'}, {'hall': '-F 4a 2 3 (x-1/4,y-1/4,z-1/4)', 'hermann_mauguin': 'Fm-3c', 'hermann_mauguin_u': 'Fm-3c', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y,-z', 'y,x,-z', '-x,y,-z', '-y,-x,-z', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x,-y', 'x,z,-y', '-z,x,-y', '-x,-z,-y', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y,-x', '-y,-z,x', 'z,-y,x', '-z,y,x', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z+1/2,-x+1/2,-y+1/2', 'x+1/2,-z+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x+1/2,z+1/2,-y+1/2', '-z+1/2,x+1/2,y+1/2', '-x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x+1/2', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2'], 'number': 226, 'point_group': 'm-3m', 'schoenflies': 'Oh^6', 'short_h_m': 'Fm-3c', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', 'x,-y+1/2,-z+1/2', 'y+1/2,x,-z+1/2', '-x,y+1/2,-z+1/2', '-y+1/2,-x,-z+1/2', 'z,x,y', '-x,z,y', '-z,-x,y', 'x,-z,y', 'z,-x+1/2,-y+1/2', 'x+1/2,z,-y+1/2', '-z,x+1/2,-y+1/2', '-x+1/2,-z,-y+1/2', 'y,z,x', 'y,-z,-x', 'z,y,-x', '-y,z,-x', '-z,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x+1/2', '-z,y+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y+1/2,-x+1/2,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y+1/2,x+1/2,-z+1/2', '-x+1/2,y,z', '-y,-x+1/2,z', 'x+1/2,-y,z', 'y,x+1/2,z', '-z+1/2,-x+1/2,-y+1/2', 'x+1/2,-z+1/2,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x+1/2,z+1/2,-y+1/2', '-z+1/2,x,y', '-x,-z+1/2,y', 'z+1/2,-x,y', 'x,z+1/2,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y,x', 'y,z,-x+1/2', '-z+1/2,y,-x', 'z+1/2,-y,-x', 'x,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y+1/2,z+1/2', 'y,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z', '-x,y,-z', '-y+1/2,-x+1/2,-z', 'z,x+1/2,y+1/2', '-x,z+1/2,y+1/2', '-z,-x+1/2,y+1/2', 'x,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y', '-z,x,-y', '-x+1/2,-z+1/2,-y', 'y,z+1/2,x+1/2', 'y,-z+1/2,-x+1/2', 'z,y+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-z,-y,-x', '-y+1/2,-z,x+1/2', 'z,-y,x', '-z,y,x', '-x+1/2,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y,-z', '-y+1/2,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y,x,z+1/2', '-z+1/2,-x,-y', 'x+1/2,-z,-y', 'z+1/2,x,-y', '-x+1/2,z,-y', '-z+1/2,x+1/2,y+1/2', '-x,-z,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x,z,y+1/2', '-y+1/2,-z,-x', '-y+1/2,z,x', '-z+1/2,-y,x', 'y+1/2,-z,x', 'z+1/2,y+1/2,x+1/2', 'y,z+1/2,-x', '-z+1/2,y+1/2,-x+1/2', 'z+1/2,-y+1/2,-x+1/2', 'x+1/2,y,z+1/2', '-y+1/2,x,z+1/2', '-x+1/2,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y+1/2,-z', 'y,x,-z', '-x+1/2,y+1/2,-z', '-y,-x,-z', 'z+1/2,x,y+1/2', '-x+1/2,z,y+1/2', '-z+1/2,-x,y+1/2', 'x+1/2,-z,y+1/2', 'z+1/2,-x+1/2,-y', 'x,z,-y', '-z+1/2,x+1/2,-y', '-x,-z,-y', 'y+1/2,z,x+1/2', 'y+1/2,-z,-x+1/2', 'z+1/2,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x', '-y,-z+1/2,x+1/2', 'z+1/2,-y+1/2,x', '-z+1/2,y+1/2,x', '-x,-y+1/2,-z', 'y,-x+1/2,-z', 'x,y+1/2,-z', '-y,x+1/2,-z', '-x,y,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x,-y,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z,-x+1/2,-y', 'x,-z+1/2,-y', 'z,x+1/2,-y', '-x,z+1/2,-y', '-z,x,y+1/2', '-x+1/2,-z+1/2,y+1/2', 'z,-x,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y,-z+1/2,-x', '-y,z+1/2,x', '-z,-y+1/2,x', 'y,-z+1/2,x', 'z,y,x+1/2', 'y+1/2,z,-x', '-z,y,-x+1/2', 'z,-y,-x+1/2', 'x+1/2,y+1/2,z', '-y+1/2,x+1/2,z', '-x+1/2,-y+1/2,z', 'y+1/2,-x+1/2,z', 'x+1/2,-y,-z+1/2', 'y,x+1/2,-z+1/2', '-x+1/2,y,-z+1/2', '-y,-x+1/2,-z+1/2', 'z+1/2,x+1/2,y', '-x+1/2,z+1/2,y', '-z+1/2,-x+1/2,y', 'x+1/2,-z+1/2,y', 'z+1/2,-x,-y+1/2', 'x,z+1/2,-y+1/2', '-z+1/2,x,-y+1/2', '-x,-z+1/2,-y+1/2', 'y+1/2,z+1/2,x', 'y+1/2,-z+1/2,-x', 'z+1/2,y+1/2,-x', '-y+1/2,z+1/2,-x', '-z+1/2,-y,-x+1/2', '-y,-z,x', 'z+1/2,-y,x+1/2', '-z+1/2,y,x+1/2', '-x,-y,-z+1/2', 'y,-x,-z+1/2', 'x,y,-z+1/2', '-y,x,-z+1/2', '-x,y+1/2,z', '-y+1/2,-x,z', 'x,-y+1/2,z', 'y+1/2,x,z', '-z,-x,-y+1/2', 'x,-z,-y+1/2', 'z,x,-y+1/2', '-x,z,-y+1/2', '-z,x+1/2,y', '-x+1/2,-z,y', 'z,-x+1/2,y', 'x+1/2,z,y', '-y,-z,-x+1/2', '-y,z,x+1/2', '-z,-y,x+1/2', 'y,-z,x+1/2', 'z,y+1/2,x', 'y+1/2,z+1/2,-x+1/2', '-z,y+1/2,-x', 'z,-y+1/2,-x'], 'universal_h_m': 'Fm-3c(a+1/4,b+1/4,c+1/4)'}, {'hall': '-I 4 2 3 (x+1/4,y+1/4,z+1/4)', 'hermann_mauguin': 'Im-3m', 'hermann_mauguin_u': 'Im-3m', 'ncsym': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x+1/2,-y+1/2', 'x,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x', '-z+1/2,y,x', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z,-x,-y', 'x+1/2,-z,-y', 'z+1/2,x+1/2,-y', '-x,z+1/2,-y', '-z,x+1/2,y+1/2', '-x,-z,y+1/2', 'z+1/2,-x,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y,-z,-x', '-y,z+1/2,x+1/2', '-z,-y,x+1/2', 'y+1/2,-z,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x', '-z,y+1/2,-x', 'z+1/2,-y,-x'], 'number': 229, 'point_group': 'm-3m', 'schoenflies': 'Oh^9', 'short_h_m': 'Im-3m', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x+1/2,-y+1/2', 'x,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x', '-z+1/2,y,x', '-x+1/2,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x,-z+1/2', '-x+1/2,y,z', '-y+1/2,-x+1/2,z', 'x,-y+1/2,z', 'y,x,z', '-z+1/2,-x+1/2,-y+1/2', 'x,-z+1/2,-y+1/2', 'z,x,-y+1/2', '-x+1/2,z,-y+1/2', '-z+1/2,x,y', '-x+1/2,-z+1/2,y', 'z,-x+1/2,y', 'x,z,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z,x', '-z+1/2,-y+1/2,x', 'y,-z+1/2,x', 'z,y,x', 'y,z,-x+1/2', '-z+1/2,y,-x+1/2', 'z,-y+1/2,-x+1/2', 'x+1/2,y+1/2,z+1/2', '-y,x+1/2,z+1/2', '-x,-y,z+1/2', 'y+1/2,-x,z+1/2', 'x+1/2,-y,-z', 'y+1/2,x+1/2,-z', '-x,y+1/2,-z', '-y,-x,-z', 'z+1/2,x+1/2,y+1/2', '-x,z+1/2,y+1/2', '-z,-x,y+1/2', 'x+1/2,-z,y+1/2', 'z+1/2,-x,-y', 'x+1/2,z+1/2,-y', '-z,x+1/2,-y', '-x,-z,-y', 'y+1/2,z+1/2,x+1/2', 'y+1/2,-z,-x', 'z+1/2,y+1/2,-x', '-y,z+1/2,-x', '-z,-y,-x', '-y,-z,x+1/2', 'z+1/2,-y,x+1/2', '-z,y+1/2,x+1/2', '-x,-y,-z', 'y+1/2,-x,-z', 'x+1/2,y+1/2,-z', '-y,x+1/2,-z', '-x,y+1/2,z+1/2', '-y,-x,z+1/2', 'x+1/2,-y,z+1/2', 'y+1/2,x+1/2,z+1/2', '-z,-x,-y', 'x+1/2,-z,-y', 'z+1/2,x+1/2,-y', '-x,z+1/2,-y', '-z,x+1/2,y+1/2', '-x,-z,y+1/2', 'z+1/2,-x,y+1/2', 'x+1/2,z+1/2,y+1/2', '-y,-z,-x', '-y,z+1/2,x+1/2', '-z,-y,x+1/2', 'y+1/2,-z,x+1/2', 'z+1/2,y+1/2,x+1/2', 'y+1/2,z+1/2,-x', '-z,y+1/2,-x', 'z+1/2,-y,-x'], 'universal_h_m': 'Im-3m(a-1/4,b-1/4,c-1/4)'}, {'hall': '-F 4 2 3 (x+1/4,y+1/4,z+1/4)', 'hermann_mauguin': 'Fm-3m', 'hermann_mauguin_u': 'Fm-3m', 'ncsym': ['x,y,z', '-y+1/2,x+1/2,z+1/2', '-x,-y,z', 'y+1/2,-x+1/2,z+1/2', 'x,-y,-z', 'y+1/2,x+1/2,-z+1/2', '-x,y,-z', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z+1/2,y+1/2', '-z,-x,y', 'x+1/2,-z+1/2,y+1/2', 'z,-x,-y', 'x+1/2,z+1/2,-y+1/2', '-z,x,-y', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z,-x', 'z+1/2,y+1/2,-x+1/2', '-y,z,-x', '-z+1/2,-y+1/2,-x+1/2', '-y,-z,x', 'z+1/2,-y+1/2,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x+1/2,-y+1/2,-z+1/2', 'y,-x,-z', 'x+1/2,y+1/2,-z+1/2', '-y,x,-z', '-x+1/2,y+1/2,z+1/2', '-y,-x,z', 'x+1/2,-y+1/2,z+1/2', 'y,x,z', '-z+1/2,-x+1/2,-y+1/2', 'x,-z,-y', 'z+1/2,x+1/2,-y+1/2', '-x,z,-y', '-z+1/2,x+1/2,y+1/2', '-x,-z,y', 'z+1/2,-x+1/2,y+1/2', 'x,z,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z+1/2,x+1/2', '-z,-y,x', 'y+1/2,-z+1/2,x+1/2', 'z,y,x', 'y+1/2,z+1/2,-x+1/2', '-z,y,-x', 'z,-y,-x'], 'number': 225, 'point_group': 'm-3m', 'schoenflies': 'Oh^5', 'short_h_m': 'Fm-3m', 'symops': ['x,y,z', '-y+1/2,x,z', '-x+1/2,-y+1/2,z', 'y,-x+1/2,z', 'x,-y+1/2,-z+1/2', 'y,x,-z+1/2', '-x+1/2,y,-z+1/2', '-y+1/2,-x+1/2,-z+1/2', 'z,x,y', '-x+1/2,z,y', '-z+1/2,-x+1/2,y', 'x,-z+1/2,y', 'z,-x+1/2,-y+1/2', 'x,z,-y+1/2', '-z+1/2,x,-y+1/2', '-x+1/2,-z+1/2,-y+1/2', 'y,z,x', 'y,-z+1/2,-x+1/2', 'z,y,-x+1/2', '-y+1/2,z,-x+1/2', '-z+1/2,-y+1/2,-x+1/2', '-y+1/2,-z+1/2,x', 'z,-y+1/2,x', '-z+1/2,y,x', '-x+1/2,-y+1/2,-z+1/2', 'y,-x+1/2,-z+1/2', 'x,y,-z+1/2', '-y+1/2,x,-z+1/2', '-x+1/2,y,z', '-y+1/2,-x+1/2,z', 'x,-y+1/2,z', 'y,x,z', '-z+1/2,-x+1/2,-y+1/2', 'x,-z+1/2,-y+1/2', 'z,x,-y+1/2', '-x+1/2,z,-y+1/2', '-z+1/2,x,y', '-x+1/2,-z+1/2,y', 'z,-x+1/2,y', 'x,z,y', '-y+1/2,-z+1/2,-x+1/2', '-y+1/2,z,x', '-z+1/2,-y+1/2,x', 'y,-z+1/2,x', 'z,y,x', 'y,z,-x+1/2', '-z+1/2,y,-x+1/2', 'z,-y+1/2,-x+1/2', 'x,y+1/2,z+1/2', '-y+1/2,x+1/2,z+1/2', '-x+1/2,-y,z+1/2', 'y,-x,z+1/2', 'x,-y,-z', 'y,x+1/2,-z', '-x+1/2,y+1/2,-z', '-y+1/2,-x,-z', 'z,x+1/2,y+1/2', '-x+1/2,z+1/2,y+1/2', '-z+1/2,-x,y+1/2', 'x,-z,y+1/2', 'z,-x,-y', 'x,z+1/2,-y', '-z+1/2,x+1/2,-y', '-x+1/2,-z,-y', 'y,z+1/2,x+1/2', 'y,-z,-x', 'z,y+1/2,-x', '-y+1/2,z+1/2,-x', '-z+1/2,-y,-x', '-y+1/2,-z,x+1/2', 'z,-y,x+1/2', '-z+1/2,y+1/2,x+1/2', '-x+1/2,-y,-z', 'y,-x,-z', 'x,y+1/2,-z', '-y+1/2,x+1/2,-z', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x,z+1/2', 'x,-y,z+1/2', 'y,x+1/2,z+1/2', '-z+1/2,-x,-y', 'x,-z,-y', 'z,x+1/2,-y', '-x+1/2,z+1/2,-y', '-z+1/2,x+1/2,y+1/2', '-x+1/2,-z,y+1/2', 'z,-x,y+1/2', 'x,z+1/2,y+1/2', '-y+1/2,-z,-x', '-y+1/2,z+1/2,x+1/2', '-z+1/2,-y,x+1/2', 'y,-z,x+1/2', 'z,y+1/2,x+1/2', 'y,z+1/2,-x', '-z+1/2,y+1/2,-x', 'z,-y,-x', 'x+1/2,y,z+1/2', '-y,x,z+1/2', '-x,-y+1/2,z+1/2', 'y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,-z', 'y+1/2,x,-z', '-x,y,-z', '-y,-x+1/2,-z', 'z+1/2,x,y+1/2', '-x,z,y+1/2', '-z,-x+1/2,y+1/2', 'x+1/2,-z+1/2,y+1/2', 'z+1/2,-x+1/2,-y', 'x+1/2,z,-y', '-z,x,-y', '-x,-z+1/2,-y', 'y+1/2,z,x+1/2', 'y+1/2,-z+1/2,-x', 'z+1/2,y,-x', '-y,z,-x', '-z,-y+1/2,-x', '-y,-z+1/2,x+1/2', 'z+1/2,-y+1/2,x+1/2', '-z,y,x+1/2', '-x,-y+1/2,-z', 'y+1/2,-x+1/2,-z', 'x+1/2,y,-z', '-y,x,-z', '-x,y,z+1/2', '-y,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x,z+1/2', '-z,-x+1/2,-y', 'x+1/2,-z+1/2,-y', 'z+1/2,x,-y', '-x,z,-y', '-z,x,y+1/2', '-x,-z+1/2,y+1/2', 'z+1/2,-x+1/2,y+1/2', 'x+1/2,z,y+1/2', '-y,-z+1/2,-x', '-y,z,x+1/2', '-z,-y+1/2,x+1/2', 'y+1/2,-z+1/2,x+1/2', 'z+1/2,y,x+1/2', 'y+1/2,z,-x', '-z,y,-x', 'z+1/2,-y+1/2,-x', 'x+1/2,y+1/2,z', '-y,x+1/2,z', '-x,-y,z', 'y+1/2,-x,z', 'x+1/2,-y,-z+1/2', 'y+1/2,x+1/2,-z+1/2', '-x,y+1/2,-z+1/2', '-y,-x,-z+1/2', 'z+1/2,x+1/2,y', '-x,z+1/2,y', '-z,-x,y', 'x+1/2,-z,y', 'z+1/2,-x,-y+1/2', 'x+1/2,z+1/2,-y+1/2', '-z,x+1/2,-y+1/2', '-x,-z,-y+1/2', 'y+1/2,z+1/2,x', 'y+1/2,-z,-x+1/2', 'z+1/2,y+1/2,-x+1/2', '-y,z+1/2,-x+1/2', '-z,-y,-x+1/2', '-y,-z,x', 'z+1/2,-y,x', '-z,y+1/2,x', '-x,-y,-z+1/2', 'y+1/2,-x,-z+1/2', 'x+1/2,y+1/2,-z+1/2', '-y,x+1/2,-z+1/2', '-x,y+1/2,z', '-y,-x,z', 'x+1/2,-y,z', 'y+1/2,x+1/2,z', '-z,-x,-y+1/2', 'x+1/2,-z,-y+1/2', 'z+1/2,x+1/2,-y+1/2', '-x,z+1/2,-y+1/2', '-z,x+1/2,y', '-x,-z,y', 'z+1/2,-x,y', 'x+1/2,z+1/2,y', '-y,-z,-x+1/2', '-y,z+1/2,x', '-z,-y,x', 'y+1/2,-z,x', 'z+1/2,y+1/2,x', 'y+1/2,z+1/2,-x+1/2', '-z,y+1/2,-x+1/2', 'z+1/2,-y,-x+1/2'], 'universal_h_m': 'Fm-3m(a-1/4,b-1/4,c-1/4)'}, {'hall': ' P 4 -2ab (x,y,1/2*z)', 'hermann_mauguin': 'P4bm', 'hermann_mauguin_u': 'P4bm', 'ncsym': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z', 'x,y,z+1/2', '-y,x,z+1/2', '-x,-y,z+1/2', 'y,-x,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'number': 100, 'point_group': '4mm', 'schoenflies': 'C4v^2', 'short_h_m': 'P4bm', 'symops': ['x,y,z', '-y,x,z', '-x,-y,z', 'y,-x,z', '-x+1/2,y+1/2,z', '-y+1/2,-x+1/2,z', 'x+1/2,-y+1/2,z', 'y+1/2,x+1/2,z', 'x,y,z+1/2', '-y,x,z+1/2', '-x,-y,z+1/2', 'y,-x,z+1/2', '-x+1/2,y+1/2,z+1/2', '-y+1/2,-x+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'y+1/2,x+1/2,z+1/2'], 'universal_h_m': 'P4bm(a,b,2*c)'}, {'hall': ' C -2yc (1/2*x,y,-1/2*x+z)', 'hermann_mauguin': 'C1c1', 'hermann_mauguin_u': 'C1c1', 'ncsym': ['x,y,z', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,-y,z'], 'number': 9, 'point_group': 'm', 'schoenflies': 'Cs^4', 'short_h_m': 'Cc', 'symops': ['x,y,z', 'x,-y,z+1/2', 'x+1/2,y,z+1/2', 'x+1/2,-y,z', 'x+1/4,y+1/2,z+3/4', 'x+1/4,-y+1/2,z+1/4', 'x+3/4,y+1/2,z+1/4', 'x+3/4,-y+1/2,z+3/4'], 'universal_h_m': 'C1c1(2*a+c,b,c)'}, {'hall': ' P 2c -2 (1/2*x,y,z)', 'hermann_mauguin': 'Pmc21', 'hermann_mauguin_u': 'Pmc2_1', 'ncsym': ['x,y,z', '-x,y,z', 'x,-y,z+1/2', '-x,-y,z+1/2'], 'number': 26, 'point_group': 'mm2', 'schoenflies': 'C2v^2', 'short_h_m': 'Pmc2_1', 'symops': ['x,y,z', '-x,y,z', 'x,-y,z+1/2', '-x,-y,z+1/2', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,-y,z+1/2', '-x+1/2,-y,z+1/2'], 'universal_h_m': 'Pmc21(2*a,b,c)'}, {'hall': ' C 2 -2 (1/2*z,x,y)', 'hermann_mauguin': 'Cmm2', 'hermann_mauguin_u': 'Cmm2', 'ncsym': ['x,y,z', 'x,-y,z', 'x,y,-z', 'x,-y,-z'], 'number': 35, 'point_group': 'mm2', 'schoenflies': 'C2v^11', 'short_h_m': 'Cmm2', 'symops': ['x,y,z', 'x,-y,z', 'x,y,-z', 'x,-y,-z', 'x,y+1/2,z+1/2', 'x,-y+1/2,z+1/2', 'x,y+1/2,-z+1/2', 'x,-y+1/2,-z+1/2', 'x+1/2,y,z', 'x+1/2,-y,z', 'x+1/2,y,-z', 'x+1/2,-y,-z', 'x+1/2,y+1/2,z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x+1/2,y+1/2,-z+1/2', 'x+1/2,-y+1/2,-z+1/2'], 'universal_h_m': 'Cmm2(2*c,a,b)'}, {'hall': '-P 2ybc (-1/4*x+1/2*z,1/2*x,y)', 'hermann_mauguin': 'P121/c1', 'hermann_mauguin_u': 'P12_1/c1', 'ncsym': ['x,y,z', '-x+1/4,-y,z+1/2', '-x,-y,-z', 'x-1/4,y,-z-1/2'], 'number': 14, 'point_group': '2/m', 'schoenflies': 'C2h^5', 'short_h_m': 'P2_1/c', 'symops': ['x,y,z', '-x+1/4,-y,z+1/2', '-x,-y,-z', 'x-1/4,y,-z-1/2', 'x+3/4,y+1/2,z', '-x+1,-y+1/2,z+1/2', '-x+3/4,-y+1/2,-z', 'x+1/2,y+1/2,-z-1/2', 'x+1/4,y+1/2,z', '-x+1/2,-y+1/2,z+1/2', '-x+1/4,-y+1/2,-z', 'x,y+1/2,-z-1/2', 'x+1/2,y,z', '-x+3/4,-y,z+1/2', '-x+1/2,-y,-z', 'x+1/4,y,-z-1/2'], 'universal_h_m': 'P121/c1(2*c,2*a+c,b)'}, {'hall': '-P 2a 2a (1/2*y,z,x)', 'hermann_mauguin': 'Pmma', 'hermann_mauguin_u': 'Pmma', 'ncsym': ['x,y,z', '-x,y,z', 'x,y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,-z', '-x,-y,z-1/2', 'x,-y,z-1/2'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmma', 'symops': ['x,y,z', '-x,y,z', 'x,y,-z+1/2', '-x,y,-z+1/2', '-x,-y,-z', 'x,-y,-z', '-x,-y,z-1/2', 'x,-y,z-1/2', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,y,-z+1/2', '-x+1/2,y,-z+1/2', '-x+1/2,-y,-z', 'x+1/2,-y,-z', '-x+1/2,-y,z-1/2', 'x+1/2,-y,z-1/2'], 'universal_h_m': 'Pmma(2*b,c,a)'}, {'hall': '-P 2a 2a (1/2*y,z+1/3,x-1/4)', 'hermann_mauguin': 'Pmma', 'hermann_mauguin_u': 'Pmma', 'ncsym': ['x,y,z', '-x,y,z', 'x,y,-z', '-x,y,-z', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,y,-z', '-x+1/2,y,-z'], 'number': 51, 'point_group': 'mmm', 'schoenflies': 'D2h^5', 'short_h_m': 'Pmma', 'symops': ['x,y,z', '-x,y,z', 'x,y,-z', '-x,y,-z', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,y,-z', '-x+1/2,y,-z', '-x,-y+2/3,-z+1/2', 'x,-y+2/3,-z+1/2', '-x,-y+2/3,z+1/2', 'x,-y+2/3,z+1/2', '-x+1/2,-y+2/3,-z+1/2', 'x+1/2,-y+2/3,-z+1/2', '-x+1/2,-y+2/3,z+1/2', 'x+1/2,-y+2/3,z+1/2'], 'universal_h_m': 'Pmma(2*b+1/4,c,a-1/3)'}, {'hall': '-P 2yc (x,1/2*y,z)', 'hermann_mauguin': 'P12/c1', 'hermann_mauguin_u': 'P12/c1', 'ncsym': ['x,y,z', '-x,y,-z+1/2', 'x,y+1/2,z', '-x,y+1/2,-z+1/2'], 'number': 13, 'point_group': '2/m', 'schoenflies': 'C2h^4', 'short_h_m': 'P2/c', 'symops': ['x,y,z', '-x,y,-z+1/2', 'x,y+1/2,z', '-x,y+1/2,-z+1/2', '-x,-y,-z', 'x,-y,z+1/2', '-x,-y+1/2,-z', 'x,-y+1/2,z+1/2'], 'universal_h_m': 'P12/c1(a,2*b,c)'}, {'hall': '-P 2 2 (1/2*x,1/2*y,z)', 'hermann_mauguin': 'Pmmm', 'hermann_mauguin_u': 'Pmmm', 'ncsym': ['x,y,z', '-x,y,z', 'x,-y,z', '-x,-y,z', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,-y,z', '-x+1/2,-y,z'], 'number': 47, 'point_group': 'mmm', 'schoenflies': 'D2h^1', 'short_h_m': 'Pmmm', 'symops': ['x,y,z', '-x,y,z', 'x,-y,z', '-x,-y,z', 'x+1/2,y,z', '-x+1/2,y,z', 'x+1/2,-y,z', '-x+1/2,-y,z', 'x,y+1/2,z', '-x,y+1/2,z', 'x,-y+1/2,z', '-x,-y+1/2,z', 'x+1/2,y+1/2,z', '-x+1/2,y+1/2,z', 'x+1/2,-y+1/2,z', '-x+1/2,-y+1/2,z', '-x,-y,-z', 'x,-y,-z', '-x,y,-z', 'x,y,-z', '-x+1/2,-y,-z', 'x+1/2,-y,-z', '-x+1/2,y,-z', 'x+1/2,y,-z', '-x,-y+1/2,-z', 'x,-y+1/2,-z', '-x,y+1/2,-z', 'x,y+1/2,-z', '-x+1/2,-y+1/2,-z', 'x+1/2,-y+1/2,-z', '-x+1/2,y+1/2,-z', 'x+1/2,y+1/2,-z'], 'universal_h_m': 'Pmmm(2*a,2*b,c)'}, {'hall': ' P 2yb (x+1/4,y,z)', 'hermann_mauguin': 'P1211', 'hermann_mauguin_u': 'P12_11', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z'], 'number': 4, 'point_group': '2', 'schoenflies': 'C2^2', 'short_h_m': 'P2_1', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z'], 'universal_h_m': 'P1211(a-1/4,b,c)'}, {'hall': '-P 2ac 2n (z,x,y+1/4)', 'hermann_mauguin': 'Pnma', 'hermann_mauguin_u': 'Pnma', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y,-z', '-x+1/2,y+1/2,z'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pnma', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y,-z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'Pnma(c,a-1/4,b)'}][source]
                                                                              -abbrev_sg_mapping = {'C2': 'C121', 'C2/c': 'C12/c1', 'C2/m': 'C12/m1', 'Cc': 'C1c1', 'Cm': 'C1m1', 'P2': 'P121', 'P2/c': 'P12/c1', 'P2/m': 'P12/m1', 'P2_1': 'P12_11', 'P2_1/c': 'P12_1/c1', 'P2_1/m': 'P12_1/m1', 'Pc': 'P1c1', 'Pm': 'P1m1'}[source]
                                                                              +abbrev_sg_mapping = {'C2': 'C121', 'C2/c': 'C12/c1', 'C2/m': 'C12/m1', 'Cc': 'C1c1', 'Cm': 'C1m1', 'P2': 'P121', 'P2/c': 'P12/c1', 'P2/m': 'P12/m1', 'P2_1': 'P12_11', 'P2_1/c': 'P12_1/c1', 'P2_1/m': 'P12_1/m1', 'Pc': 'P1c1', 'Pm': 'P1m1'}[source]
                                                                              -property crystal_system: CrystalSystem[source]
                                                                              +property crystal_system: CrystalSystem[source]

                                                                              Returns: str: Crystal system of the space group, e.g. cubic, hexagonal, etc.

                                                                              -classmethod from_int_number(int_number: int, hexagonal: bool = True) Self[source]
                                                                              +classmethod from_int_number(int_number: int, hexagonal: bool = True) Self[source]

                                                                              Obtains a SpaceGroup from its international number.

                                                                              Parameters:
                                                                              @@ -1388,17 +1385,17 @@

                                                                              Submodules
                                                                              -full_sg_mapping: ClassVar[dict[str, str]] = {'Aea2': 'Aea2', 'Aem2': 'Aem2', 'Ama2': 'Ama2', 'Amm2': 'Amm2', 'C12/c1': 'C12/c1', 'C12/m1': 'C12/m1', 'C121': 'C121', 'C1c1': 'C1c1', 'C1m1': 'C1m1', 'C2/c2/c2/e': 'Ccce', 'C2/c2/c2/m': 'Cccm', 'C2/m2/c2_1/e': 'Cmce', 'C2/m2/c2_1/m': 'Cmcm', 'C2/m2/m2/e': 'Cmme', 'C2/m2/m2/m': 'Cmmm', 'C222': 'C222', 'C222_1': 'C222_1', 'Ccc2': 'Ccc2', 'Cmc2_1': 'Cmc2_1', 'Cmm2': 'Cmm2', 'F-43c': 'F-43c', 'F-43m': 'F-43m', 'F2/d-3': 'Fd-3', 'F2/d2/d2/d': 'Fddd', 'F2/m-3': 'Fm-3', 'F2/m2/m2/m': 'Fmmm', 'F222': 'F222', 'F23': 'F23', 'F4/m-32/c': 'Fm-3c', 'F4/m-32/m': 'Fm-3m', 'F432': 'F432', 'F4_1/d-32/c': 'Fd-3c', 'F4_1/d-32/m': 'Fd-3m', 'F4_132': 'F4_132', 'Fdd2': 'Fdd2', 'Fmm2': 'Fmm2', 'I-4': 'I-4', 'I-42d': 'I-42d', 'I-42m': 'I-42m', 'I-43d': 'I-43d', 'I-43m': 'I-43m', 'I-4c2': 'I-4c2', 'I-4m2': 'I-4m2', 'I2/b2/a2/m': 'Ibam', 'I2/m-3': 'Im-3', 'I2/m2/m2/m': 'Immm', 'I222': 'I222', 'I23': 'I23', 'I2_1/a-3': 'Ia-3', 'I2_1/b2_1/c2_1/a': 'Ibca', 'I2_1/m2_1/m2_1/a': 'Imma', 'I2_12_12_1': 'I2_12_12_1', 'I2_13': 'I2_13', 'I4': 'I4', 'I4/m': 'I4/m', 'I4/m-32/m': 'Im-3m', 'I4/m2/c2/m': 'I4/mcm', 'I4/m2/m2/m': 'I4/mmm', 'I422': 'I422', 'I432': 'I432', 'I4_1': 'I4_1', 'I4_1/a': 'I4_1/a', 'I4_1/a-32/d': 'Ia-3d', 'I4_1/a2/c2/d': 'I4_1/acd', 'I4_1/a2/m2/d': 'I4_1/amd', 'I4_122': 'I4_122', 'I4_132': 'I4_132', 'I4_1cd': 'I4_1cd', 'I4_1md': 'I4_1md', 'I4cm': 'I4cm', 'I4mm': 'I4mm', 'Iba2': 'Iba2', 'Ima2': 'Ima2', 'Imm2': 'Imm2', 'P-1': 'P-1', 'P-3': 'P-3', 'P-312/c': 'P-31c', 'P-312/m': 'P-31m', 'P-32/c1': 'P-3c1', 'P-32/m1': 'P-3m1', 'P-4': 'P-4', 'P-42_1c': 'P-42_1c', 'P-42_1m': 'P-42_1m', 'P-42c': 'P-42c', 'P-42m': 'P-42m', 'P-43m': 'P-43m', 'P-43n': 'P-43n', 'P-4b2': 'P-4b2', 'P-4c2': 'P-4c2', 'P-4m2': 'P-4m2', 'P-4n2': 'P-4n2', 'P-6': 'P-6', 'P-62c': 'P-62c', 'P-62m': 'P-62m', 'P-6c2': 'P-6c2', 'P-6m2': 'P-6m2', 'P1': 'P1', 'P12/c1': 'P12/c1', 'P12/m1': 'P12/m1', 'P121': 'P121', 'P12_1/c1': 'P12_1/c1', 'P12_1/m1': 'P12_1/m1', 'P12_11': 'P12_11', 'P1c1': 'P1c1', 'P1m1': 'P1m1', 'P2/b2/a2/n': 'Pban', 'P2/b2_1/c2_1/m': 'Pbcm', 'P2/c2/c2/m': 'Pccm', 'P2/m-3': 'Pm-3', 'P2/m2/m2/m': 'Pmmm', 'P2/m2/n2_1/a': 'Pmna', 'P2/n-3': 'Pn-3', 'P2/n2/n2/n': 'Pnnn', 'P2/n2_1/n2/a': 'Pnna', 'P222': 'P222', 'P222_1': 'P222_1', 'P23': 'P23', 'P2_1/a-3': 'Pa-3', 'P2_1/b2/c2_1/n': 'Pbcn', 'P2_1/b2_1/a2/m': 'Pbam', 'P2_1/b2_1/c2_1/a': 'Pbca', 'P2_1/c2/c2/a': 'Pcca', 'P2_1/c2_1/c2/n': 'Pccn', 'P2_1/m2/m2/a': 'Pmma', 'P2_1/m2_1/m2/n': 'Pmmn', 'P2_1/n2_1/m2_1/a': 'Pnma', 'P2_1/n2_1/n2/m': 'Pnnm', 'P2_12_12': 'P2_12_12', 'P2_12_12_1': 'P2_12_12_1', 'P2_13': 'P2_13', 'P3': 'P3', 'P312': 'P312', 'P31c': 'P31c', 'P31m': 'P31m', 'P321': 'P321', 'P3_1': 'P3_1', 'P3_112': 'P3_112', 'P3_121': 'P3_121', 'P3_2': 'P3_2', 'P3_212': 'P3_212', 'P3_221': 'P3_221', 'P3c1': 'P3c1', 'P3m1': 'P3m1', 'P4': 'P4', 'P4/m': 'P4/m', 'P4/m-32/m': 'Pm-3m', 'P4/m2/c2/c': 'P4/mcc', 'P4/m2/m2/m': 'P4/mmm', 'P4/m2_1/b2/m': 'P4/mbm', 'P4/m2_1/n2/c': 'P4/mnc', 'P4/n': 'P4/n', 'P4/n-32/n': 'Pn-3n', 'P4/n2/b2/m': 'P4/nbm', 'P4/n2/n2/c': 'P4/nnc', 'P4/n2_1/c2/c': 'P4/ncc', 'P4/n2_1/m2/m': 'P4/nmm', 'P422': 'P422', 'P42_12': 'P42_12', 'P432': 'P432', 'P4_1': 'P4_1', 'P4_122': 'P4_122', 'P4_12_12': 'P4_12_12', 'P4_132': 'P4_132', 'P4_2': 'P4_2', 'P4_2/m': 'P4_2/m', 'P4_2/m-32/n': 'Pm-3n', 'P4_2/m2/c2/m': 'P4_2/mcm', 'P4_2/m2/m2/c': 'P4_2/mmc', 'P4_2/m2_1/b2/c': 'P4_2/mbc', 'P4_2/m2_1/n2/m': 'P4_2/mnm', 'P4_2/n': 'P4_2/n', 'P4_2/n-32/m': 'Pn-3m', 'P4_2/n2/b2/c': 'P4_2/nbc', 'P4_2/n2/n2/m': 'P4_2/nnm', 'P4_2/n2_1/c2/m': 'P4_2/ncm', 'P4_2/n2_1/m2/c': 'P4_2/nmc', 'P4_222': 'P4_222', 'P4_22_12': 'P4_22_12', 'P4_232': 'P4_232', 'P4_2bc': 'P4_2bc', 'P4_2cm': 'P4_2cm', 'P4_2mc': 'P4_2mc', 'P4_2nm': 'P4_2nm', 'P4_3': 'P4_3', 'P4_322': 'P4_322', 'P4_32_12': 'P4_32_12', 'P4_332': 'P4_332', 'P4bm': 'P4bm', 'P4cc': 'P4cc', 'P4mm': 'P4mm', 'P4nc': 'P4nc', 'P6': 'P6', 'P6/m': 'P6/m', 'P6/m2/c2/c': 'P6/mcc', 'P6/m2/m2/m': 'P6/mmm', 'P622': 'P622', 'P6_1': 'P6_1', 'P6_122': 'P6_122', 'P6_2': 'P6_2', 'P6_222': 'P6_222', 'P6_3': 'P6_3', 'P6_3/m': 'P6_3/m', 'P6_3/m2/c2/m': 'P6_3/mcm', 'P6_3/m2/m2/c': 'P6_3/mmc', 'P6_322': 'P6_322', 'P6_3cm': 'P6_3cm', 'P6_3mc': 'P6_3mc', 'P6_4': 'P6_4', 'P6_422': 'P6_422', 'P6_5': 'P6_5', 'P6_522': 'P6_522', 'P6cc': 'P6cc', 'P6mm': 'P6mm', 'Pba2': 'Pba2', 'Pca2_1': 'Pca2_1', 'Pcc2': 'Pcc2', 'Pma2': 'Pma2', 'Pmc2_1': 'Pmc2_1', 'Pmm2': 'Pmm2', 'Pmn2_1': 'Pmn2_1', 'Pna2_1': 'Pna2_1', 'Pnc2': 'Pnc2', 'Pnn2': 'Pnn2', 'R-3': 'R-3', 'R-32/c': 'R-3c', 'R-32/m': 'R-3m', 'R3': 'R3', 'R32': 'R32', 'R3c': 'R3c', 'R3m': 'R3m'}[source]
                                                                              +full_sg_mapping: ClassVar[dict[str, str]] = {'Aea2': 'Aea2', 'Aem2': 'Aem2', 'Ama2': 'Ama2', 'Amm2': 'Amm2', 'C12/c1': 'C12/c1', 'C12/m1': 'C12/m1', 'C121': 'C121', 'C1c1': 'C1c1', 'C1m1': 'C1m1', 'C2/c2/c2/e': 'Ccce', 'C2/c2/c2/m': 'Cccm', 'C2/m2/c2_1/e': 'Cmce', 'C2/m2/c2_1/m': 'Cmcm', 'C2/m2/m2/e': 'Cmme', 'C2/m2/m2/m': 'Cmmm', 'C222': 'C222', 'C222_1': 'C222_1', 'Ccc2': 'Ccc2', 'Cmc2_1': 'Cmc2_1', 'Cmm2': 'Cmm2', 'F-43c': 'F-43c', 'F-43m': 'F-43m', 'F2/d-3': 'Fd-3', 'F2/d2/d2/d': 'Fddd', 'F2/m-3': 'Fm-3', 'F2/m2/m2/m': 'Fmmm', 'F222': 'F222', 'F23': 'F23', 'F4/m-32/c': 'Fm-3c', 'F4/m-32/m': 'Fm-3m', 'F432': 'F432', 'F4_1/d-32/c': 'Fd-3c', 'F4_1/d-32/m': 'Fd-3m', 'F4_132': 'F4_132', 'Fdd2': 'Fdd2', 'Fmm2': 'Fmm2', 'I-4': 'I-4', 'I-42d': 'I-42d', 'I-42m': 'I-42m', 'I-43d': 'I-43d', 'I-43m': 'I-43m', 'I-4c2': 'I-4c2', 'I-4m2': 'I-4m2', 'I2/b2/a2/m': 'Ibam', 'I2/m-3': 'Im-3', 'I2/m2/m2/m': 'Immm', 'I222': 'I222', 'I23': 'I23', 'I2_1/a-3': 'Ia-3', 'I2_1/b2_1/c2_1/a': 'Ibca', 'I2_1/m2_1/m2_1/a': 'Imma', 'I2_12_12_1': 'I2_12_12_1', 'I2_13': 'I2_13', 'I4': 'I4', 'I4/m': 'I4/m', 'I4/m-32/m': 'Im-3m', 'I4/m2/c2/m': 'I4/mcm', 'I4/m2/m2/m': 'I4/mmm', 'I422': 'I422', 'I432': 'I432', 'I4_1': 'I4_1', 'I4_1/a': 'I4_1/a', 'I4_1/a-32/d': 'Ia-3d', 'I4_1/a2/c2/d': 'I4_1/acd', 'I4_1/a2/m2/d': 'I4_1/amd', 'I4_122': 'I4_122', 'I4_132': 'I4_132', 'I4_1cd': 'I4_1cd', 'I4_1md': 'I4_1md', 'I4cm': 'I4cm', 'I4mm': 'I4mm', 'Iba2': 'Iba2', 'Ima2': 'Ima2', 'Imm2': 'Imm2', 'P-1': 'P-1', 'P-3': 'P-3', 'P-312/c': 'P-31c', 'P-312/m': 'P-31m', 'P-32/c1': 'P-3c1', 'P-32/m1': 'P-3m1', 'P-4': 'P-4', 'P-42_1c': 'P-42_1c', 'P-42_1m': 'P-42_1m', 'P-42c': 'P-42c', 'P-42m': 'P-42m', 'P-43m': 'P-43m', 'P-43n': 'P-43n', 'P-4b2': 'P-4b2', 'P-4c2': 'P-4c2', 'P-4m2': 'P-4m2', 'P-4n2': 'P-4n2', 'P-6': 'P-6', 'P-62c': 'P-62c', 'P-62m': 'P-62m', 'P-6c2': 'P-6c2', 'P-6m2': 'P-6m2', 'P1': 'P1', 'P12/c1': 'P12/c1', 'P12/m1': 'P12/m1', 'P121': 'P121', 'P12_1/c1': 'P12_1/c1', 'P12_1/m1': 'P12_1/m1', 'P12_11': 'P12_11', 'P1c1': 'P1c1', 'P1m1': 'P1m1', 'P2/b2/a2/n': 'Pban', 'P2/b2_1/c2_1/m': 'Pbcm', 'P2/c2/c2/m': 'Pccm', 'P2/m-3': 'Pm-3', 'P2/m2/m2/m': 'Pmmm', 'P2/m2/n2_1/a': 'Pmna', 'P2/n-3': 'Pn-3', 'P2/n2/n2/n': 'Pnnn', 'P2/n2_1/n2/a': 'Pnna', 'P222': 'P222', 'P222_1': 'P222_1', 'P23': 'P23', 'P2_1/a-3': 'Pa-3', 'P2_1/b2/c2_1/n': 'Pbcn', 'P2_1/b2_1/a2/m': 'Pbam', 'P2_1/b2_1/c2_1/a': 'Pbca', 'P2_1/c2/c2/a': 'Pcca', 'P2_1/c2_1/c2/n': 'Pccn', 'P2_1/m2/m2/a': 'Pmma', 'P2_1/m2_1/m2/n': 'Pmmn', 'P2_1/n2_1/m2_1/a': 'Pnma', 'P2_1/n2_1/n2/m': 'Pnnm', 'P2_12_12': 'P2_12_12', 'P2_12_12_1': 'P2_12_12_1', 'P2_13': 'P2_13', 'P3': 'P3', 'P312': 'P312', 'P31c': 'P31c', 'P31m': 'P31m', 'P321': 'P321', 'P3_1': 'P3_1', 'P3_112': 'P3_112', 'P3_121': 'P3_121', 'P3_2': 'P3_2', 'P3_212': 'P3_212', 'P3_221': 'P3_221', 'P3c1': 'P3c1', 'P3m1': 'P3m1', 'P4': 'P4', 'P4/m': 'P4/m', 'P4/m-32/m': 'Pm-3m', 'P4/m2/c2/c': 'P4/mcc', 'P4/m2/m2/m': 'P4/mmm', 'P4/m2_1/b2/m': 'P4/mbm', 'P4/m2_1/n2/c': 'P4/mnc', 'P4/n': 'P4/n', 'P4/n-32/n': 'Pn-3n', 'P4/n2/b2/m': 'P4/nbm', 'P4/n2/n2/c': 'P4/nnc', 'P4/n2_1/c2/c': 'P4/ncc', 'P4/n2_1/m2/m': 'P4/nmm', 'P422': 'P422', 'P42_12': 'P42_12', 'P432': 'P432', 'P4_1': 'P4_1', 'P4_122': 'P4_122', 'P4_12_12': 'P4_12_12', 'P4_132': 'P4_132', 'P4_2': 'P4_2', 'P4_2/m': 'P4_2/m', 'P4_2/m-32/n': 'Pm-3n', 'P4_2/m2/c2/m': 'P4_2/mcm', 'P4_2/m2/m2/c': 'P4_2/mmc', 'P4_2/m2_1/b2/c': 'P4_2/mbc', 'P4_2/m2_1/n2/m': 'P4_2/mnm', 'P4_2/n': 'P4_2/n', 'P4_2/n-32/m': 'Pn-3m', 'P4_2/n2/b2/c': 'P4_2/nbc', 'P4_2/n2/n2/m': 'P4_2/nnm', 'P4_2/n2_1/c2/m': 'P4_2/ncm', 'P4_2/n2_1/m2/c': 'P4_2/nmc', 'P4_222': 'P4_222', 'P4_22_12': 'P4_22_12', 'P4_232': 'P4_232', 'P4_2bc': 'P4_2bc', 'P4_2cm': 'P4_2cm', 'P4_2mc': 'P4_2mc', 'P4_2nm': 'P4_2nm', 'P4_3': 'P4_3', 'P4_322': 'P4_322', 'P4_32_12': 'P4_32_12', 'P4_332': 'P4_332', 'P4bm': 'P4bm', 'P4cc': 'P4cc', 'P4mm': 'P4mm', 'P4nc': 'P4nc', 'P6': 'P6', 'P6/m': 'P6/m', 'P6/m2/c2/c': 'P6/mcc', 'P6/m2/m2/m': 'P6/mmm', 'P622': 'P622', 'P6_1': 'P6_1', 'P6_122': 'P6_122', 'P6_2': 'P6_2', 'P6_222': 'P6_222', 'P6_3': 'P6_3', 'P6_3/m': 'P6_3/m', 'P6_3/m2/c2/m': 'P6_3/mcm', 'P6_3/m2/m2/c': 'P6_3/mmc', 'P6_322': 'P6_322', 'P6_3cm': 'P6_3cm', 'P6_3mc': 'P6_3mc', 'P6_4': 'P6_4', 'P6_422': 'P6_422', 'P6_5': 'P6_5', 'P6_522': 'P6_522', 'P6cc': 'P6cc', 'P6mm': 'P6mm', 'Pba2': 'Pba2', 'Pca2_1': 'Pca2_1', 'Pcc2': 'Pcc2', 'Pma2': 'Pma2', 'Pmc2_1': 'Pmc2_1', 'Pmm2': 'Pmm2', 'Pmn2_1': 'Pmn2_1', 'Pna2_1': 'Pna2_1', 'Pnc2': 'Pnc2', 'Pnn2': 'Pnn2', 'R-3': 'R-3', 'R-32/c': 'R-3c', 'R-32/m': 'R-3m', 'R3': 'R3', 'R32': 'R32', 'R3c': 'R3c', 'R3m': 'R3m'}[source]

                                                                              -gen_matrices = {'a': [[1, 0, 0], [0, 1, 0], [0, 0, 1]], 'b': [[-1, 0, 0], [0, -1, 0], [0, 0, 1]], 'c': [[-1, 0, 0], [0, 1, 0], [0, 0, -1]], 'd': [[0, 0, 1], [1, 0, 0], [0, 1, 0]], 'e': [[0, 1, 0], [1, 0, 0], [0, 0, -1]], 'f': [[0, -1, 0], [-1, 0, 0], [0, 0, -1]], 'g': [[0, -1, 0], [1, 0, 0], [0, 0, 1]], 'h': [[-1, 0, 0], [0, -1, 0], [0, 0, -1]], 'i': [[1, 0, 0], [0, 1, 0], [0, 0, -1]], 'j': [[1, 0, 0], [0, -1, 0], [0, 0, 1]], 'k': [[0, -1, 0], [-1, 0, 0], [0, 0, 1]], 'l': [[0, 1, 0], [1, 0, 0], [0, 0, 1]], 'm': [[0, 1, 0], [-1, 0, 0], [0, 0, -1]], 'n': [[0, -1, 0], [1, -1, 0], [0, 0, 1]]}[source]
                                                                              +gen_matrices = {'a': [[1, 0, 0], [0, 1, 0], [0, 0, 1]], 'b': [[-1, 0, 0], [0, -1, 0], [0, 0, 1]], 'c': [[-1, 0, 0], [0, 1, 0], [0, 0, -1]], 'd': [[0, 0, 1], [1, 0, 0], [0, 1, 0]], 'e': [[0, 1, 0], [1, 0, 0], [0, 0, -1]], 'f': [[0, -1, 0], [-1, 0, 0], [0, 0, -1]], 'g': [[0, -1, 0], [1, 0, 0], [0, 0, 1]], 'h': [[-1, 0, 0], [0, -1, 0], [0, 0, -1]], 'i': [[1, 0, 0], [0, 1, 0], [0, 0, -1]], 'j': [[1, 0, 0], [0, -1, 0], [0, 0, 1]], 'k': [[0, -1, 0], [-1, 0, 0], [0, 0, 1]], 'l': [[0, 1, 0], [1, 0, 0], [0, 0, 1]], 'm': [[0, 1, 0], [-1, 0, 0], [0, 0, -1]], 'n': [[0, -1, 0], [1, -1, 0], [0, 0, 1]]}[source]
                                                                              -get_orbit(p: ArrayLike, tol: float = 1e-05) list[np.ndarray][source]
                                                                              +get_orbit(p: ArrayLike, tol: float = 1e-05) list[np.ndarray][source]

                                                                              Get the orbit for a point.

                                                                              Parameters:
                                                                              @@ -1420,7 +1417,7 @@

                                                                              Submodules
                                                                              -get_orbit_and_generators(p: ArrayLike, tol: float = 1e-05) tuple[list[np.ndarray], list[SymmOp]][source]
                                                                              +get_orbit_and_generators(p: ArrayLike, tol: float = 1e-05) tuple[list[np.ndarray], list[SymmOp]][source]

                                                                              Get the orbit and its generators for a point.

                                                                              Parameters:
                                                                              @@ -1442,7 +1439,7 @@

                                                                              Submodules
                                                                              -classmethod get_settings(int_symbol: str) set[str][source]
                                                                              +classmethod get_settings(int_symbol: str) set[str][source]

                                                                              Get all the settings for a particular international symbol.

                                                                              Parameters:
                                                                              @@ -1462,7 +1459,7 @@

                                                                              Submodules
                                                                              -is_compatible(lattice: Lattice, tol: float = 1e-05, angle_tol: float = 5) bool[source]
                                                                              +is_compatible(lattice: Lattice, tol: float = 1e-05, angle_tol: float = 5) bool[source]

                                                                              Check whether a particular lattice is compatible with the conventional unit cell.

                                                                              @@ -1479,7 +1476,7 @@

                                                                              Submodules
                                                                              -is_subgroup(supergroup: SymmetryGroup) bool[source]
                                                                              +is_subgroup(supergroup: SymmetryGroup) bool[source]

                                                                              Check if space group is a subgroup of the supplied symmetry group.

                                                                              Parameters:
                                                                              @@ -1496,7 +1493,7 @@

                                                                              Submodules
                                                                              -is_supergroup(subgroup: SymmetryGroup) bool[source]
                                                                              +is_supergroup(subgroup: SymmetryGroup) bool[source]

                                                                              True if this space group is a supergroup of the supplied group.

                                                                              Parameters:
                                                                              @@ -1513,24 +1510,24 @@

                                                                              Submodules
                                                                              -op = {'hall': '-P 2ac 2n (z,x,y+1/4)', 'hermann_mauguin': 'Pnma', 'hermann_mauguin_u': 'Pnma', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y,-z', '-x+1/2,y+1/2,z'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pnma', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y,-z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'Pnma(c,a-1/4,b)'}[source]
                                                                              +op = {'hall': '-P 2ac 2n (z,x,y+1/4)', 'hermann_mauguin': 'Pnma', 'hermann_mauguin_u': 'Pnma', 'ncsym': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y,-z', '-x+1/2,y+1/2,z'], 'number': 62, 'point_group': 'mmm', 'schoenflies': 'D2h^16', 'short_h_m': 'Pnma', 'symops': ['x,y,z', '-x+1/2,y+1/2,-z', '-x,-y,z+1/2', 'x+1/2,-y+1/2,-z+1/2', '-x,-y,-z+1/2', 'x+1/2,-y+1/2,z+1/2', 'x,y,-z', '-x+1/2,y+1/2,z'], 'universal_h_m': 'Pnma(c,a-1/4,b)'}[source]

                                                                              -sg_encoding = {'Aba2': {'enc': '03aODDbOOOjDDO0', 'full_symbol': 'Aea2', 'int_number': 41, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'Abm2': {'enc': '03aODDbOOOjODO0', 'full_symbol': 'Aem2', 'int_number': 39, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'Aea2': {'enc': '03aODDbOOOjDDO0', 'full_symbol': 'Aea2', 'int_number': 41, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'Aem2': {'enc': '03aODDbOOOjODO0', 'full_symbol': 'Aem2', 'int_number': 39, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'Ama2': {'enc': '03aODDbOOOjDOO0', 'full_symbol': 'Ama2', 'int_number': 40, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'Amm2': {'enc': '03aODDbOOOjOOO0', 'full_symbol': 'Amm2', 'int_number': 38, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'C12/c1': {'enc': '12aDDOcOOD0', 'full_symbol': 'C12/c1', 'int_number': 15, 'order': 8, 'patterson_symmetry': 'C12/m1', 'point_group': '2/m'}, 'C12/m1': {'enc': '12aDDOcOOO0', 'full_symbol': 'C12/m1', 'int_number': 12, 'order': 8, 'patterson_symmetry': 'C12/m1', 'point_group': '2/m'}, 'C121': {'enc': '02aDDOcOOO0', 'full_symbol': 'C121', 'int_number': 5, 'order': 4, 'patterson_symmetry': 'C12/m1', 'point_group': '2'}, 'C1c1': {'enc': '02aDDOjOOD0', 'full_symbol': 'C1c1', 'int_number': 9, 'order': 4, 'patterson_symmetry': 'C12/m1', 'point_group': 'm'}, 'C1m1': {'enc': '02aDDOjOOO0', 'full_symbol': 'C1m1', 'int_number': 8, 'order': 4, 'patterson_symmetry': 'C12/m1', 'point_group': 'm'}, 'C222': {'enc': '03aDDObOOOcOOO0', 'full_symbol': 'C222', 'int_number': 21, 'order': 8, 'patterson_symmetry': 'Cmmm', 'point_group': '222'}, 'C222_1': {'enc': '03aDDObOODcOOD0', 'full_symbol': 'C222_1', 'int_number': 20, 'order': 8, 'patterson_symmetry': 'Cmmm', 'point_group': '222'}, 'Ccc2': {'enc': '03aDDObOOOjOOD0', 'full_symbol': 'Ccc2', 'int_number': 37, 'order': 8, 'patterson_symmetry': 'Cmmm', 'point_group': 'mm2'}, 'Ccca': {'enc': '04aDDObDDOcOOOhODD1OBB', 'full_symbol': 'C2/c2/c2/e', 'int_number': 68, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Ccce': {'enc': '04aDDObDDOcOOOhODD1OBB', 'full_symbol': 'C2/c2/c2/e', 'int_number': 68, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cccm': {'enc': '13aDDObOOOcOOD0', 'full_symbol': 'C2/c2/c2/m', 'int_number': 66, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cmc2_1': {'enc': '03aDDObOODjOOD0', 'full_symbol': 'Cmc2_1', 'int_number': 36, 'order': 8, 'patterson_symmetry': 'Cmmm', 'point_group': 'mm2'}, 'Cmce': {'enc': '13aDDObODDcODD0', 'full_symbol': 'C2/m2/c2_1/e', 'int_number': 64, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cmcm': {'enc': '13aDDObOODcOOD0', 'full_symbol': 'C2/m2/c2_1/m', 'int_number': 63, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cmm2': {'enc': '03aDDObOOOjOOO0', 'full_symbol': 'Cmm2', 'int_number': 35, 'order': 8, 'patterson_symmetry': 'Cmmm', 'point_group': 'mm2'}, 'Cmma': {'enc': '13aDDObODOcODO0', 'full_symbol': 'C2/m2/m2/e', 'int_number': 67, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cmme': {'enc': '13aDDObODOcODO0', 'full_symbol': 'C2/m2/m2/e', 'int_number': 67, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cmmm': {'enc': '13aDDObOOOcOOO0', 'full_symbol': 'C2/m2/m2/m', 'int_number': 65, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'F-43c': {'enc': '06aODDaDODbOOOcOOOdOOOlDDD0', 'full_symbol': 'F-43c', 'int_number': 219, 'order': 96, 'patterson_symmetry': 'Fm-3m', 'point_group': '-43m'}, 'F-43m': {'enc': '06aODDaDODbOOOcOOOdOOOlOOO0', 'full_symbol': 'F-43m', 'int_number': 216, 'order': 96, 'patterson_symmetry': 'Fm-3m', 'point_group': '-43m'}, 'F222': {'enc': '04aODDaDODbOOOcOOO0', 'full_symbol': 'F222', 'int_number': 22, 'order': 16, 'patterson_symmetry': 'Fmmm', 'point_group': '222'}, 'F23': {'enc': '05aODDaDODbOOOcOOOdOOO0', 'full_symbol': 'F23', 'int_number': 196, 'order': 48, 'patterson_symmetry': 'Fm-3', 'point_group': '23'}, 'F432': {'enc': '06aODDaDODbOOOcOOOdOOOeOOO0', 'full_symbol': 'F432', 'int_number': 209, 'order': 96, 'patterson_symmetry': 'Fm-3m', 'point_group': '432'}, 'F4_132': {'enc': '06aODDaDODbODDcDDOdOOOeFBF0', 'full_symbol': 'F4_132', 'int_number': 210, 'order': 96, 'patterson_symmetry': 'Fm-3m', 'point_group': '432'}, 'Fd-3': {'enc': '06aODDaDODbOOOcOOOdOOOhBBB1ZZZ', 'full_symbol': 'F2/d-3', 'int_number': 203, 'order': 96, 'patterson_symmetry': 'Fm-3', 'point_group': 'm-3'}, 'Fd-3c': {'enc': '07aODDaDODbODDcDDOdOOOeFBFhFFF1XXX', 'full_symbol': 'F4_1/d-32/c', 'int_number': 228, 'order': 192, 'patterson_symmetry': 'Fm-3m', 'point_group': 'm-3m'}, 'Fd-3m': {'enc': '07aODDaDODbODDcDDOdOOOeFBFhBBB1ZZZ', 'full_symbol': 'F4_1/d-32/m', 'int_number': 227, 'order': 192, 'patterson_symmetry': 'Fm-3m', 'point_group': 'm-3m'}, 'Fdd2': {'enc': '04aODDaDODbOOOjBBB0', 'full_symbol': 'Fdd2', 'int_number': 43, 'order': 16, 'patterson_symmetry': 'Fmmm', 'point_group': 'mm2'}, 'Fddd': {'enc': '05aODDaDODbOOOcOOOhBBB1ZZZ', 'full_symbol': 'F2/d2/d2/d', 'int_number': 70, 'order': 32, 'patterson_symmetry': 'Fmmm', 'point_group': 'mmm'}, 'Fm-3': {'enc': '15aODDaDODbOOOcOOOdOOO0', 'full_symbol': 'F2/m-3', 'int_number': 202, 'order': 96, 'patterson_symmetry': 'Fm-3', 'point_group': 'm-3'}, 'Fm-3c': {'enc': '16aODDaDODbOOOcOOOdOOOeDDD0', 'full_symbol': 'F4/m-32/c', 'int_number': 226, 'order': 192, 'patterson_symmetry': 'Fm-3m', 'point_group': 'm-3m'}, 'Fm-3m': {'enc': '16aODDaDODbOOOcOOOdOOOeOOO0', 'full_symbol': 'F4/m-32/m', 'int_number': 225, 'order': 192, 'patterson_symmetry': 'Fm-3m', 'point_group': 'm-3m'}, 'Fmm2': {'enc': '04aODDaDODbOOOjOOO0', 'full_symbol': 'Fmm2', 'int_number': 42, 'order': 16, 'patterson_symmetry': 'Fmmm', 'point_group': 'mm2'}, 'Fmmm': {'enc': '14aODDaDODbOOOcOOO0', 'full_symbol': 'F2/m2/m2/m', 'int_number': 69, 'order': 32, 'patterson_symmetry': 'Fmmm', 'point_group': 'mmm'}, 'I-4': {'enc': '03aDDDbOOOmOOO0', 'full_symbol': 'I-4', 'int_number': 82, 'order': 8, 'patterson_symmetry': 'I4/m', 'point_group': '-4'}, 'I-42d': {'enc': '04aDDDbOOOmOOOcDOF0', 'full_symbol': 'I-42d', 'int_number': 122, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '-42m'}, 'I-42m': {'enc': '04aDDDbOOOmOOOcOOO0', 'full_symbol': 'I-42m', 'int_number': 121, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '-42m'}, 'I-43d': {'enc': '05aDDDbDODcODDdOOOlBBB0', 'full_symbol': 'I-43d', 'int_number': 220, 'order': 48, 'patterson_symmetry': 'Im-3m', 'point_group': '-43m'}, 'I-43m': {'enc': '05aDDDbOOOcOOOdOOOlOOO0', 'full_symbol': 'I-43m', 'int_number': 217, 'order': 48, 'patterson_symmetry': 'Im-3m', 'point_group': '-43m'}, 'I-4c2': {'enc': '04aDDDbOOOmOOOjOOD0', 'full_symbol': 'I-4c2', 'int_number': 120, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '-42m'}, 'I-4m2': {'enc': '04aDDDbOOOmOOOjOOO0', 'full_symbol': 'I-4m2', 'int_number': 119, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '-42m'}, 'I222': {'enc': '03aDDDbOOOcOOO0', 'full_symbol': 'I222', 'int_number': 23, 'order': 8, 'patterson_symmetry': 'Immm', 'point_group': '222'}, 'I23': {'enc': '04aDDDbOOOcOOOdOOO0', 'full_symbol': 'I23', 'int_number': 197, 'order': 24, 'patterson_symmetry': 'Im-3', 'point_group': '23'}, 'I2_12_12_1': {'enc': '03aDDDbDODcODD0', 'full_symbol': 'I2_12_12_1', 'int_number': 24, 'order': 8, 'patterson_symmetry': 'Immm', 'point_group': '222'}, 'I2_13': {'enc': '04aDDDbDODcODDdOOO0', 'full_symbol': 'I2_13', 'int_number': 199, 'order': 24, 'patterson_symmetry': 'Im-3', 'point_group': '23'}, 'I4': {'enc': '03aDDDbOOOgOOO0', 'full_symbol': 'I4', 'int_number': 79, 'order': 8, 'patterson_symmetry': 'I4/m', 'point_group': '4'}, 'I4/m': {'enc': '13aDDDbOOOgOOO0', 'full_symbol': 'I4/m', 'int_number': 87, 'order': 16, 'patterson_symmetry': 'I4/m', 'point_group': '4/m'}, 'I4/mcm': {'enc': '14aDDDbOOOgOOOcOOD0', 'full_symbol': 'I4/m2/c2/m', 'int_number': 140, 'order': 32, 'patterson_symmetry': 'I4/mmm', 'point_group': '4/mmm'}, 'I4/mmm': {'enc': '14aDDDbOOOgOOOcOOO0', 'full_symbol': 'I4/m2/m2/m', 'int_number': 139, 'order': 32, 'patterson_symmetry': 'I4/mmm', 'point_group': '4/mmm'}, 'I422': {'enc': '04aDDDbOOOgOOOcOOO0', 'full_symbol': 'I422', 'int_number': 97, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '422'}, 'I432': {'enc': '05aDDDbOOOcOOOdOOOeOOO0', 'full_symbol': 'I432', 'int_number': 211, 'order': 48, 'patterson_symmetry': 'Im-3m', 'point_group': '432'}, 'I4_1': {'enc': '03aDDDbDDDgODB0', 'full_symbol': 'I4_1', 'int_number': 80, 'order': 8, 'patterson_symmetry': 'I4/m', 'point_group': '4'}, 'I4_1/a': {'enc': '04aDDDbDDDgODBhODB1OYZ', 'full_symbol': 'I4_1/a', 'int_number': 88, 'order': 16, 'patterson_symmetry': 'I4/m', 'point_group': '4/m'}, 'I4_1/acd': {'enc': '05aDDDbDDDgODBcDOBhODB1OBZ', 'full_symbol': 'I4_1/a2/c2/d', 'int_number': 142, 'order': 32, 'patterson_symmetry': 'I4/mmm', 'point_group': '4/mmm'}, 'I4_1/amd': {'enc': '05aDDDbDDDgODBcDOFhODB1OBZ', 'full_symbol': 'I4_1/a2/m2/d', 'int_number': 141, 'order': 32, 'patterson_symmetry': 'I4/mmm', 'point_group': '4/mmm'}, 'I4_122': {'enc': '04aDDDbDDDgODBcDOF0', 'full_symbol': 'I4_122', 'int_number': 98, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '422'}, 'I4_132': {'enc': '05aDDDbDODcODDdOOOeFBB0', 'full_symbol': 'I4_132', 'int_number': 214, 'order': 48, 'patterson_symmetry': 'Im-3m', 'point_group': '432'}, 'I4_1cd': {'enc': '04aDDDbDDDgODBjOOD0', 'full_symbol': 'I4_1cd', 'int_number': 110, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '4mm'}, 'I4_1md': {'enc': '04aDDDbDDDgODBjOOO0', 'full_symbol': 'I4_1md', 'int_number': 109, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '4mm'}, 'I4cm': {'enc': '04aDDDbOOOgOOOjOOD0', 'full_symbol': 'I4cm', 'int_number': 108, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '4mm'}, 'I4mm': {'enc': '04aDDDbOOOgOOOjOOO0', 'full_symbol': 'I4mm', 'int_number': 107, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '4mm'}, 'Ia-3': {'enc': '14aDDDbDODcODDdOOO0', 'full_symbol': 'I2_1/a-3', 'int_number': 206, 'order': 48, 'patterson_symmetry': 'Im-3', 'point_group': 'm-3'}, 'Ia-3d': {'enc': '15aDDDbDODcODDdOOOeFBB0', 'full_symbol': 'I4_1/a-32/d', 'int_number': 230, 'order': 96, 'patterson_symmetry': 'Im-3m', 'point_group': 'm-3m'}, 'Iba2': {'enc': '03aDDDbOOOjDDO0', 'full_symbol': 'Iba2', 'int_number': 45, 'order': 8, 'patterson_symmetry': 'Immm', 'point_group': 'mm2'}, 'Ibam': {'enc': '13aDDDbOOOcDDO0', 'full_symbol': 'I2/b2/a2/m', 'int_number': 72, 'order': 16, 'patterson_symmetry': 'Immm', 'point_group': 'mmm'}, 'Ibca': {'enc': '13aDDDbDODcODD0', 'full_symbol': 'I2_1/b2_1/c2_1/a', 'int_number': 73, 'order': 16, 'patterson_symmetry': 'Immm', 'point_group': 'mmm'}, 'Im-3': {'enc': '14aDDDbOOOcOOOdOOO0', 'full_symbol': 'I2/m-3', 'int_number': 204, 'order': 48, 'patterson_symmetry': 'Im-3', 'point_group': 'm-3'}, 'Im-3m': {'enc': '15aDDDbOOOcOOOdOOOeOOO0', 'full_symbol': 'I4/m-32/m', 'int_number': 229, 'order': 96, 'patterson_symmetry': 'Im-3m', 'point_group': 'm-3m'}, 'Ima2': {'enc': '03aDDDbOOOjDOO0', 'full_symbol': 'Ima2', 'int_number': 46, 'order': 8, 'patterson_symmetry': 'Immm', 'point_group': 'mm2'}, 'Imm2': {'enc': '03aDDDbOOOjOOO0', 'full_symbol': 'Imm2', 'int_number': 44, 'order': 8, 'patterson_symmetry': 'Immm', 'point_group': 'mm2'}, 'Imma': {'enc': '13aDDDbODOcODO0', 'full_symbol': 'I2_1/m2_1/m2_1/a', 'int_number': 74, 'order': 16, 'patterson_symmetry': 'Immm', 'point_group': 'mmm'}, 'Immm': {'enc': '13aDDDbOOOcOOO0', 'full_symbol': 'I2/m2/m2/m', 'int_number': 71, 'order': 16, 'patterson_symmetry': 'Immm', 'point_group': 'mmm'}, 'P-1': {'enc': '100', 'full_symbol': 'P-1', 'int_number': 2, 'order': 2, 'patterson_symmetry': 'P-1', 'point_group': '-1'}, 'P-3': {'enc': '11nOOO0', 'full_symbol': 'P-3', 'int_number': 147, 'order': 6, 'patterson_symmetry': 'P-3', 'point_group': '-3'}, 'P-31c': {'enc': '12nOOOfOOD0', 'full_symbol': 'P-312/c', 'int_number': 163, 'order': 12, 'patterson_symmetry': 'P-31m', 'point_group': '-3m'}, 'P-31m': {'enc': '12nOOOfOOO0', 'full_symbol': 'P-312/m', 'int_number': 162, 'order': 12, 'patterson_symmetry': 'P-31m', 'point_group': '-3m'}, 'P-3c1': {'enc': '12nOOOeOOD0', 'full_symbol': 'P-32/c1', 'int_number': 165, 'order': 12, 'patterson_symmetry': 'P-3m1', 'point_group': '-3m'}, 'P-3m1': {'enc': '12nOOOeOOO0', 'full_symbol': 'P-32/m1', 'int_number': 164, 'order': 12, 'patterson_symmetry': 'P-3m1', 'point_group': '-3m'}, 'P-4': {'enc': '02bOOOmOOO0', 'full_symbol': 'P-4', 'int_number': 81, 'order': 4, 'patterson_symmetry': 'P4/m', 'point_group': '-4'}, 'P-42_1c': {'enc': '03bOOOmOOOcDDD0', 'full_symbol': 'P-42_1c', 'int_number': 114, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-42_1m': {'enc': '03bOOOmOOOcDDO0', 'full_symbol': 'P-42_1m', 'int_number': 113, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-42c': {'enc': '03bOOOmOOOcOOD0', 'full_symbol': 'P-42c', 'int_number': 112, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-42m': {'enc': '03bOOOmOOOcOOO0', 'full_symbol': 'P-42m', 'int_number': 111, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-43m': {'enc': '04bOOOcOOOdOOOlOOO0', 'full_symbol': 'P-43m', 'int_number': 215, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '-43m'}, 'P-43n': {'enc': '04bOOOcOOOdOOOlDDD0', 'full_symbol': 'P-43n', 'int_number': 218, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '-43m'}, 'P-4b2': {'enc': '03bOOOmOOOjDDO0', 'full_symbol': 'P-4b2', 'int_number': 117, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-4c2': {'enc': '03bOOOmOOOjOOD0', 'full_symbol': 'P-4c2', 'int_number': 116, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-4m2': {'enc': '03bOOOmOOOjOOO0', 'full_symbol': 'P-4m2', 'int_number': 115, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-4n2': {'enc': '03bOOOmOOOjDDD0', 'full_symbol': 'P-4n2', 'int_number': 118, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-6': {'enc': '02nOOOiOOO0', 'full_symbol': 'P-6', 'int_number': 174, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '-6'}, 'P-62c': {'enc': '03nOOOiOODeOOO0', 'full_symbol': 'P-62c', 'int_number': 190, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '-6m2'}, 'P-62m': {'enc': '03nOOOiOOOeOOO0', 'full_symbol': 'P-62m', 'int_number': 189, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '-6m2'}, 'P-6c2': {'enc': '03nOOOiOODkOOD0', 'full_symbol': 'P-6c2', 'int_number': 188, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '-6m2'}, 'P-6m2': {'enc': '03nOOOiOOOkOOO0', 'full_symbol': 'P-6m2', 'int_number': 187, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '-6m2'}, 'P1': {'enc': '000', 'full_symbol': 'P1', 'int_number': 1, 'order': 1, 'patterson_symmetry': 'P-1', 'point_group': '1'}, 'P12/c1': {'enc': '11cOOD0', 'full_symbol': 'P12/c1', 'int_number': 13, 'order': 4, 'patterson_symmetry': 'P12/m1', 'point_group': '2/m'}, 'P12/m1': {'enc': '11cOOO0', 'full_symbol': 'P12/m1', 'int_number': 10, 'order': 4, 'patterson_symmetry': 'P12/m1', 'point_group': '2/m'}, 'P121': {'enc': '01cOOO0', 'full_symbol': 'P121', 'int_number': 3, 'order': 2, 'patterson_symmetry': 'P12/m1', 'point_group': '2'}, 'P12_1/c1': {'enc': '11cODD0', 'full_symbol': 'P12_1/c1', 'int_number': 14, 'order': 4, 'patterson_symmetry': 'P12/m1', 'point_group': '2/m'}, 'P12_1/m1': {'enc': '11cODO0', 'full_symbol': 'P12_1/m1', 'int_number': 11, 'order': 4, 'patterson_symmetry': 'P12/m1', 'point_group': '2/m'}, 'P12_11': {'enc': '01cODO0', 'full_symbol': 'P12_11', 'int_number': 4, 'order': 2, 'patterson_symmetry': 'P12/m1', 'point_group': '2'}, 'P1c1': {'enc': '01jOOD0', 'full_symbol': 'P1c1', 'int_number': 7, 'order': 2, 'patterson_symmetry': 'P12/m1', 'point_group': 'm'}, 'P1m1': {'enc': '01jOOO0', 'full_symbol': 'P1m1', 'int_number': 6, 'order': 2, 'patterson_symmetry': 'P12/m1', 'point_group': 'm'}, 'P222': {'enc': '02bOOOcOOO0', 'full_symbol': 'P222', 'int_number': 16, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': '222'}, 'P222_1': {'enc': '02bOODcOOD0', 'full_symbol': 'P222_1', 'int_number': 17, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': '222'}, 'P23': {'enc': '03bOOOcOOOdOOO0', 'full_symbol': 'P23', 'int_number': 195, 'order': 12, 'patterson_symmetry': 'Pm-3', 'point_group': '23'}, 'P2_12_12': {'enc': '02bOOOcDDO0', 'full_symbol': 'P2_12_12', 'int_number': 18, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': '222'}, 'P2_12_12_1': {'enc': '02bDODcODD0', 'full_symbol': 'P2_12_12_1', 'int_number': 19, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': '222'}, 'P2_13': {'enc': '03bDODcODDdOOO0', 'full_symbol': 'P2_13', 'int_number': 198, 'order': 12, 'patterson_symmetry': 'Pm-3', 'point_group': '23'}, 'P3': {'enc': '01nOOO0', 'full_symbol': 'P3', 'int_number': 143, 'order': 3, 'patterson_symmetry': 'P-3', 'point_group': '3'}, 'P312': {'enc': '02nOOOfOOO0', 'full_symbol': 'P312', 'int_number': 149, 'order': 6, 'patterson_symmetry': 'P-31m', 'point_group': '32'}, 'P31c': {'enc': '02nOOOlOOD0', 'full_symbol': 'P31c', 'int_number': 159, 'order': 6, 'patterson_symmetry': 'P-31m', 'point_group': '3m'}, 'P31m': {'enc': '02nOOOlOOO0', 'full_symbol': 'P31m', 'int_number': 157, 'order': 6, 'patterson_symmetry': 'P-31m', 'point_group': '3m'}, 'P321': {'enc': '02nOOOeOOO0', 'full_symbol': 'P321', 'int_number': 150, 'order': 6, 'patterson_symmetry': 'P-3m1', 'point_group': '32'}, 'P3_1': {'enc': '01nOOC0', 'full_symbol': 'P3_1', 'int_number': 144, 'order': 3, 'patterson_symmetry': 'P-3', 'point_group': '3'}, 'P3_112': {'enc': '02nOOCfOOE0', 'full_symbol': 'P3_112', 'int_number': 151, 'order': 6, 'patterson_symmetry': 'P-31m', 'point_group': '32'}, 'P3_121': {'enc': '02nOOCeOOO0', 'full_symbol': 'P3_121', 'int_number': 152, 'order': 6, 'patterson_symmetry': 'P-3m1', 'point_group': '32'}, 'P3_2': {'enc': '01nOOE0', 'full_symbol': 'P3_2', 'int_number': 145, 'order': 3, 'patterson_symmetry': 'P-3', 'point_group': '3'}, 'P3_212': {'enc': '02nOOEfOOC0', 'full_symbol': 'P3_212', 'int_number': 153, 'order': 6, 'patterson_symmetry': 'P-31m', 'point_group': '32'}, 'P3_221': {'enc': '02nOOEeOOO0', 'full_symbol': 'P3_221', 'int_number': 154, 'order': 6, 'patterson_symmetry': 'P-3m1', 'point_group': '32'}, 'P3c1': {'enc': '02nOOOkOOD0', 'full_symbol': 'P3c1', 'int_number': 158, 'order': 6, 'patterson_symmetry': 'P-3m1', 'point_group': '3m'}, 'P3m1': {'enc': '02nOOOkOOO0', 'full_symbol': 'P3m1', 'int_number': 156, 'order': 6, 'patterson_symmetry': 'P-3m1', 'point_group': '3m'}, 'P4': {'enc': '02bOOOgOOO0', 'full_symbol': 'P4', 'int_number': 75, 'order': 4, 'patterson_symmetry': 'P4/m', 'point_group': '4'}, 'P4/m': {'enc': '12bOOOgOOO0', 'full_symbol': 'P4/m', 'int_number': 83, 'order': 8, 'patterson_symmetry': 'P4/m', 'point_group': '4/m'}, 'P4/mbm': {'enc': '13bOOOgOOOcDDO0', 'full_symbol': 'P4/m2_1/b2/m', 'int_number': 127, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/mcc': {'enc': '13bOOOgOOOcOOD0', 'full_symbol': 'P4/m2/c2/c', 'int_number': 124, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/mmm': {'enc': '13bOOOgOOOcOOO0', 'full_symbol': 'P4/m2/m2/m', 'int_number': 123, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/mnc': {'enc': '13bOOOgOOOcDDD0', 'full_symbol': 'P4/m2_1/n2/c', 'int_number': 128, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/n': {'enc': '03bOOOgDDOhDDO1YBO', 'full_symbol': 'P4/n', 'int_number': 85, 'order': 8, 'patterson_symmetry': 'P4/m', 'point_group': '4/m'}, 'P4/nbm': {'enc': '04bOOOgOOOcOOOhDDO1YYO', 'full_symbol': 'P4/n2/b2/m', 'int_number': 125, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/ncc': {'enc': '04bOOOgDDOcDDDhDDO1YBO', 'full_symbol': 'P4/n2_1/c2/c', 'int_number': 130, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/nmm': {'enc': '04bOOOgDDOcDDOhDDO1YBO', 'full_symbol': 'P4/n2_1/m2/m', 'int_number': 129, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/nnc': {'enc': '04bOOOgOOOcOOOhDDD1YYY', 'full_symbol': 'P4/n2/n2/c', 'int_number': 126, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P422': {'enc': '03bOOOgOOOcOOO0', 'full_symbol': 'P422', 'int_number': 89, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P42_12': {'enc': '03bOOOgDDOcDDO0', 'full_symbol': 'P42_12', 'int_number': 90, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P432': {'enc': '04bOOOcOOOdOOOeOOO0', 'full_symbol': 'P432', 'int_number': 207, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '432'}, 'P4_1': {'enc': '02bOODgOOB0', 'full_symbol': 'P4_1', 'int_number': 76, 'order': 4, 'patterson_symmetry': 'P4/m', 'point_group': '4'}, 'P4_122': {'enc': '03bOODgOOBcOOO0', 'full_symbol': 'P4_122', 'int_number': 91, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_12_12': {'enc': '03bOODgDDBcDDB0', 'full_symbol': 'P4_12_12', 'int_number': 92, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_132': {'enc': '04bDODcODDdOOOeFBB0', 'full_symbol': 'P4_132', 'int_number': 213, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '432'}, 'P4_2': {'enc': '02bOOOgOOD0', 'full_symbol': 'P4_2', 'int_number': 77, 'order': 4, 'patterson_symmetry': 'P4/m', 'point_group': '4'}, 'P4_2/m': {'enc': '12bOOOgOOD0', 'full_symbol': 'P4_2/m', 'int_number': 84, 'order': 8, 'patterson_symmetry': 'P4/m', 'point_group': '4/m'}, 'P4_2/mbc': {'enc': '13bOOOgOODcDDO0', 'full_symbol': 'P4_2/m2_1/b2/c', 'int_number': 135, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/mcm': {'enc': '13bOOOgOODcOOD0', 'full_symbol': 'P4_2/m2/c2/m', 'int_number': 132, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/mmc': {'enc': '13bOOOgOODcOOO0', 'full_symbol': 'P4_2/m2/m2/c', 'int_number': 131, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/mnm': {'enc': '13bOOOgDDDcDDD0', 'full_symbol': 'P4_2/m2_1/n2/m', 'int_number': 136, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/n': {'enc': '03bOOOgDDDhDDD1YYY', 'full_symbol': 'P4_2/n', 'int_number': 86, 'order': 8, 'patterson_symmetry': 'P4/m', 'point_group': '4/m'}, 'P4_2/nbc': {'enc': '04bOOOgDDDcOODhDDD1YBY', 'full_symbol': 'P4_2/n2/b2/c', 'int_number': 133, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/ncm': {'enc': '04bOOOgDDDcDDOhDDD1YBY', 'full_symbol': 'P4_2/n2_1/c2/m', 'int_number': 138, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/nmc': {'enc': '04bOOOgDDDcDDDhDDD1YBY', 'full_symbol': 'P4_2/n2_1/m2/c', 'int_number': 137, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/nnm': {'enc': '04bOOOgDDDcOOOhDDD1YBY', 'full_symbol': 'P4_2/n2/n2/m', 'int_number': 134, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_222': {'enc': '03bOOOgOODcOOO0', 'full_symbol': 'P4_222', 'int_number': 93, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_22_12': {'enc': '03bOOOgDDDcDDD0', 'full_symbol': 'P4_22_12', 'int_number': 94, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_232': {'enc': '04bOOOcOOOdOOOeDDD0', 'full_symbol': 'P4_232', 'int_number': 208, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '432'}, 'P4_2bc': {'enc': '03bOOOgOODjDDO0', 'full_symbol': 'P4_2bc', 'int_number': 106, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4_2cm': {'enc': '03bOOOgOODjOOD0', 'full_symbol': 'P4_2cm', 'int_number': 101, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4_2mc': {'enc': '03bOOOgOODjOOO0', 'full_symbol': 'P4_2mc', 'int_number': 105, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4_2nm': {'enc': '03bOOOgDDDjDDD0', 'full_symbol': 'P4_2nm', 'int_number': 102, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4_3': {'enc': '02bOODgOOF0', 'full_symbol': 'P4_3', 'int_number': 78, 'order': 4, 'patterson_symmetry': 'P4/m', 'point_group': '4'}, 'P4_322': {'enc': '03bOODgOOFcOOO0', 'full_symbol': 'P4_322', 'int_number': 95, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_32_12': {'enc': '03bOODgDDFcDDF0', 'full_symbol': 'P4_32_12', 'int_number': 96, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_332': {'enc': '04bDODcODDdOOOeBFF0', 'full_symbol': 'P4_332', 'int_number': 212, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '432'}, 'P4bm': {'enc': '03bOOOgOOOjDDO0', 'full_symbol': 'P4bm', 'int_number': 100, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4cc': {'enc': '03bOOOgOOOjOOD0', 'full_symbol': 'P4cc', 'int_number': 103, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4mm': {'enc': '03bOOOgOOOjOOO0', 'full_symbol': 'P4mm', 'int_number': 99, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4nc': {'enc': '03bOOOgOOOjDDD0', 'full_symbol': 'P4nc', 'int_number': 104, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P6': {'enc': '02nOOObOOO0', 'full_symbol': 'P6', 'int_number': 168, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6/m': {'enc': '12nOOObOOO0', 'full_symbol': 'P6/m', 'int_number': 175, 'order': 12, 'patterson_symmetry': 'P6/m', 'point_group': '6/m'}, 'P6/mcc': {'enc': '13nOOObOOOeOOD0', 'full_symbol': 'P6/m2/c2/c', 'int_number': 192, 'order': 24, 'patterson_symmetry': 'P6/mmm', 'point_group': '6/mmm'}, 'P6/mmm': {'enc': '13nOOObOOOeOOO0', 'full_symbol': 'P6/m2/m2/m', 'int_number': 191, 'order': 24, 'patterson_symmetry': 'P6/mmm', 'point_group': '6/mmm'}, 'P622': {'enc': '03nOOObOOOeOOO0', 'full_symbol': 'P622', 'int_number': 177, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6_1': {'enc': '02nOOCbOOD0', 'full_symbol': 'P6_1', 'int_number': 169, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6_122': {'enc': '03nOOCbOODeOOC0', 'full_symbol': 'P6_122', 'int_number': 178, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6_2': {'enc': '02nOOEbOOO0', 'full_symbol': 'P6_2', 'int_number': 171, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6_222': {'enc': '03nOOEbOOOeOOE0', 'full_symbol': 'P6_222', 'int_number': 180, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6_3': {'enc': '02nOOObOOD0', 'full_symbol': 'P6_3', 'int_number': 173, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6_3/m': {'enc': '12nOOObOOD0', 'full_symbol': 'P6_3/m', 'int_number': 176, 'order': 12, 'patterson_symmetry': 'P6/m', 'point_group': '6/m'}, 'P6_3/mcm': {'enc': '13nOOObOODeOOD0', 'full_symbol': 'P6_3/m2/c2/m', 'int_number': 193, 'order': 24, 'patterson_symmetry': 'P6/mmm', 'point_group': '6/mmm'}, 'P6_3/mmc': {'enc': '13nOOObOODeOOO0', 'full_symbol': 'P6_3/m2/m2/c', 'int_number': 194, 'order': 24, 'patterson_symmetry': 'P6/mmm', 'point_group': '6/mmm'}, 'P6_322': {'enc': '03nOOObOODeOOO0', 'full_symbol': 'P6_322', 'int_number': 182, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6_3cm': {'enc': '03nOOObOODkOOD0', 'full_symbol': 'P6_3cm', 'int_number': 185, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '6mm'}, 'P6_3mc': {'enc': '03nOOObOODkOOO0', 'full_symbol': 'P6_3mc', 'int_number': 186, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '6mm'}, 'P6_4': {'enc': '02nOOCbOOO0', 'full_symbol': 'P6_4', 'int_number': 172, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6_422': {'enc': '03nOOCbOOOeOOC0', 'full_symbol': 'P6_422', 'int_number': 181, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6_5': {'enc': '02nOOEbOOD0', 'full_symbol': 'P6_5', 'int_number': 170, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6_522': {'enc': '03nOOEbOODeOOE0', 'full_symbol': 'P6_522', 'int_number': 179, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6cc': {'enc': '03nOOObOOOkOOD0', 'full_symbol': 'P6cc', 'int_number': 184, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '6mm'}, 'P6mm': {'enc': '03nOOObOOOkOOO0', 'full_symbol': 'P6mm', 'int_number': 183, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '6mm'}, 'Pa-3': {'enc': '13bDODcODDdOOO0', 'full_symbol': 'P2_1/a-3', 'int_number': 205, 'order': 24, 'patterson_symmetry': 'Pm-3', 'point_group': 'm-3'}, 'Pba2': {'enc': '02bOOOjDDO0', 'full_symbol': 'Pba2', 'int_number': 32, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pbam': {'enc': '12bOOOcDDO0', 'full_symbol': 'P2_1/b2_1/a2/m', 'int_number': 55, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pban': {'enc': '03bOOOcOOOhDDO1BBO', 'full_symbol': 'P2/b2/a2/n', 'int_number': 50, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pbca': {'enc': '12bDODcODD0', 'full_symbol': 'P2_1/b2_1/c2_1/a', 'int_number': 61, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pbcm': {'enc': '12bOODcODD0', 'full_symbol': 'P2/b2_1/c2_1/m', 'int_number': 57, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pbcn': {'enc': '12bDDDcOOD0', 'full_symbol': 'P2_1/b2/c2_1/n', 'int_number': 60, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pca2_1': {'enc': '02bOODjDOO0', 'full_symbol': 'Pca2_1', 'int_number': 29, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pcc2': {'enc': '02bOOOjOOD0', 'full_symbol': 'Pcc2', 'int_number': 27, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pcca': {'enc': '12bDOOcOOD0', 'full_symbol': 'P2_1/c2/c2/a', 'int_number': 54, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pccm': {'enc': '12bOOOcOOD0', 'full_symbol': 'P2/c2/c2/m', 'int_number': 49, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pccn': {'enc': '12bDDOcODD0', 'full_symbol': 'P2_1/c2_1/c2/n', 'int_number': 56, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pm-3': {'enc': '13bOOOcOOOdOOO0', 'full_symbol': 'P2/m-3', 'int_number': 200, 'order': 24, 'patterson_symmetry': 'Pm-3', 'point_group': 'm-3'}, 'Pm-3m': {'enc': '14bOOOcOOOdOOOeOOO0', 'full_symbol': 'P4/m-32/m', 'int_number': 221, 'order': 48, 'patterson_symmetry': 'Pm-3m', 'point_group': 'm-3m'}, 'Pm-3n': {'enc': '14bOOOcOOOdOOOeDDD0', 'full_symbol': 'P4_2/m-32/n', 'int_number': 223, 'order': 48, 'patterson_symmetry': 'Pm-3m', 'point_group': 'm-3m'}, 'Pma2': {'enc': '02bOOOjDOO0', 'full_symbol': 'Pma2', 'int_number': 28, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pmc2_1': {'enc': '02bOODjOOD0', 'full_symbol': 'Pmc2_1', 'int_number': 26, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pmm2': {'enc': '02bOOOjOOO0', 'full_symbol': 'Pmm2', 'int_number': 25, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pmma': {'enc': '12bDOOcOOO0', 'full_symbol': 'P2_1/m2/m2/a', 'int_number': 51, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pmmm': {'enc': '12bOOOcOOO0', 'full_symbol': 'P2/m2/m2/m', 'int_number': 47, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pmmn': {'enc': '03bOOOcDDOhDDO1BBO', 'full_symbol': 'P2_1/m2_1/m2/n', 'int_number': 59, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pmn2_1': {'enc': '02bDODjDOD0', 'full_symbol': 'Pmn2_1', 'int_number': 31, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pmna': {'enc': '12bDODcDOD0', 'full_symbol': 'P2/m2/n2_1/a', 'int_number': 53, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pn-3': {'enc': '04bOOOcOOOdOOOhDDD1YYY', 'full_symbol': 'P2/n-3', 'int_number': 201, 'order': 24, 'patterson_symmetry': 'Pm-3', 'point_group': 'm-3'}, 'Pn-3m': {'enc': '05bOOOcOOOdOOOeDDDhDDD1YYY', 'full_symbol': 'P4_2/n-32/m', 'int_number': 224, 'order': 48, 'patterson_symmetry': 'Pm-3m', 'point_group': 'm-3m'}, 'Pn-3n': {'enc': '05bOOOcOOOdOOOeOOOhDDD1YYY', 'full_symbol': 'P4/n-32/n', 'int_number': 222, 'order': 48, 'patterson_symmetry': 'Pm-3m', 'point_group': 'm-3m'}, 'Pna2_1': {'enc': '02bOODjDDO0', 'full_symbol': 'Pna2_1', 'int_number': 33, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pnc2': {'enc': '02bOOOjODD0', 'full_symbol': 'Pnc2', 'int_number': 30, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pnma': {'enc': '12bDODcODO0', 'full_symbol': 'P2_1/n2_1/m2_1/a', 'int_number': 62, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pnn2': {'enc': '02bOOOjDDD0', 'full_symbol': 'Pnn2', 'int_number': 34, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pnna': {'enc': '12bDOOcDDD0', 'full_symbol': 'P2/n2_1/n2/a', 'int_number': 52, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pnnm': {'enc': '12bOOOcDDD0', 'full_symbol': 'P2_1/n2_1/n2/m', 'int_number': 58, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pnnn': {'enc': '03bOOOcOOOhDDD1BBB', 'full_symbol': 'P2/n2/n2/n', 'int_number': 48, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'R-3': {'enc': '12aECCnOOO0', 'full_symbol': 'R-3', 'int_number': 148, 'order': 18, 'patterson_symmetry': 'R-3', 'point_group': '-3'}, 'R-3c': {'enc': '13aECCnOOOeOOD0', 'full_symbol': 'R-32/c', 'int_number': 167, 'order': 36, 'patterson_symmetry': 'R-3m', 'point_group': '-3m'}, 'R-3m': {'enc': '13aECCnOOOeOOO0', 'full_symbol': 'R-32/m', 'int_number': 166, 'order': 36, 'patterson_symmetry': 'R-3m', 'point_group': '-3m'}, 'R3': {'enc': '02aECCnOOO0', 'full_symbol': 'R3', 'int_number': 146, 'order': 9, 'patterson_symmetry': 'R-3', 'point_group': '3'}, 'R32': {'enc': '03aECCnOOOeOOO0', 'full_symbol': 'R32', 'int_number': 155, 'order': 18, 'patterson_symmetry': 'R-3m', 'point_group': '32'}, 'R3c': {'enc': '03aECCnOOOkOOD0', 'full_symbol': 'R3c', 'int_number': 161, 'order': 18, 'patterson_symmetry': 'R-3m', 'point_group': '3m'}, 'R3m': {'enc': '03aECCnOOOkOOO0', 'full_symbol': 'R3m', 'int_number': 160, 'order': 18, 'patterson_symmetry': 'R-3m', 'point_group': '3m'}}[source]
                                                                              +sg_encoding = {'Aba2': {'enc': '03aODDbOOOjDDO0', 'full_symbol': 'Aea2', 'int_number': 41, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'Abm2': {'enc': '03aODDbOOOjODO0', 'full_symbol': 'Aem2', 'int_number': 39, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'Aea2': {'enc': '03aODDbOOOjDDO0', 'full_symbol': 'Aea2', 'int_number': 41, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'Aem2': {'enc': '03aODDbOOOjODO0', 'full_symbol': 'Aem2', 'int_number': 39, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'Ama2': {'enc': '03aODDbOOOjDOO0', 'full_symbol': 'Ama2', 'int_number': 40, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'Amm2': {'enc': '03aODDbOOOjOOO0', 'full_symbol': 'Amm2', 'int_number': 38, 'order': 8, 'patterson_symmetry': 'Ammm (Cmmm)', 'point_group': 'mm2'}, 'C12/c1': {'enc': '12aDDOcOOD0', 'full_symbol': 'C12/c1', 'int_number': 15, 'order': 8, 'patterson_symmetry': 'C12/m1', 'point_group': '2/m'}, 'C12/m1': {'enc': '12aDDOcOOO0', 'full_symbol': 'C12/m1', 'int_number': 12, 'order': 8, 'patterson_symmetry': 'C12/m1', 'point_group': '2/m'}, 'C121': {'enc': '02aDDOcOOO0', 'full_symbol': 'C121', 'int_number': 5, 'order': 4, 'patterson_symmetry': 'C12/m1', 'point_group': '2'}, 'C1c1': {'enc': '02aDDOjOOD0', 'full_symbol': 'C1c1', 'int_number': 9, 'order': 4, 'patterson_symmetry': 'C12/m1', 'point_group': 'm'}, 'C1m1': {'enc': '02aDDOjOOO0', 'full_symbol': 'C1m1', 'int_number': 8, 'order': 4, 'patterson_symmetry': 'C12/m1', 'point_group': 'm'}, 'C222': {'enc': '03aDDObOOOcOOO0', 'full_symbol': 'C222', 'int_number': 21, 'order': 8, 'patterson_symmetry': 'Cmmm', 'point_group': '222'}, 'C222_1': {'enc': '03aDDObOODcOOD0', 'full_symbol': 'C222_1', 'int_number': 20, 'order': 8, 'patterson_symmetry': 'Cmmm', 'point_group': '222'}, 'Ccc2': {'enc': '03aDDObOOOjOOD0', 'full_symbol': 'Ccc2', 'int_number': 37, 'order': 8, 'patterson_symmetry': 'Cmmm', 'point_group': 'mm2'}, 'Ccca': {'enc': '04aDDObDDOcOOOhODD1OBB', 'full_symbol': 'C2/c2/c2/e', 'int_number': 68, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Ccce': {'enc': '04aDDObDDOcOOOhODD1OBB', 'full_symbol': 'C2/c2/c2/e', 'int_number': 68, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cccm': {'enc': '13aDDObOOOcOOD0', 'full_symbol': 'C2/c2/c2/m', 'int_number': 66, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cmc2_1': {'enc': '03aDDObOODjOOD0', 'full_symbol': 'Cmc2_1', 'int_number': 36, 'order': 8, 'patterson_symmetry': 'Cmmm', 'point_group': 'mm2'}, 'Cmce': {'enc': '13aDDObODDcODD0', 'full_symbol': 'C2/m2/c2_1/e', 'int_number': 64, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cmcm': {'enc': '13aDDObOODcOOD0', 'full_symbol': 'C2/m2/c2_1/m', 'int_number': 63, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cmm2': {'enc': '03aDDObOOOjOOO0', 'full_symbol': 'Cmm2', 'int_number': 35, 'order': 8, 'patterson_symmetry': 'Cmmm', 'point_group': 'mm2'}, 'Cmma': {'enc': '13aDDObODOcODO0', 'full_symbol': 'C2/m2/m2/e', 'int_number': 67, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cmme': {'enc': '13aDDObODOcODO0', 'full_symbol': 'C2/m2/m2/e', 'int_number': 67, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'Cmmm': {'enc': '13aDDObOOOcOOO0', 'full_symbol': 'C2/m2/m2/m', 'int_number': 65, 'order': 16, 'patterson_symmetry': 'Cmmm', 'point_group': 'mmm'}, 'F-43c': {'enc': '06aODDaDODbOOOcOOOdOOOlDDD0', 'full_symbol': 'F-43c', 'int_number': 219, 'order': 96, 'patterson_symmetry': 'Fm-3m', 'point_group': '-43m'}, 'F-43m': {'enc': '06aODDaDODbOOOcOOOdOOOlOOO0', 'full_symbol': 'F-43m', 'int_number': 216, 'order': 96, 'patterson_symmetry': 'Fm-3m', 'point_group': '-43m'}, 'F222': {'enc': '04aODDaDODbOOOcOOO0', 'full_symbol': 'F222', 'int_number': 22, 'order': 16, 'patterson_symmetry': 'Fmmm', 'point_group': '222'}, 'F23': {'enc': '05aODDaDODbOOOcOOOdOOO0', 'full_symbol': 'F23', 'int_number': 196, 'order': 48, 'patterson_symmetry': 'Fm-3', 'point_group': '23'}, 'F432': {'enc': '06aODDaDODbOOOcOOOdOOOeOOO0', 'full_symbol': 'F432', 'int_number': 209, 'order': 96, 'patterson_symmetry': 'Fm-3m', 'point_group': '432'}, 'F4_132': {'enc': '06aODDaDODbODDcDDOdOOOeFBF0', 'full_symbol': 'F4_132', 'int_number': 210, 'order': 96, 'patterson_symmetry': 'Fm-3m', 'point_group': '432'}, 'Fd-3': {'enc': '06aODDaDODbOOOcOOOdOOOhBBB1ZZZ', 'full_symbol': 'F2/d-3', 'int_number': 203, 'order': 96, 'patterson_symmetry': 'Fm-3', 'point_group': 'm-3'}, 'Fd-3c': {'enc': '07aODDaDODbODDcDDOdOOOeFBFhFFF1XXX', 'full_symbol': 'F4_1/d-32/c', 'int_number': 228, 'order': 192, 'patterson_symmetry': 'Fm-3m', 'point_group': 'm-3m'}, 'Fd-3m': {'enc': '07aODDaDODbODDcDDOdOOOeFBFhBBB1ZZZ', 'full_symbol': 'F4_1/d-32/m', 'int_number': 227, 'order': 192, 'patterson_symmetry': 'Fm-3m', 'point_group': 'm-3m'}, 'Fdd2': {'enc': '04aODDaDODbOOOjBBB0', 'full_symbol': 'Fdd2', 'int_number': 43, 'order': 16, 'patterson_symmetry': 'Fmmm', 'point_group': 'mm2'}, 'Fddd': {'enc': '05aODDaDODbOOOcOOOhBBB1ZZZ', 'full_symbol': 'F2/d2/d2/d', 'int_number': 70, 'order': 32, 'patterson_symmetry': 'Fmmm', 'point_group': 'mmm'}, 'Fm-3': {'enc': '15aODDaDODbOOOcOOOdOOO0', 'full_symbol': 'F2/m-3', 'int_number': 202, 'order': 96, 'patterson_symmetry': 'Fm-3', 'point_group': 'm-3'}, 'Fm-3c': {'enc': '16aODDaDODbOOOcOOOdOOOeDDD0', 'full_symbol': 'F4/m-32/c', 'int_number': 226, 'order': 192, 'patterson_symmetry': 'Fm-3m', 'point_group': 'm-3m'}, 'Fm-3m': {'enc': '16aODDaDODbOOOcOOOdOOOeOOO0', 'full_symbol': 'F4/m-32/m', 'int_number': 225, 'order': 192, 'patterson_symmetry': 'Fm-3m', 'point_group': 'm-3m'}, 'Fmm2': {'enc': '04aODDaDODbOOOjOOO0', 'full_symbol': 'Fmm2', 'int_number': 42, 'order': 16, 'patterson_symmetry': 'Fmmm', 'point_group': 'mm2'}, 'Fmmm': {'enc': '14aODDaDODbOOOcOOO0', 'full_symbol': 'F2/m2/m2/m', 'int_number': 69, 'order': 32, 'patterson_symmetry': 'Fmmm', 'point_group': 'mmm'}, 'I-4': {'enc': '03aDDDbOOOmOOO0', 'full_symbol': 'I-4', 'int_number': 82, 'order': 8, 'patterson_symmetry': 'I4/m', 'point_group': '-4'}, 'I-42d': {'enc': '04aDDDbOOOmOOOcDOF0', 'full_symbol': 'I-42d', 'int_number': 122, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '-42m'}, 'I-42m': {'enc': '04aDDDbOOOmOOOcOOO0', 'full_symbol': 'I-42m', 'int_number': 121, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '-42m'}, 'I-43d': {'enc': '05aDDDbDODcODDdOOOlBBB0', 'full_symbol': 'I-43d', 'int_number': 220, 'order': 48, 'patterson_symmetry': 'Im-3m', 'point_group': '-43m'}, 'I-43m': {'enc': '05aDDDbOOOcOOOdOOOlOOO0', 'full_symbol': 'I-43m', 'int_number': 217, 'order': 48, 'patterson_symmetry': 'Im-3m', 'point_group': '-43m'}, 'I-4c2': {'enc': '04aDDDbOOOmOOOjOOD0', 'full_symbol': 'I-4c2', 'int_number': 120, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '-42m'}, 'I-4m2': {'enc': '04aDDDbOOOmOOOjOOO0', 'full_symbol': 'I-4m2', 'int_number': 119, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '-42m'}, 'I222': {'enc': '03aDDDbOOOcOOO0', 'full_symbol': 'I222', 'int_number': 23, 'order': 8, 'patterson_symmetry': 'Immm', 'point_group': '222'}, 'I23': {'enc': '04aDDDbOOOcOOOdOOO0', 'full_symbol': 'I23', 'int_number': 197, 'order': 24, 'patterson_symmetry': 'Im-3', 'point_group': '23'}, 'I2_12_12_1': {'enc': '03aDDDbDODcODD0', 'full_symbol': 'I2_12_12_1', 'int_number': 24, 'order': 8, 'patterson_symmetry': 'Immm', 'point_group': '222'}, 'I2_13': {'enc': '04aDDDbDODcODDdOOO0', 'full_symbol': 'I2_13', 'int_number': 199, 'order': 24, 'patterson_symmetry': 'Im-3', 'point_group': '23'}, 'I4': {'enc': '03aDDDbOOOgOOO0', 'full_symbol': 'I4', 'int_number': 79, 'order': 8, 'patterson_symmetry': 'I4/m', 'point_group': '4'}, 'I4/m': {'enc': '13aDDDbOOOgOOO0', 'full_symbol': 'I4/m', 'int_number': 87, 'order': 16, 'patterson_symmetry': 'I4/m', 'point_group': '4/m'}, 'I4/mcm': {'enc': '14aDDDbOOOgOOOcOOD0', 'full_symbol': 'I4/m2/c2/m', 'int_number': 140, 'order': 32, 'patterson_symmetry': 'I4/mmm', 'point_group': '4/mmm'}, 'I4/mmm': {'enc': '14aDDDbOOOgOOOcOOO0', 'full_symbol': 'I4/m2/m2/m', 'int_number': 139, 'order': 32, 'patterson_symmetry': 'I4/mmm', 'point_group': '4/mmm'}, 'I422': {'enc': '04aDDDbOOOgOOOcOOO0', 'full_symbol': 'I422', 'int_number': 97, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '422'}, 'I432': {'enc': '05aDDDbOOOcOOOdOOOeOOO0', 'full_symbol': 'I432', 'int_number': 211, 'order': 48, 'patterson_symmetry': 'Im-3m', 'point_group': '432'}, 'I4_1': {'enc': '03aDDDbDDDgODB0', 'full_symbol': 'I4_1', 'int_number': 80, 'order': 8, 'patterson_symmetry': 'I4/m', 'point_group': '4'}, 'I4_1/a': {'enc': '04aDDDbDDDgODBhODB1OYZ', 'full_symbol': 'I4_1/a', 'int_number': 88, 'order': 16, 'patterson_symmetry': 'I4/m', 'point_group': '4/m'}, 'I4_1/acd': {'enc': '05aDDDbDDDgODBcDOBhODB1OBZ', 'full_symbol': 'I4_1/a2/c2/d', 'int_number': 142, 'order': 32, 'patterson_symmetry': 'I4/mmm', 'point_group': '4/mmm'}, 'I4_1/amd': {'enc': '05aDDDbDDDgODBcDOFhODB1OBZ', 'full_symbol': 'I4_1/a2/m2/d', 'int_number': 141, 'order': 32, 'patterson_symmetry': 'I4/mmm', 'point_group': '4/mmm'}, 'I4_122': {'enc': '04aDDDbDDDgODBcDOF0', 'full_symbol': 'I4_122', 'int_number': 98, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '422'}, 'I4_132': {'enc': '05aDDDbDODcODDdOOOeFBB0', 'full_symbol': 'I4_132', 'int_number': 214, 'order': 48, 'patterson_symmetry': 'Im-3m', 'point_group': '432'}, 'I4_1cd': {'enc': '04aDDDbDDDgODBjOOD0', 'full_symbol': 'I4_1cd', 'int_number': 110, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '4mm'}, 'I4_1md': {'enc': '04aDDDbDDDgODBjOOO0', 'full_symbol': 'I4_1md', 'int_number': 109, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '4mm'}, 'I4cm': {'enc': '04aDDDbOOOgOOOjOOD0', 'full_symbol': 'I4cm', 'int_number': 108, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '4mm'}, 'I4mm': {'enc': '04aDDDbOOOgOOOjOOO0', 'full_symbol': 'I4mm', 'int_number': 107, 'order': 16, 'patterson_symmetry': 'I4/mmm', 'point_group': '4mm'}, 'Ia-3': {'enc': '14aDDDbDODcODDdOOO0', 'full_symbol': 'I2_1/a-3', 'int_number': 206, 'order': 48, 'patterson_symmetry': 'Im-3', 'point_group': 'm-3'}, 'Ia-3d': {'enc': '15aDDDbDODcODDdOOOeFBB0', 'full_symbol': 'I4_1/a-32/d', 'int_number': 230, 'order': 96, 'patterson_symmetry': 'Im-3m', 'point_group': 'm-3m'}, 'Iba2': {'enc': '03aDDDbOOOjDDO0', 'full_symbol': 'Iba2', 'int_number': 45, 'order': 8, 'patterson_symmetry': 'Immm', 'point_group': 'mm2'}, 'Ibam': {'enc': '13aDDDbOOOcDDO0', 'full_symbol': 'I2/b2/a2/m', 'int_number': 72, 'order': 16, 'patterson_symmetry': 'Immm', 'point_group': 'mmm'}, 'Ibca': {'enc': '13aDDDbDODcODD0', 'full_symbol': 'I2_1/b2_1/c2_1/a', 'int_number': 73, 'order': 16, 'patterson_symmetry': 'Immm', 'point_group': 'mmm'}, 'Im-3': {'enc': '14aDDDbOOOcOOOdOOO0', 'full_symbol': 'I2/m-3', 'int_number': 204, 'order': 48, 'patterson_symmetry': 'Im-3', 'point_group': 'm-3'}, 'Im-3m': {'enc': '15aDDDbOOOcOOOdOOOeOOO0', 'full_symbol': 'I4/m-32/m', 'int_number': 229, 'order': 96, 'patterson_symmetry': 'Im-3m', 'point_group': 'm-3m'}, 'Ima2': {'enc': '03aDDDbOOOjDOO0', 'full_symbol': 'Ima2', 'int_number': 46, 'order': 8, 'patterson_symmetry': 'Immm', 'point_group': 'mm2'}, 'Imm2': {'enc': '03aDDDbOOOjOOO0', 'full_symbol': 'Imm2', 'int_number': 44, 'order': 8, 'patterson_symmetry': 'Immm', 'point_group': 'mm2'}, 'Imma': {'enc': '13aDDDbODOcODO0', 'full_symbol': 'I2_1/m2_1/m2_1/a', 'int_number': 74, 'order': 16, 'patterson_symmetry': 'Immm', 'point_group': 'mmm'}, 'Immm': {'enc': '13aDDDbOOOcOOO0', 'full_symbol': 'I2/m2/m2/m', 'int_number': 71, 'order': 16, 'patterson_symmetry': 'Immm', 'point_group': 'mmm'}, 'P-1': {'enc': '100', 'full_symbol': 'P-1', 'int_number': 2, 'order': 2, 'patterson_symmetry': 'P-1', 'point_group': '-1'}, 'P-3': {'enc': '11nOOO0', 'full_symbol': 'P-3', 'int_number': 147, 'order': 6, 'patterson_symmetry': 'P-3', 'point_group': '-3'}, 'P-31c': {'enc': '12nOOOfOOD0', 'full_symbol': 'P-312/c', 'int_number': 163, 'order': 12, 'patterson_symmetry': 'P-31m', 'point_group': '-3m'}, 'P-31m': {'enc': '12nOOOfOOO0', 'full_symbol': 'P-312/m', 'int_number': 162, 'order': 12, 'patterson_symmetry': 'P-31m', 'point_group': '-3m'}, 'P-3c1': {'enc': '12nOOOeOOD0', 'full_symbol': 'P-32/c1', 'int_number': 165, 'order': 12, 'patterson_symmetry': 'P-3m1', 'point_group': '-3m'}, 'P-3m1': {'enc': '12nOOOeOOO0', 'full_symbol': 'P-32/m1', 'int_number': 164, 'order': 12, 'patterson_symmetry': 'P-3m1', 'point_group': '-3m'}, 'P-4': {'enc': '02bOOOmOOO0', 'full_symbol': 'P-4', 'int_number': 81, 'order': 4, 'patterson_symmetry': 'P4/m', 'point_group': '-4'}, 'P-42_1c': {'enc': '03bOOOmOOOcDDD0', 'full_symbol': 'P-42_1c', 'int_number': 114, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-42_1m': {'enc': '03bOOOmOOOcDDO0', 'full_symbol': 'P-42_1m', 'int_number': 113, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-42c': {'enc': '03bOOOmOOOcOOD0', 'full_symbol': 'P-42c', 'int_number': 112, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-42m': {'enc': '03bOOOmOOOcOOO0', 'full_symbol': 'P-42m', 'int_number': 111, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-43m': {'enc': '04bOOOcOOOdOOOlOOO0', 'full_symbol': 'P-43m', 'int_number': 215, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '-43m'}, 'P-43n': {'enc': '04bOOOcOOOdOOOlDDD0', 'full_symbol': 'P-43n', 'int_number': 218, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '-43m'}, 'P-4b2': {'enc': '03bOOOmOOOjDDO0', 'full_symbol': 'P-4b2', 'int_number': 117, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-4c2': {'enc': '03bOOOmOOOjOOD0', 'full_symbol': 'P-4c2', 'int_number': 116, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-4m2': {'enc': '03bOOOmOOOjOOO0', 'full_symbol': 'P-4m2', 'int_number': 115, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-4n2': {'enc': '03bOOOmOOOjDDD0', 'full_symbol': 'P-4n2', 'int_number': 118, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '-42m'}, 'P-6': {'enc': '02nOOOiOOO0', 'full_symbol': 'P-6', 'int_number': 174, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '-6'}, 'P-62c': {'enc': '03nOOOiOODeOOO0', 'full_symbol': 'P-62c', 'int_number': 190, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '-6m2'}, 'P-62m': {'enc': '03nOOOiOOOeOOO0', 'full_symbol': 'P-62m', 'int_number': 189, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '-6m2'}, 'P-6c2': {'enc': '03nOOOiOODkOOD0', 'full_symbol': 'P-6c2', 'int_number': 188, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '-6m2'}, 'P-6m2': {'enc': '03nOOOiOOOkOOO0', 'full_symbol': 'P-6m2', 'int_number': 187, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '-6m2'}, 'P1': {'enc': '000', 'full_symbol': 'P1', 'int_number': 1, 'order': 1, 'patterson_symmetry': 'P-1', 'point_group': '1'}, 'P12/c1': {'enc': '11cOOD0', 'full_symbol': 'P12/c1', 'int_number': 13, 'order': 4, 'patterson_symmetry': 'P12/m1', 'point_group': '2/m'}, 'P12/m1': {'enc': '11cOOO0', 'full_symbol': 'P12/m1', 'int_number': 10, 'order': 4, 'patterson_symmetry': 'P12/m1', 'point_group': '2/m'}, 'P121': {'enc': '01cOOO0', 'full_symbol': 'P121', 'int_number': 3, 'order': 2, 'patterson_symmetry': 'P12/m1', 'point_group': '2'}, 'P12_1/c1': {'enc': '11cODD0', 'full_symbol': 'P12_1/c1', 'int_number': 14, 'order': 4, 'patterson_symmetry': 'P12/m1', 'point_group': '2/m'}, 'P12_1/m1': {'enc': '11cODO0', 'full_symbol': 'P12_1/m1', 'int_number': 11, 'order': 4, 'patterson_symmetry': 'P12/m1', 'point_group': '2/m'}, 'P12_11': {'enc': '01cODO0', 'full_symbol': 'P12_11', 'int_number': 4, 'order': 2, 'patterson_symmetry': 'P12/m1', 'point_group': '2'}, 'P1c1': {'enc': '01jOOD0', 'full_symbol': 'P1c1', 'int_number': 7, 'order': 2, 'patterson_symmetry': 'P12/m1', 'point_group': 'm'}, 'P1m1': {'enc': '01jOOO0', 'full_symbol': 'P1m1', 'int_number': 6, 'order': 2, 'patterson_symmetry': 'P12/m1', 'point_group': 'm'}, 'P222': {'enc': '02bOOOcOOO0', 'full_symbol': 'P222', 'int_number': 16, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': '222'}, 'P222_1': {'enc': '02bOODcOOD0', 'full_symbol': 'P222_1', 'int_number': 17, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': '222'}, 'P23': {'enc': '03bOOOcOOOdOOO0', 'full_symbol': 'P23', 'int_number': 195, 'order': 12, 'patterson_symmetry': 'Pm-3', 'point_group': '23'}, 'P2_12_12': {'enc': '02bOOOcDDO0', 'full_symbol': 'P2_12_12', 'int_number': 18, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': '222'}, 'P2_12_12_1': {'enc': '02bDODcODD0', 'full_symbol': 'P2_12_12_1', 'int_number': 19, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': '222'}, 'P2_13': {'enc': '03bDODcODDdOOO0', 'full_symbol': 'P2_13', 'int_number': 198, 'order': 12, 'patterson_symmetry': 'Pm-3', 'point_group': '23'}, 'P3': {'enc': '01nOOO0', 'full_symbol': 'P3', 'int_number': 143, 'order': 3, 'patterson_symmetry': 'P-3', 'point_group': '3'}, 'P312': {'enc': '02nOOOfOOO0', 'full_symbol': 'P312', 'int_number': 149, 'order': 6, 'patterson_symmetry': 'P-31m', 'point_group': '32'}, 'P31c': {'enc': '02nOOOlOOD0', 'full_symbol': 'P31c', 'int_number': 159, 'order': 6, 'patterson_symmetry': 'P-31m', 'point_group': '3m'}, 'P31m': {'enc': '02nOOOlOOO0', 'full_symbol': 'P31m', 'int_number': 157, 'order': 6, 'patterson_symmetry': 'P-31m', 'point_group': '3m'}, 'P321': {'enc': '02nOOOeOOO0', 'full_symbol': 'P321', 'int_number': 150, 'order': 6, 'patterson_symmetry': 'P-3m1', 'point_group': '32'}, 'P3_1': {'enc': '01nOOC0', 'full_symbol': 'P3_1', 'int_number': 144, 'order': 3, 'patterson_symmetry': 'P-3', 'point_group': '3'}, 'P3_112': {'enc': '02nOOCfOOE0', 'full_symbol': 'P3_112', 'int_number': 151, 'order': 6, 'patterson_symmetry': 'P-31m', 'point_group': '32'}, 'P3_121': {'enc': '02nOOCeOOO0', 'full_symbol': 'P3_121', 'int_number': 152, 'order': 6, 'patterson_symmetry': 'P-3m1', 'point_group': '32'}, 'P3_2': {'enc': '01nOOE0', 'full_symbol': 'P3_2', 'int_number': 145, 'order': 3, 'patterson_symmetry': 'P-3', 'point_group': '3'}, 'P3_212': {'enc': '02nOOEfOOC0', 'full_symbol': 'P3_212', 'int_number': 153, 'order': 6, 'patterson_symmetry': 'P-31m', 'point_group': '32'}, 'P3_221': {'enc': '02nOOEeOOO0', 'full_symbol': 'P3_221', 'int_number': 154, 'order': 6, 'patterson_symmetry': 'P-3m1', 'point_group': '32'}, 'P3c1': {'enc': '02nOOOkOOD0', 'full_symbol': 'P3c1', 'int_number': 158, 'order': 6, 'patterson_symmetry': 'P-3m1', 'point_group': '3m'}, 'P3m1': {'enc': '02nOOOkOOO0', 'full_symbol': 'P3m1', 'int_number': 156, 'order': 6, 'patterson_symmetry': 'P-3m1', 'point_group': '3m'}, 'P4': {'enc': '02bOOOgOOO0', 'full_symbol': 'P4', 'int_number': 75, 'order': 4, 'patterson_symmetry': 'P4/m', 'point_group': '4'}, 'P4/m': {'enc': '12bOOOgOOO0', 'full_symbol': 'P4/m', 'int_number': 83, 'order': 8, 'patterson_symmetry': 'P4/m', 'point_group': '4/m'}, 'P4/mbm': {'enc': '13bOOOgOOOcDDO0', 'full_symbol': 'P4/m2_1/b2/m', 'int_number': 127, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/mcc': {'enc': '13bOOOgOOOcOOD0', 'full_symbol': 'P4/m2/c2/c', 'int_number': 124, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/mmm': {'enc': '13bOOOgOOOcOOO0', 'full_symbol': 'P4/m2/m2/m', 'int_number': 123, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/mnc': {'enc': '13bOOOgOOOcDDD0', 'full_symbol': 'P4/m2_1/n2/c', 'int_number': 128, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/n': {'enc': '03bOOOgDDOhDDO1YBO', 'full_symbol': 'P4/n', 'int_number': 85, 'order': 8, 'patterson_symmetry': 'P4/m', 'point_group': '4/m'}, 'P4/nbm': {'enc': '04bOOOgOOOcOOOhDDO1YYO', 'full_symbol': 'P4/n2/b2/m', 'int_number': 125, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/ncc': {'enc': '04bOOOgDDOcDDDhDDO1YBO', 'full_symbol': 'P4/n2_1/c2/c', 'int_number': 130, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/nmm': {'enc': '04bOOOgDDOcDDOhDDO1YBO', 'full_symbol': 'P4/n2_1/m2/m', 'int_number': 129, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4/nnc': {'enc': '04bOOOgOOOcOOOhDDD1YYY', 'full_symbol': 'P4/n2/n2/c', 'int_number': 126, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P422': {'enc': '03bOOOgOOOcOOO0', 'full_symbol': 'P422', 'int_number': 89, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P42_12': {'enc': '03bOOOgDDOcDDO0', 'full_symbol': 'P42_12', 'int_number': 90, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P432': {'enc': '04bOOOcOOOdOOOeOOO0', 'full_symbol': 'P432', 'int_number': 207, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '432'}, 'P4_1': {'enc': '02bOODgOOB0', 'full_symbol': 'P4_1', 'int_number': 76, 'order': 4, 'patterson_symmetry': 'P4/m', 'point_group': '4'}, 'P4_122': {'enc': '03bOODgOOBcOOO0', 'full_symbol': 'P4_122', 'int_number': 91, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_12_12': {'enc': '03bOODgDDBcDDB0', 'full_symbol': 'P4_12_12', 'int_number': 92, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_132': {'enc': '04bDODcODDdOOOeFBB0', 'full_symbol': 'P4_132', 'int_number': 213, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '432'}, 'P4_2': {'enc': '02bOOOgOOD0', 'full_symbol': 'P4_2', 'int_number': 77, 'order': 4, 'patterson_symmetry': 'P4/m', 'point_group': '4'}, 'P4_2/m': {'enc': '12bOOOgOOD0', 'full_symbol': 'P4_2/m', 'int_number': 84, 'order': 8, 'patterson_symmetry': 'P4/m', 'point_group': '4/m'}, 'P4_2/mbc': {'enc': '13bOOOgOODcDDO0', 'full_symbol': 'P4_2/m2_1/b2/c', 'int_number': 135, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/mcm': {'enc': '13bOOOgOODcOOD0', 'full_symbol': 'P4_2/m2/c2/m', 'int_number': 132, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/mmc': {'enc': '13bOOOgOODcOOO0', 'full_symbol': 'P4_2/m2/m2/c', 'int_number': 131, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/mnm': {'enc': '13bOOOgDDDcDDD0', 'full_symbol': 'P4_2/m2_1/n2/m', 'int_number': 136, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/n': {'enc': '03bOOOgDDDhDDD1YYY', 'full_symbol': 'P4_2/n', 'int_number': 86, 'order': 8, 'patterson_symmetry': 'P4/m', 'point_group': '4/m'}, 'P4_2/nbc': {'enc': '04bOOOgDDDcOODhDDD1YBY', 'full_symbol': 'P4_2/n2/b2/c', 'int_number': 133, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/ncm': {'enc': '04bOOOgDDDcDDOhDDD1YBY', 'full_symbol': 'P4_2/n2_1/c2/m', 'int_number': 138, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/nmc': {'enc': '04bOOOgDDDcDDDhDDD1YBY', 'full_symbol': 'P4_2/n2_1/m2/c', 'int_number': 137, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_2/nnm': {'enc': '04bOOOgDDDcOOOhDDD1YBY', 'full_symbol': 'P4_2/n2/n2/m', 'int_number': 134, 'order': 16, 'patterson_symmetry': 'P4/mmm', 'point_group': '4/mmm'}, 'P4_222': {'enc': '03bOOOgOODcOOO0', 'full_symbol': 'P4_222', 'int_number': 93, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_22_12': {'enc': '03bOOOgDDDcDDD0', 'full_symbol': 'P4_22_12', 'int_number': 94, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_232': {'enc': '04bOOOcOOOdOOOeDDD0', 'full_symbol': 'P4_232', 'int_number': 208, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '432'}, 'P4_2bc': {'enc': '03bOOOgOODjDDO0', 'full_symbol': 'P4_2bc', 'int_number': 106, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4_2cm': {'enc': '03bOOOgOODjOOD0', 'full_symbol': 'P4_2cm', 'int_number': 101, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4_2mc': {'enc': '03bOOOgOODjOOO0', 'full_symbol': 'P4_2mc', 'int_number': 105, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4_2nm': {'enc': '03bOOOgDDDjDDD0', 'full_symbol': 'P4_2nm', 'int_number': 102, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4_3': {'enc': '02bOODgOOF0', 'full_symbol': 'P4_3', 'int_number': 78, 'order': 4, 'patterson_symmetry': 'P4/m', 'point_group': '4'}, 'P4_322': {'enc': '03bOODgOOFcOOO0', 'full_symbol': 'P4_322', 'int_number': 95, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_32_12': {'enc': '03bOODgDDFcDDF0', 'full_symbol': 'P4_32_12', 'int_number': 96, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '422'}, 'P4_332': {'enc': '04bDODcODDdOOOeBFF0', 'full_symbol': 'P4_332', 'int_number': 212, 'order': 24, 'patterson_symmetry': 'Pm-3m', 'point_group': '432'}, 'P4bm': {'enc': '03bOOOgOOOjDDO0', 'full_symbol': 'P4bm', 'int_number': 100, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4cc': {'enc': '03bOOOgOOOjOOD0', 'full_symbol': 'P4cc', 'int_number': 103, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4mm': {'enc': '03bOOOgOOOjOOO0', 'full_symbol': 'P4mm', 'int_number': 99, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P4nc': {'enc': '03bOOOgOOOjDDD0', 'full_symbol': 'P4nc', 'int_number': 104, 'order': 8, 'patterson_symmetry': 'P4/mmm', 'point_group': '4mm'}, 'P6': {'enc': '02nOOObOOO0', 'full_symbol': 'P6', 'int_number': 168, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6/m': {'enc': '12nOOObOOO0', 'full_symbol': 'P6/m', 'int_number': 175, 'order': 12, 'patterson_symmetry': 'P6/m', 'point_group': '6/m'}, 'P6/mcc': {'enc': '13nOOObOOOeOOD0', 'full_symbol': 'P6/m2/c2/c', 'int_number': 192, 'order': 24, 'patterson_symmetry': 'P6/mmm', 'point_group': '6/mmm'}, 'P6/mmm': {'enc': '13nOOObOOOeOOO0', 'full_symbol': 'P6/m2/m2/m', 'int_number': 191, 'order': 24, 'patterson_symmetry': 'P6/mmm', 'point_group': '6/mmm'}, 'P622': {'enc': '03nOOObOOOeOOO0', 'full_symbol': 'P622', 'int_number': 177, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6_1': {'enc': '02nOOCbOOD0', 'full_symbol': 'P6_1', 'int_number': 169, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6_122': {'enc': '03nOOCbOODeOOC0', 'full_symbol': 'P6_122', 'int_number': 178, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6_2': {'enc': '02nOOEbOOO0', 'full_symbol': 'P6_2', 'int_number': 171, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6_222': {'enc': '03nOOEbOOOeOOE0', 'full_symbol': 'P6_222', 'int_number': 180, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6_3': {'enc': '02nOOObOOD0', 'full_symbol': 'P6_3', 'int_number': 173, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6_3/m': {'enc': '12nOOObOOD0', 'full_symbol': 'P6_3/m', 'int_number': 176, 'order': 12, 'patterson_symmetry': 'P6/m', 'point_group': '6/m'}, 'P6_3/mcm': {'enc': '13nOOObOODeOOD0', 'full_symbol': 'P6_3/m2/c2/m', 'int_number': 193, 'order': 24, 'patterson_symmetry': 'P6/mmm', 'point_group': '6/mmm'}, 'P6_3/mmc': {'enc': '13nOOObOODeOOO0', 'full_symbol': 'P6_3/m2/m2/c', 'int_number': 194, 'order': 24, 'patterson_symmetry': 'P6/mmm', 'point_group': '6/mmm'}, 'P6_322': {'enc': '03nOOObOODeOOO0', 'full_symbol': 'P6_322', 'int_number': 182, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6_3cm': {'enc': '03nOOObOODkOOD0', 'full_symbol': 'P6_3cm', 'int_number': 185, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '6mm'}, 'P6_3mc': {'enc': '03nOOObOODkOOO0', 'full_symbol': 'P6_3mc', 'int_number': 186, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '6mm'}, 'P6_4': {'enc': '02nOOCbOOO0', 'full_symbol': 'P6_4', 'int_number': 172, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6_422': {'enc': '03nOOCbOOOeOOC0', 'full_symbol': 'P6_422', 'int_number': 181, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6_5': {'enc': '02nOOEbOOD0', 'full_symbol': 'P6_5', 'int_number': 170, 'order': 6, 'patterson_symmetry': 'P6/m', 'point_group': '6'}, 'P6_522': {'enc': '03nOOEbOODeOOE0', 'full_symbol': 'P6_522', 'int_number': 179, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '622'}, 'P6cc': {'enc': '03nOOObOOOkOOD0', 'full_symbol': 'P6cc', 'int_number': 184, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '6mm'}, 'P6mm': {'enc': '03nOOObOOOkOOO0', 'full_symbol': 'P6mm', 'int_number': 183, 'order': 12, 'patterson_symmetry': 'P6/mmm', 'point_group': '6mm'}, 'Pa-3': {'enc': '13bDODcODDdOOO0', 'full_symbol': 'P2_1/a-3', 'int_number': 205, 'order': 24, 'patterson_symmetry': 'Pm-3', 'point_group': 'm-3'}, 'Pba2': {'enc': '02bOOOjDDO0', 'full_symbol': 'Pba2', 'int_number': 32, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pbam': {'enc': '12bOOOcDDO0', 'full_symbol': 'P2_1/b2_1/a2/m', 'int_number': 55, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pban': {'enc': '03bOOOcOOOhDDO1BBO', 'full_symbol': 'P2/b2/a2/n', 'int_number': 50, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pbca': {'enc': '12bDODcODD0', 'full_symbol': 'P2_1/b2_1/c2_1/a', 'int_number': 61, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pbcm': {'enc': '12bOODcODD0', 'full_symbol': 'P2/b2_1/c2_1/m', 'int_number': 57, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pbcn': {'enc': '12bDDDcOOD0', 'full_symbol': 'P2_1/b2/c2_1/n', 'int_number': 60, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pca2_1': {'enc': '02bOODjDOO0', 'full_symbol': 'Pca2_1', 'int_number': 29, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pcc2': {'enc': '02bOOOjOOD0', 'full_symbol': 'Pcc2', 'int_number': 27, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pcca': {'enc': '12bDOOcOOD0', 'full_symbol': 'P2_1/c2/c2/a', 'int_number': 54, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pccm': {'enc': '12bOOOcOOD0', 'full_symbol': 'P2/c2/c2/m', 'int_number': 49, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pccn': {'enc': '12bDDOcODD0', 'full_symbol': 'P2_1/c2_1/c2/n', 'int_number': 56, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pm-3': {'enc': '13bOOOcOOOdOOO0', 'full_symbol': 'P2/m-3', 'int_number': 200, 'order': 24, 'patterson_symmetry': 'Pm-3', 'point_group': 'm-3'}, 'Pm-3m': {'enc': '14bOOOcOOOdOOOeOOO0', 'full_symbol': 'P4/m-32/m', 'int_number': 221, 'order': 48, 'patterson_symmetry': 'Pm-3m', 'point_group': 'm-3m'}, 'Pm-3n': {'enc': '14bOOOcOOOdOOOeDDD0', 'full_symbol': 'P4_2/m-32/n', 'int_number': 223, 'order': 48, 'patterson_symmetry': 'Pm-3m', 'point_group': 'm-3m'}, 'Pma2': {'enc': '02bOOOjDOO0', 'full_symbol': 'Pma2', 'int_number': 28, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pmc2_1': {'enc': '02bOODjOOD0', 'full_symbol': 'Pmc2_1', 'int_number': 26, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pmm2': {'enc': '02bOOOjOOO0', 'full_symbol': 'Pmm2', 'int_number': 25, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pmma': {'enc': '12bDOOcOOO0', 'full_symbol': 'P2_1/m2/m2/a', 'int_number': 51, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pmmm': {'enc': '12bOOOcOOO0', 'full_symbol': 'P2/m2/m2/m', 'int_number': 47, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pmmn': {'enc': '03bOOOcDDOhDDO1BBO', 'full_symbol': 'P2_1/m2_1/m2/n', 'int_number': 59, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pmn2_1': {'enc': '02bDODjDOD0', 'full_symbol': 'Pmn2_1', 'int_number': 31, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pmna': {'enc': '12bDODcDOD0', 'full_symbol': 'P2/m2/n2_1/a', 'int_number': 53, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pn-3': {'enc': '04bOOOcOOOdOOOhDDD1YYY', 'full_symbol': 'P2/n-3', 'int_number': 201, 'order': 24, 'patterson_symmetry': 'Pm-3', 'point_group': 'm-3'}, 'Pn-3m': {'enc': '05bOOOcOOOdOOOeDDDhDDD1YYY', 'full_symbol': 'P4_2/n-32/m', 'int_number': 224, 'order': 48, 'patterson_symmetry': 'Pm-3m', 'point_group': 'm-3m'}, 'Pn-3n': {'enc': '05bOOOcOOOdOOOeOOOhDDD1YYY', 'full_symbol': 'P4/n-32/n', 'int_number': 222, 'order': 48, 'patterson_symmetry': 'Pm-3m', 'point_group': 'm-3m'}, 'Pna2_1': {'enc': '02bOODjDDO0', 'full_symbol': 'Pna2_1', 'int_number': 33, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pnc2': {'enc': '02bOOOjODD0', 'full_symbol': 'Pnc2', 'int_number': 30, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pnma': {'enc': '12bDODcODO0', 'full_symbol': 'P2_1/n2_1/m2_1/a', 'int_number': 62, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pnn2': {'enc': '02bOOOjDDD0', 'full_symbol': 'Pnn2', 'int_number': 34, 'order': 4, 'patterson_symmetry': 'Pmmm', 'point_group': 'mm2'}, 'Pnna': {'enc': '12bDOOcDDD0', 'full_symbol': 'P2/n2_1/n2/a', 'int_number': 52, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pnnm': {'enc': '12bOOOcDDD0', 'full_symbol': 'P2_1/n2_1/n2/m', 'int_number': 58, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'Pnnn': {'enc': '03bOOOcOOOhDDD1BBB', 'full_symbol': 'P2/n2/n2/n', 'int_number': 48, 'order': 8, 'patterson_symmetry': 'Pmmm', 'point_group': 'mmm'}, 'R-3': {'enc': '12aECCnOOO0', 'full_symbol': 'R-3', 'int_number': 148, 'order': 18, 'patterson_symmetry': 'R-3', 'point_group': '-3'}, 'R-3c': {'enc': '13aECCnOOOeOOD0', 'full_symbol': 'R-32/c', 'int_number': 167, 'order': 36, 'patterson_symmetry': 'R-3m', 'point_group': '-3m'}, 'R-3m': {'enc': '13aECCnOOOeOOO0', 'full_symbol': 'R-32/m', 'int_number': 166, 'order': 36, 'patterson_symmetry': 'R-3m', 'point_group': '-3m'}, 'R3': {'enc': '02aECCnOOO0', 'full_symbol': 'R3', 'int_number': 146, 'order': 9, 'patterson_symmetry': 'R-3', 'point_group': '3'}, 'R32': {'enc': '03aECCnOOOeOOO0', 'full_symbol': 'R32', 'int_number': 155, 'order': 18, 'patterson_symmetry': 'R-3m', 'point_group': '32'}, 'R3c': {'enc': '03aECCnOOOkOOD0', 'full_symbol': 'R3c', 'int_number': 161, 'order': 18, 'patterson_symmetry': 'R-3m', 'point_group': '3m'}, 'R3m': {'enc': '03aECCnOOOkOOO0', 'full_symbol': 'R3m', 'int_number': 160, 'order': 18, 'patterson_symmetry': 'R-3m', 'point_group': '3m'}}[source]
                                                                              -property symmetry_ops: set[SymmOp][source]
                                                                              +property symmetry_ops: set[SymmOp][source]

                                                                              Full set of symmetry operations as matrices. Lazily initialized as generation sometimes takes a bit of time.

                                                                              -to_pretty_string() str[source]
                                                                              +to_pretty_string() str[source]
                                                                              Returns:

                                                                              A pretty string representation of the space group.

                                                                              @@ -1543,19 +1540,19 @@

                                                                              Submodules
                                                                              -translations: ClassVar[dict[str, Fraction]] = {'A': Fraction(1, 6), 'B': Fraction(1, 4), 'C': Fraction(1, 3), 'D': Fraction(1, 2), 'E': Fraction(2, 3), 'F': Fraction(3, 4), 'G': Fraction(5, 6), 'O': Fraction(0, 1), 'X': Fraction(-3, 8), 'Y': Fraction(-1, 4), 'Z': Fraction(-1, 8)}[source]
                                                                              +translations: ClassVar[dict[str, Fraction]] = {'A': Fraction(1, 6), 'B': Fraction(1, 4), 'C': Fraction(1, 3), 'D': Fraction(1, 2), 'E': Fraction(2, 3), 'F': Fraction(3, 4), 'G': Fraction(5, 6), 'O': Fraction(0, 1), 'X': Fraction(-3, 8), 'Y': Fraction(-1, 4), 'Z': Fraction(-1, 8)}[source]

                                                                              -class SymmetryGroup[source]
                                                                              +class SymmetryGroup[source]

                                                                              Bases: Sequence, Stringify, ABC

                                                                              Abstract class representing a symmetry group.

                                                                              -is_subgroup(supergroup: SymmetryGroup) bool[source]
                                                                              +is_subgroup(supergroup: SymmetryGroup) bool[source]

                                                                              True if this group is a subgroup of the supplied group.

                                                                              Parameters:
                                                                              @@ -1572,7 +1569,7 @@

                                                                              Submodules
                                                                              -is_supergroup(subgroup: SymmetryGroup) bool[source]
                                                                              +is_supergroup(subgroup: SymmetryGroup) bool[source]

                                                                              True if this group is a supergroup of the supplied group.

                                                                              Parameters:
                                                                              @@ -1589,14 +1586,14 @@

                                                                              Submodules
                                                                              -abstract property symmetry_ops: set[SymmOp][source]
                                                                              +abstract property symmetry_ops: set[SymmOp][source]

                                                                              Returns: List of symmetry operations associated with the group.

                                                                              -to_latex_string() str[source]
                                                                              +to_latex_string() str[source]
                                                                              Returns:

                                                                              A latex formatted group symbol with proper subscripts and overlines.

                                                                              @@ -1608,7 +1605,7 @@

                                                                              Submodules
                                                                              -in_array_list(array_list: list[ndarray] | ndarray, arr: ndarray, tol: float = 1e-05) bool[source]
                                                                              +in_array_list(array_list: list[ndarray] | ndarray, arr: ndarray, tol: float = 1e-05) bool[source]

                                                                              Extremely efficient nd-array comparison using numpy’s broadcasting. This function checks if a particular array a, is present in a list of arrays. It works for arrays of any size, e.g. even matrix searches.

                                                                              @@ -1631,7 +1628,7 @@

                                                                              Submodules
                                                                              -sg_symbol_from_int_number(int_number: int, hexagonal: bool = True) str[source]
                                                                              +sg_symbol_from_int_number(int_number: int, hexagonal: bool = True) str[source]

                                                                              Obtains a SpaceGroup name from its international number.

                                                                              Parameters:
                                                                              @@ -1660,7 +1657,7 @@

                                                                              Submodules
                                                                              -class KPathBase(structure: Structure, symprec: float = 0.01, angle_tolerance=5, atol=1e-05, *args, **kwargs)[source]
                                                                              +class KPathBase(structure: Structure, symprec: float = 0.01, angle_tolerance=5, atol=1e-05, *args, **kwargs)[source]

                                                                              Bases: ABC

                                                                              This is the base class for classes used to generate high-symmetry paths in reciprocal space (k-paths) for band structure calculations.

                                                                              @@ -1679,31 +1676,31 @@

                                                                              Submodules
                                                                              -get_kpoints(line_density=20, coords_are_cartesian=True)[source]
                                                                              +get_kpoints(line_density=20, coords_are_cartesian=True)[source]

                                                                              Get kpoints along the path in Cartesian coordinates together with the critical-point labels.

                                                                              -property kpath[source]
                                                                              +property kpath[source]

                                                                              The symmetry line path in reciprocal space.

                                                                              -property lattice[source]
                                                                              +property lattice[source]

                                                                              The real space lattice.

                                                                              -property rec_lattice[source]
                                                                              +property rec_lattice[source]

                                                                              The reciprocal space lattice.

                                                                              -property structure[source]
                                                                              +property structure[source]

                                                                              The input structure.

                                                                              @@ -1711,7 +1708,7 @@

                                                                              Submodules
                                                                              -class KPathLatimerMunro(structure, has_magmoms=False, magmom_axis=None, symprec=0.01, angle_tolerance=5, atol=1e-05)[source]
                                                                              +class KPathLatimerMunro(structure, has_magmoms=False, magmom_axis=None, symprec=0.01, angle_tolerance=5, atol=1e-05)[source]

                                                                              Bases: KPathBase

                                                                              This class looks for a path along high-symmetry lines in the Brillouin zone. It is based on the method outlined in: @@ -1755,19 +1752,19 @@

                                                                              Submodules
                                                                              -static label_points(index)[source]
                                                                              +static label_points(index)[source]

                                                                              Axes used in generating labels for Latimer-Munro convention.

                                                                              -static label_symbol(index)[source]
                                                                              +static label_symbol(index)[source]

                                                                              Letters used in generating labels for the Latimer-Munro convention.

                                                                              -property mag_type[source]
                                                                              +property mag_type[source]

                                                                              The type of magnetic space group as a string. Current implementation does not distinguish between types 3 and 4, so return value is ‘3/4’. If has_magmoms is False, returns ‘0’.

                                                                              @@ -1777,7 +1774,7 @@

                                                                              Submodules
                                                                              -class KPathSeek(structure: Structure, symprec: float = 0.01, angle_tolerance=5, atol=1e-05, system_is_tri=True)[source]
                                                                              +class KPathSeek(structure: Structure, symprec: float = 0.01, angle_tolerance=5, atol=1e-05, system_is_tri=True)[source]

                                                                              Bases: KPathBase

                                                                              This class looks for a path along high-symmetry lines in the Brillouin zone. It is based on Hinuma, Y., Pizzi, G., Kumagai, Y., Oba, F., & Tanaka, I. (2017). Band structure diagram paths @@ -1803,7 +1800,7 @@

                                                                              Submodules
                                                                              -class KPathSetyawanCurtarolo(structure: Structure, symprec: float = 0.01, angle_tolerance=5, atol=1e-05)[source]
                                                                              +class KPathSetyawanCurtarolo(structure: Structure, symprec: float = 0.01, angle_tolerance=5, atol=1e-05)[source]

                                                                              Bases: KPathBase

                                                                              This class looks for a path along high-symmetry lines in the Brillouin zone. @@ -1834,157 +1831,157 @@

                                                                              Submodules
                                                                              -bcc()[source]
                                                                              +bcc()[source]

                                                                              BCC Path.

                                                                              -bctet1(c, a)[source]
                                                                              +bctet1(c, a)[source]

                                                                              BCT1 Path.

                                                                              -bctet2(c, a)[source]
                                                                              +bctet2(c, a)[source]

                                                                              BCT2 Path.

                                                                              -property conventional[source]
                                                                              +property conventional[source]

                                                                              The conventional cell structure.

                                                                              -cubic()[source]
                                                                              +cubic()[source]

                                                                              CUB Path.

                                                                              -fcc()[source]
                                                                              +fcc()[source]

                                                                              FCC Path.

                                                                              -hex()[source]
                                                                              +hex()[source]

                                                                              HEX Path.

                                                                              -mcl(b, c, beta)[source]
                                                                              +mcl(b, c, beta)[source]

                                                                              MCL Path.

                                                                              -mclc1(a, b, c, alpha)[source]
                                                                              +mclc1(a, b, c, alpha)[source]

                                                                              MCLC1 Path.

                                                                              -mclc2(a, b, c, alpha)[source]
                                                                              +mclc2(a, b, c, alpha)[source]

                                                                              MCLC2 Path.

                                                                              -mclc3(a, b, c, alpha)[source]
                                                                              +mclc3(a, b, c, alpha)[source]

                                                                              MCLC3 Path.

                                                                              -mclc4(a, b, c, alpha)[source]
                                                                              +mclc4(a, b, c, alpha)[source]

                                                                              MCLC4 Path.

                                                                              -mclc5(a, b, c, alpha)[source]
                                                                              +mclc5(a, b, c, alpha)[source]

                                                                              MCLC5 Path.

                                                                              -orc()[source]
                                                                              +orc()[source]

                                                                              ORC Path.

                                                                              -orcc(a, b, c)[source]
                                                                              +orcc(a, b, c)[source]

                                                                              ORCC Path.

                                                                              -orcf1(a, b, c)[source]
                                                                              +orcf1(a, b, c)[source]

                                                                              ORFC1 Path.

                                                                              -orcf2(a, b, c)[source]
                                                                              +orcf2(a, b, c)[source]

                                                                              ORFC2 Path.

                                                                              -orcf3(a, b, c)[source]
                                                                              +orcf3(a, b, c)[source]

                                                                              ORFC3 Path.

                                                                              -orci(a, b, c)[source]
                                                                              +orci(a, b, c)[source]

                                                                              ORCI Path.

                                                                              -property prim[source]
                                                                              +property prim[source]

                                                                              The primitive cell structure.

                                                                              -property prim_rec[source]
                                                                              +property prim_rec[source]

                                                                              The primitive reciprocal cell structure.

                                                                              -rhl1(alpha)[source]
                                                                              +rhl1(alpha)[source]

                                                                              RHL1 Path.

                                                                              -rhl2(alpha)[source]
                                                                              +rhl2(alpha)[source]

                                                                              RHL2 Path.

                                                                              -tet()[source]
                                                                              +tet()[source]

                                                                              TET Path.

                                                                              -tria()[source]
                                                                              +tria()[source]

                                                                              TRI1a Path.

                                                                              -trib()[source]
                                                                              +trib()[source]

                                                                              TRI1b Path.

                                                                              @@ -1996,7 +1993,7 @@

                                                                              Submodules
                                                                              -class MagneticSpaceGroup(**kwargs)[source]
                                                                              +class MagneticSpaceGroup(**kwargs)[source]

                                                                              Bases: SymmetryGroup

                                                                              Representation of a magnetic space group.

                                                                              Initialize a MagneticSpaceGroup from its Belov, Neronova and @@ -2075,13 +2072,13 @@

                                                                              Submodules
                                                                              -property crystal_system[source]
                                                                              +property crystal_system[source]

                                                                              Crystal system, e.g. cubic, hexagonal, etc.

                                                                              -data_str(include_og=True)[source]
                                                                              +data_str(include_og=True)[source]

                                                                              Get description of all data, including information for OG setting.

                                                                              Returns:
                                                                              @@ -2092,7 +2089,7 @@

                                                                              Submodules
                                                                              -classmethod from_og(label: Sequence[int] | str) Self[source]
                                                                              +classmethod from_og(label: Sequence[int] | str) Self[source]

                                                                              Initialize from Opechowski and Guccione (OG) label or number.

                                                                              Parameters:
                                                                              @@ -2103,7 +2100,7 @@

                                                                              Submodules
                                                                              -get_orbit(p, magmom, tol: float = 1e-05)[source]
                                                                              +get_orbit(p, magmom, tol: float = 1e-05)[source]

                                                                              Get the orbit for a point and its associated magnetic moment.

                                                                              Parameters:
                                                                              @@ -2126,7 +2123,7 @@

                                                                              Submodules
                                                                              -is_compatible(lattice: Lattice, tol: float = 1e-05, angle_tol: float = 5) bool[source]
                                                                              +is_compatible(lattice: Lattice, tol: float = 1e-05, angle_tol: float = 5) bool[source]

                                                                              Check whether a particular lattice is compatible with the conventional unit cell.

                                                                              @@ -2148,13 +2145,13 @@

                                                                              Submodules
                                                                              -property sg_symbol[source]
                                                                              +property sg_symbol[source]

                                                                              Space group symbol.

                                                                              -property symmetry_ops[source]
                                                                              +property symmetry_ops[source]

                                                                              Retrieve magnetic symmetry operations of the space group.

                                                                              Returns:
                                                                              @@ -2171,7 +2168,7 @@

                                                                              Submodules
                                                                              -class JonesFaithfulTransformation(P, p)[source]
                                                                              +class JonesFaithfulTransformation(P, p)[source]

                                                                              Bases: object

                                                                              Transformation for space-groups defined in a non-standard setting.

                                                                              Transform between settings using matrix P and origin shift vector p, @@ -2197,13 +2194,13 @@

                                                                              Submodules
                                                                              -property P: list[list[float]][source]
                                                                              +property P: list[list[float]][source]

                                                                              Transformation matrix.

                                                                              -classmethod from_origin_shift(origin_shift: str = '0,0,0') Self[source]
                                                                              +classmethod from_origin_shift(origin_shift: str = '0,0,0') Self[source]

                                                                              Construct SpaceGroupTransformation from its origin shift string.

                                                                              Parameters:
                                                                              @@ -2217,7 +2214,7 @@

                                                                              Submodules
                                                                              -classmethod from_transformation_str(transformation_string: str = 'a,b,c;0,0,0') Self[source]
                                                                              +classmethod from_transformation_str(transformation_string: str = 'a,b,c;0,0,0') Self[source]

                                                                              Construct SpaceGroupTransformation from its transformation string.

                                                                              Parameters:
                                                                              @@ -2231,19 +2228,19 @@

                                                                              Submodules
                                                                              -property inverse: Self[source]
                                                                              +property inverse: Self[source]

                                                                              JonesFaithfulTransformation.

                                                                              -property p: list[float][source]
                                                                              +property p: list[float][source]

                                                                              Translation vector.

                                                                              -static parse_transformation_string(transformation_string: str = 'a,b,c;0,0,0') tuple[list[list[float]] | ndarray, list[float]][source]
                                                                              +static parse_transformation_string(transformation_string: str = 'a,b,c;0,0,0') tuple[list[list[float]] | ndarray, list[float]][source]
                                                                              Parameters:

                                                                              transformation_string (str, optional) – Defaults to “a,b,c;0,0,0”.

                                                                              @@ -2262,25 +2259,25 @@

                                                                              Submodules
                                                                              -transform_coords(coords: list[list[float]] | ndarray) list[list[float]][source]
                                                                              +transform_coords(coords: list[list[float]] | ndarray) list[list[float]][source]

                                                                              Takes a list of coordinates and transforms them.

                                                                              -transform_lattice(lattice: Lattice) Lattice[source]
                                                                              +transform_lattice(lattice: Lattice) Lattice[source]

                                                                              Transforms a lattice.

                                                                              -transform_symmop(symm_op: SymmOp | MagSymmOp) SymmOp | MagSymmOp[source]
                                                                              +transform_symmop(symm_op: SymmOp | MagSymmOp) SymmOp | MagSymmOp[source]

                                                                              Takes a symmetry operation and transforms it.

                                                                              -property transformation_string: str[source]
                                                                              +property transformation_string: str[source]

                                                                              Transformation string.

                                                                              @@ -2292,7 +2289,7 @@

                                                                              Submodules
                                                                              -get_shared_symmetry_operations(struct: Structure, pointops: list[list[SymmOp]], tol: float = 0.1)[source]
                                                                              +get_shared_symmetry_operations(struct: Structure, pointops: list[list[SymmOp]], tol: float = 0.1)[source]

                                                                              Get all the point group operations shared by a pair of atomic sites in the form [[point operations of site index 1],[],…,[]].

                                                                              @@ -2311,7 +2308,7 @@

                                                                              Submodules
                                                                              -get_site_symmetries(struct: Structure, precision: float = 0.1) list[list[SymmOp]][source]
                                                                              +get_site_symmetries(struct: Structure, precision: float = 0.1) list[list[SymmOp]][source]

                                                                              Get all the point group operations centered on each atomic site in the form [[point operations of site index 1]…[[point operations of site index N]]].

                                                                              @@ -2333,7 +2330,7 @@

                                                                              Submodules
                                                                              -class SymmetrizedStructure(structure: Structure, spacegroup: SpacegroupOperations, equivalent_positions: Sequence[int], wyckoff_letters: Sequence[str])[source]
                                                                              +class SymmetrizedStructure(structure: Structure, spacegroup: SpacegroupOperations, equivalent_positions: Sequence[int], wyckoff_letters: Sequence[str])[source]

                                                                              Bases: Structure

                                                                              This class represents a symmetrized structure, i.e. a structure where the spacegroup and symmetry operations are defined. This class is @@ -2341,7 +2338,7 @@

                                                                              Submodules
                                                                              -equivalent_indices[source]
                                                                              +equivalent_indices[source]

                                                                              A list of lists of indices of the sites in the structure that are considered equivalent based on the symmetry operations of the space group.

                                                                              @@ -2363,19 +2360,19 @@

                                                                              Submodules
                                                                              -as_dict()[source]
                                                                              +as_dict()[source]

                                                                              MSONable dict.

                                                                              -copy() Self[source]
                                                                              +copy() Self[source]

                                                                              Make a copy of the SymmetrizedStructure.

                                                                              -find_equivalent_sites(site: PeriodicSite) list[PeriodicSite][source]
                                                                              +find_equivalent_sites(site: PeriodicSite) list[PeriodicSite][source]

                                                                              Find all symmetrically equivalent sites for a particular site.

                                                                              Parameters:
                                                                              @@ -2395,7 +2392,7 @@

                                                                              Submodules
                                                                              -classmethod from_dict(dct: dict) Self[source]
                                                                              +classmethod from_dict(dct: dict) Self[source]
                                                                              Parameters:

                                                                              dct (dict) – Dict representation.

                                                                              diff --git a/docs/pymatgen.transformations.html b/docs/pymatgen.transformations.html index fbc3da6bcef..be7ca346dcc 100644 --- a/docs/pymatgen.transformations.html +++ b/docs/pymatgen.transformations.html @@ -1,24 +1,24 @@ + + - + - pymatgen.transformations package — pymatgen 2024.10.27 documentation - - - - - + pymatgen.transformations package — pymatgen 2024.11.13 documentation + + + + - - - - - - + + + + + + + @@ -35,9 +35,6 @@ -
                                                                              - 2024.10.27 -

                                                                          • +
                                                                          • get_randomly_manipulated_structures()
                                                                        • pymatgen.transformations.transformation_abc module