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.

Format

An R6Class generator object

Public fields

identifier

The identifier that was used to initiate the object, with attribute 'source'

inchikey

InChI Key, with attribute 'source'

smiles

SMILES code, with attribute 'source'

mw

Molecular weight, with attribute 'source'

pubchem

List of information retreived from PubChem

rdkit

List of information obtained with RDKit

mol

<rdkit.Chem.rdchem.Mol> object

svg

SVG code

Picture

Graph as a picture object obtained using grImport

Pict_font_size

Font size as extracted from the intermediate PostScript file

pdf_height

Height of the MediaBox in the pdf after cropping

p0

Vapour pressure in Pa

cwsat

Water solubility in mg/L

chyaml

List of information obtained from a YAML file

soil_degradation

Dataframe of modelling DT50 values

soil_ff

Dataframe of formation fractions

soil_sorption

Dataframe of soil sorption data

PUF

Plant uptake factor

Methods

Public methods


Method new()

Usage

chent$new(
  identifier,
  smiles = NULL,
  smiles_source = "user",
  inchikey = NULL,
  inchikey_source = "user",
  pubchem = TRUE,
  pubchem_from = c("name", "smiles", "inchikey"),
  rdkit = TRUE,
  template = NULL,
  chyaml = TRUE
)


Method try_pubchem()

Usage

chent$try_pubchem(query, from = "name")


Method get_pubchem()

Usage

chent$get_pubchem(pubchem_cid)


Method get_rdkit()

Usage

chent$get_rdkit(template = NULL)


Method get_chyaml()

Usage

chent$get_chyaml(
  repo = c("wd", "local", "web"),
  chyaml = paste0(URLencode(self$identifier), ".yaml")
)


Method add_p0()

Usage

chent$add_p0(p0, T = NA, source = NA, page = NA, remark = "")


Method add_cwsat()

Usage

chent$add_cwsat(cwsat, T = NA, pH = NA, source = NA, page = NA, remark = "")


Method add_PUF()

Usage

chent$add_PUF(
  PUF = 0,
  source = "focus_generic_gw_2014",
  page = 41,
  remark = "Conservative default value"
)


Method add_TP()

Usage

chent$add_TP(x, smiles = NULL, pubchem = FALSE)


Method add_transformation()

Usage

chent$add_transformation(
  study_type,
  TP_identifier,
  max_occurrence,
  remark = "",
  source = NA,
  pages = NA
)


Method add_soil_degradation()

Usage

chent$add_soil_degradation(
  soils,
  DT50_mod,
  DT50_mod_ref,
  type = NA,
  country = NA,
  pH_orig = NA,
  pH_medium = NA,
  pH_H2O = NA,
  perc_OC = NA,
  temperature = NA,
  moisture = NA,
  category = "lab",
  formulation = NA,
  model = NA,
  chi2 = NA,
  remark = "",
  source,
  page = NA
)


Method add_soil_ff()

Usage

chent$add_soil_ff(target, soils, ff = 1, remark = "", source, page = NA)


Method add_soil_sorption()

Usage

chent$add_soil_sorption(
  soils,
  Kf,
  Kfoc,
  N,
  type = NA,
  pH_orig = NA,
  pH_medium = NA,
  pH_H2O = NA,
  perc_OC = NA,
  perc_clay = NA,
  CEC = NA,
  remark = "",
  source,
  page = NA
)


Method pdf()

Usage

chent$pdf(
  file = paste0(self$identifier, ".pdf"),
  dir = "structures/pdf",
  template = NULL
)


Method png()

Usage

chent$png(
  file = paste0(self$identifier, ".png"),
  dir = "structures/png",
  antialias = "gray"
)


Method emf()

Usage

chent$emf(file = paste0(self$identifier, ".emf"), dir = "structures/emf")


Method clone()

The objects of this class are cloneable with this method.

Usage

chent$clone(deep = FALSE)

Arguments

deep

Whether to make a deep clone.

Examples

oct <- chent$new("1-octanol", smiles = "CCCCCCCCO")
#> PubChem:
#> 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 KBPLFHHGFOOTCA-UHFFFAOYSA-N #> SMILES string $smiles: #> user PubChem_Canonical #> "CCCCCCCCO" "CCCCCCCCO" #> Molecular weight $mw: 130.2 #> PubChem synonyms (up to 10): #> [1] "1-octanol" "Octan-1-ol" "octanol" "111-87-5" #> [5] "N-octanol" "Octyl alcohol" "Capryl alcohol" "caprylic alcohol" #> [9] "n-Octyl alcohol" "Heptyl carbinol"
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] "1,3,7-Trimethylxanthine" "Guaranine" #> [5] "Thein" "Methyltheobromine" #> [7] "Cafeina" "Theine" #> [9] "Koffein" "Mateina"
if (!is.null(caffeine$Picture)) { plot(caffeine) }