def get_vector(self, atom1, atom2, distance): if atom1 in atom2.yield_neighbors(): return None bond_type = bonds.bonded(atom1.number, atom2.number, distance) if bond_type is None: return None else: return Bond(bond_type=bond_type, targets=[atom1, atom2])
def compare_function(positioned1, positioned2): delta = positioned2.coordinate - positioned1.coordinate if unit_cell is not None: delta = unit_cell.shortest_vector(delta) distance = numpy.linalg.norm(delta) if distance < binned_atoms.gridsize: bond_order = bonds.bonded(molecule.numbers[positioned1.id], molecule.numbers[positioned2.id], distance) if bond_order != None: return bond_order, distance