The class is initialised with an identifier. Chemical information is retrieved from the internet. Additionally, it can be generated using RDKit if RDKit and its python bindings are installed.
An R6Class generator object
identifier(character(1))
The identifier that was used to initiate the object, with attribute 'source'
inchikey(character(1))
InChI Key, with attribute 'source'
smiles(character())
SMILES code(s), with attribute 'source'
mw(numeric(1))
Molecular weight, with attribute 'source'
pubchem(list())
List of information retrieved from PubChem
rdkitList of information obtained with RDKit
mol<rdkit.Chem.rdchem.Mol> object
svgSVG code
PictureGraph as a picture object obtained using grImport
Pict_font_sizeFont size as extracted from the intermediate PostScript file
pdf_heightHeight of the MediaBox in the pdf after cropping
p0Vapour pressure in Pa
cwsatWater solubility in mg/L
PUFPlant uptake factor
chyamlList of information obtained from a YAML file
TPsList of transformation products as chent objects
transformationsData frame of observed transformations
soil_degradationDataframe of modelling DT50 values
soil_ffDataframe of formation fractions
soil_sorptionDataframe of soil sorption data
new()Creates a new instance of this R6 class.
identifierIdentifier to be stored in the object
smilesOptional user provided SMILES code
inchikeyOptional user provided InChI Key
pubchemShould an attempt be made to retrieve chemical information from PubChem via the webchem package?
pubchem_fromPossibility to select the argument that is used to query pubchem
rdkitShould an attempt be made to retrieve chemical information from a local rdkit installation via python and the reticulate package?
templateAn optional SMILES code to be used as template for RDKit
chyamlShould we look for a identifier.yaml file in the working directory? Try to get chemical information from PubChem
pdf()chent$pdf(
file = paste0(self$identifier, ".pdf"),
dir = "structures/pdf",
template = NULL
)png()chent$png(
file = paste0(self$identifier, ".png"),
dir = "structures/png",
antialias = "gray"
)emf()chent$emf(file = paste0(self$identifier, ".emf"), dir = "structures/emf")oct <- chent$new("1-octanol", smiles = "CCCCCCCCO", pubchem = FALSE)
#> Trying to get chemical information from RDKit using user SMILES
#> CCCCCCCCO
#> Did not find chyaml file ./1-octanol.yaml
print(oct)
#> <chent>
#> Identifier $identifier 1-octanol
#> InChI Key $inchikey
#> SMILES string $smiles:
#> user
#> "CCCCCCCCO"
#> Molecular weight $mw: 130.2
if (!is.null(oct$Picture)) {
plot(oct)
}
caffeine <- chent$new("caffeine")
#> PubChem:
#> Trying to get chemical information from RDKit using PubChem_Canonical SMILES
#> CN1C=NC2=C1C(=O)N(C(=O)N2C)C
#> Did not find chyaml file ./caffeine.yaml
print(caffeine)
#> <chent>
#> Identifier $identifier caffeine
#> InChI Key $inchikey RYYVLZVUVIJVGH-UHFFFAOYSA-N
#> SMILES string $smiles:
#> PubChem_Canonical
#> "CN1C=NC2=C1C(=O)N(C(=O)N2C)C"
#> Molecular weight $mw: 194.2
#> PubChem synonyms (up to 10):
#> [1] "caffeine" "58-08-2"
#> [3] "Guaranine" "1,3,7-Trimethylxanthine"
#> [5] "Methyltheobromine" "Theine"
#> [7] "Thein" "Cafeina"
#> [9] "Koffein" "Mateina"
if (!is.null(caffeine$Picture)) {
plot(caffeine)
}