def __init__(self, atom, building_block, building_block_id): """ Initialize a :class:`.CaseData` instance. Parameters ---------- atom : :class:`.Atom` The atom, which should be held by an :class:`.AtomInfo`. building_block : :class:`.BuildingBlock` The building block, which should be held by an :class:`.AtomInfo`. building_block_id : :class:`int` The building block id, which should be held by an :class:`.AtomInfo`. """ self.atom_info = stk.AtomInfo( atom=atom, building_block=building_block, building_block_id=building_block_id, ) self.atom = atom self.building_block = building_block self.building_block_id = building_block_id
atoms=( stk.C(0, 2), stk.O(1, 1), stk.N(2, 1), stk.S(3), ), bonds=( stk.Bond(stk.C(0, 2), stk.N(2, 1), 1), stk.Bond(stk.O(1, 1), stk.S(3), 1), stk.Bond(stk.N(2, 1), stk.S(3), 1), ), position_matrix=np.array([]), atom_infos=( stk.AtomInfo( atom=stk.C(0, 2), building_block_atom=stk.C(0, 2), building_block=canonical_bb1, building_block_id=0, ), stk.AtomInfo( atom=stk.O(1, 1), building_block_atom=stk.O(0, 1), building_block=canonical_bb2, building_block_id=1, ), stk.AtomInfo( atom=stk.N(2, 1), building_block_atom=stk.N(2, 1), building_block=canonical_bb1, building_block_id=0, ), stk.AtomInfo(
atoms=( stk.C(0, 2), stk.O(1, 1), stk.N(2, 1), stk.S(3), ), bonds=( stk.Bond(stk.C(0, 2), stk.N(2, 1), 1), stk.Bond(stk.O(1, 1), stk.S(3), 1), stk.Bond(stk.N(2, 1), stk.S(3), 1), ), position_matrix=np.array([]), atom_infos=( stk.AtomInfo( atom=stk.C(0, 2), building_block=bb1, building_block_id=0, ), stk.AtomInfo( atom=stk.O(1, 1), building_block=bb2, building_block_id=1, ), stk.AtomInfo( atom=stk.N(2, 1), building_block=bb1, building_block_id=0, ), stk.AtomInfo( atom=stk.S(3), building_block=bb2,
def get_case_data_2() -> CaseData: bb1 = stk.BuildingBlock('[C+2][N+]Br', [stk.BromoFactory()]) canonical_bb1 = bb1.with_canonical_atom_ordering() bb2 = stk.BuildingBlock('IS[O+]', [stk.IodoFactory()]) canonical_bb2 = bb2.with_canonical_atom_ordering() return CaseData( molecule=stk.ConstructedMolecule( topology_graph=stk.polymer.Linear( building_blocks=(bb1, bb2), repeating_unit='AB', num_repeating_units=1, ), ), result=stk.ConstructedMolecule.init( atoms=( stk.C(0, 2), stk.O(1, 1), stk.N(2, 1), stk.S(3), ), bonds=( stk.Bond(stk.C(0, 2), stk.N(2, 1), 1), stk.Bond(stk.O(1, 1), stk.S(3), 1), stk.Bond(stk.N(2, 1), stk.S(3), 1), ), position_matrix=np.array([]), atom_infos=( stk.AtomInfo( atom=stk.C(0, 2), building_block_atom=stk.C(0, 2), building_block=canonical_bb1, building_block_id=0, ), stk.AtomInfo( atom=stk.O(1, 1), building_block_atom=stk.O(0, 1), building_block=canonical_bb2, building_block_id=1, ), stk.AtomInfo( atom=stk.N(2, 1), building_block_atom=stk.N(2, 1), building_block=canonical_bb1, building_block_id=0, ), stk.AtomInfo( atom=stk.S(3), building_block_atom=stk.S(2), building_block=canonical_bb2, building_block_id=1, ), ), bond_infos=( stk.BondInfo( bond=stk.Bond(stk.C(0, 2), stk.N(2, 1), 1), building_block=canonical_bb1, building_block_id=0, ), stk.BondInfo( bond=stk.Bond(stk.O(1, 1), stk.S(3), 1), building_block=canonical_bb2, building_block_id=1, ), stk.BondInfo( bond=stk.Bond(stk.N(2, 1), stk.S(3), 1), building_block=None, building_block_id=None, ), ), num_building_blocks={ canonical_bb1: 1, canonical_bb2: 1, }, ), )