def get_symmetry_from_database(hall_number): rotations = np.zeros((192, 3, 3), dtype='intc') translations = np.zeros((192, 3), dtype='double') num_sym = spg.symmetry_from_database(rotations, translations, hall_number) if num_sym is None: return None else: return {'rotations': np.array(rotations[:num_sym], dtype='intc', order='C'), 'translations': np.array(translations[:num_sym], dtype='double', order='C')}
def get_symmetry_from_database(hall_number): """Return symmetry operations corresponding to a Hall symbol. The Hall symbol is given by the serial number in between 1 and 530. The symmetry operations are given by a dictionary whose keys are 'rotations' and 'translations'. If it fails, None is returned. """ _set_no_error() rotations = np.zeros((192, 3, 3), dtype='intc') translations = np.zeros((192, 3), dtype='double') num_sym = spg.symmetry_from_database(rotations, translations, hall_number) _set_error_message() if num_sym is None: return None else: return {'rotations': np.array(rotations[:num_sym], dtype='intc', order='C'), 'translations': np.array(translations[:num_sym], dtype='double', order='C')}