Carboxylic Acid Factory

class CarboxylicAcidFactory(bonders=(1), deleters=(3, 4), placers=None)[source]

Bases: stk.molecular.functional_groups.factories.functional_group_factory.FunctionalGroupFactory

Creates CarboxylicAcid instances.

Creates functional groups from substructures, which match the [*][C](=[O])[O][H] functional group string.

Examples

Creating Functional Groups with the Factory

You want to create a building block which has CarboxylicAcid functional groups. You want the carbon atom in those functional groups to be the bonder atom, and the OH group to be a leaving group.

import stk

building_block = stk.BuildingBlock(
    smiles='OC(=O)CC(=O)O',
    functional_groups=(stk.CarboxylicAcidFactory(), ),
)

Changing the Bonder and Deleter Atoms

You want to create a building block which has CarboxylicAcid functional groups. You want the carbon atom to be the bonder atom and the oxygen atom to be the deleter atom.

import stk

carboxylic_acid_factory = stk.CarboxylicAcidFactory(
    # The index of the carbon atom in the functional
    # group string (see docstring) is 1.
    bonders=(1, ),
    # The index of the oxygen atom in the functional
    # group string (see docstring) is 2.
    deleters=(2, ),
)
building_block = stk.BuildingBlock(
    smiles='OC(=O)CC(=O)O',
    functional_groups=(carboxylic_acid_factory, ),
)

See also

GenericFunctionalGroup

Defines bonders and deleters.

Methods

get_functional_groups(molecule)

Yield functional groups in molecule.

__init__(bonders=(1), deleters=(3, 4), placers=None)[source]

Initialize a CarboxylicAcidFactory instance.

Parameters
  • bonders (tuple of int) – The indices of atoms in the functional group string, which are bonder atoms.

  • deleters (tuple of int) – The indices of atoms in the functional group string, which are deleter atoms.

  • placers (tuple of int, optional) – The indices of atoms in the functional group string, which are placer atoms. If None, bonders will be used.

get_functional_groups(molecule)[source]

Yield functional groups in molecule.

Parameters

molecule (Molecule) – The molecule, whose functional groups are to be found.

Yields

FunctionalGroup – A functional group in molecule.

Examples

See FunctionalGroupFactory.