Structure object¶
- $ Structure(coordinates=None,
- internal=None, z_matrix=None, int_label=None, atom_types=None, atomic_elements=None, atomic_numbers=None, connectivity=None, file_name=None, charge=0, multiplicity=1, int_weights=None):
Methods¶
- def get_coordinates():
- return self._coordinates.copy()
- def set_coordinates(self, coordinates):
- self._coordinates = coordinates self._number_of_atoms = None self._energy = None
- def get_internal():
- return self._internal.copy()
- def set_internal(internal):
- self._internal = internal
- def get_full_z_matrix():
- return self._full_z_matrix
- def get_z_matrix():
- return self._z_matrix
- def set_z_matrix(z_matrix):
- self._z_matrix = z_matrix
- def get_int_label():
- return self._int_label
- def set_int_label(int_label):
- self._int_label = int_label
- def get_int_dict():
self._internal_dict = {} for i, label in enumerate(self.get_int_label()[:,0]):
self._internal_dict.update({label:self.get_internal()[i, 0]})return self._internal_dict
- def get_int_weights():
- return self._int_weights
- def set_int_weights(int_weights):
- self._int_weights = int_weights
- def get_atomic_elements_with_dummy():
- return self._atomic_elements
- def get_atom_types():
- return self._atom_types
- def set_atom_types(atom_types):
- self._atom_types = atom_types
- def get_atomic_numbers():
- return self._atomic_numbers
def set_atomic_numbers(atomic_numbers):
- def get_atomic_elements(self):
- return np.array([i for i in self._atomic_elements if i != “X”], dtype=str)
def set_atomic_elements(atomic_elements):
- def get_connectivity():
- return self._connectivity
def set_connectivity(connectivity):
- def get_number_of_atoms():
- return self._number_of_atoms
- def get_number_of_internal():
- return self._number_of_internal
- def get_energy(method=None):
- return self._energy
- def get_modes(method=None):
- return self._modes
- def get_atomic_masses(self):
- return self._atomic_masses
Properties¶
@property def charge(self):
return self._charge@property def multiplicity(self):
return self._multiplicity
example¶
initial_coordinates = [[ 0.5784585, 0.7670811, 1.3587379],
[-1.7015514, -0.0389921, -0.0374715],
[ 0.5784290, -1.6512236, -0.0374715],
[ 0.5784585, 0.7670811, -1.4336809],
[ 0.0000000, 0.0000000, 0.0000000]]
initial_coordinates = np.array(initial_coordinates)
atomic_elements = ['O', 'O', 'O', 'O', 'P']
atomic_elements = np.array(atomic_elements)[None].T
molecule = Structure(coordinates=initial_coordinates,
atomic_elements=atomic_elements)
molecule.charge = 0
molecule.multiplicity = 1