jarvis.analysis.structure.spacegroup

Modules for handling crystallographic Spacegroup related operations.

Module Contents

Classes

Spacegroup3D

Provide spacegroup related data for Atoms object.

Functions

unique_rows_2(a)

Remove duplicate rows.

symmetrically_distinct_miller_indices(max_index=3, cvn_atoms=None)

Get unique miller indices for max_index.

parse_wyckoff_csv(wyckoff_file)

Parse Wyckoff.csv from spglib.

read_wyckoff_csv(filename)

Read wyckoff_csv file.

get_wyckoff_position_operators(hall_number)

Get all Wyckoff operations for Hall number.

parse_xyz_string(xyz_string)

Convert xyz info to translation and rotation vectors.

operate_affine(cart_coord=[], affine_matrix=[])

Operate affine method.

get_new_coord_for_xyz_sym(frac_coord=[], xyz_string='')

Obtain new coord from xyz string.

check_duplicate_coords(coords=[], coord=[])

Check if a coordinate exists.

Attributes

wyckoff_file

jarvis.analysis.structure.spacegroup.unique_rows_2(a)[source]

Remove duplicate rows.

jarvis.analysis.structure.spacegroup.symmetrically_distinct_miller_indices(max_index=3, cvn_atoms=None)[source]

Get unique miller indices for max_index.

jarvis.analysis.structure.spacegroup.wyckoff_file
jarvis.analysis.structure.spacegroup.parse_wyckoff_csv(wyckoff_file)[source]

Parse Wyckoff.csv from spglib.

There are 530 data sets. For one example: 9:C 1 2 1::::::: ::4:c:1:(x,y,z):(-x,y,-z):: ::2:b:2:(0,y,1/2)::: ::2:a:2:(0,y,0)::

jarvis.analysis.structure.spacegroup.read_wyckoff_csv(filename)[source]

Read wyckoff_csv file.

jarvis.analysis.structure.spacegroup.get_wyckoff_position_operators(hall_number)[source]

Get all Wyckoff operations for Hall number.

class jarvis.analysis.structure.spacegroup.Spacegroup3D(atoms=[], dataset={}, symprec=0.01, angle_tolerance=5)[source]

Bases: object

Provide spacegroup related data for Atoms object.

Currently uses spglib to derive spacegroup related information for 3D materials mainly

spacegroup_data(self)[source]

Provide spacegroup data from spglib.

property space_group_symbol(self)

Get spacegroup symbol.

property space_group_number(self)

Get spacegroup number.

property primitive_atoms(self)

Get primitive atoms.

property refined_atoms(self)

Refine atoms based on spacegroup data.

property crystal_system(self)

Get crystal system.

property lattice_system(self)

Get lattice system.

property point_group_symbol(self)

Get pointgroup.

property conventional_standard_structure(self, tol=1e-05, international_monoclinic=True)

Give a conventional cell according to certain conventions.

The conventionss are defined in Setyawan, W., & Curtarolo, S. (2010). High-throughput electronic band structure calculations: Challenges and tools. Computational Materials Science, 49(2), 299-312. doi:10.1016/j.commatsci.2010.05.010 They basically enforce as much as possible norm(a1)<norm(a2)<norm(a3) Returns:

The structure in a conventional standardized cell

jarvis.analysis.structure.spacegroup.parse_xyz_string(xyz_string)[source]

Convert xyz info to translation and rotation vectors.

Adapted from pymatgen. Args:

xyz_string: string of the form ‘x, y, z’, ‘-x, -y, z’,

‘-2y+1/2, 3x+1/2, z-y+1/2’, etc.

Returns:

translation and rotation vectors.

jarvis.analysis.structure.spacegroup.operate_affine(cart_coord=[], affine_matrix=[])[source]

Operate affine method.

jarvis.analysis.structure.spacegroup.get_new_coord_for_xyz_sym(frac_coord=[], xyz_string='')[source]

Obtain new coord from xyz string.

jarvis.analysis.structure.spacegroup.check_duplicate_coords(coords=[], coord=[])[source]

Check if a coordinate exists.