-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Chemistry -- -- This library contains: -- -- @package radium @version 0.7 -- | Module Radium.Formats.Smiles Copyright : Copyright (C) 2014 Krzysztof -- Langner License : BSD3 -- -- Maintainer : Krzysztof Langner klangner@gmail.com Stability : -- alpha Portability : portable -- -- SMILES is popular format for describing the structure of chemical -- molecules. -- http:/en.wikipedia.orgwiki/Simplified_molecular-input_line-entry_system module Radium.Formats.Smiles -- | This model describes molecules with valence bounds data Smiles SmilesRing :: Atom -> Int -> Smiles -> Smiles Smiles :: Atom -> Smiles -- | Parses textual representation readSmiles :: String -> Either String Smiles -- | Convert SMILES to the string writeSmiles :: Smiles -> String instance GHC.Show.Show Radium.Formats.Smiles.Atom instance GHC.Classes.Eq Radium.Formats.Smiles.Atom -- | Parser for condensed formula format -- (http:/en.wikipedia.orgwiki/Structural_formula#Condensed_formulas). -- . Formula can be entered as H2O, 2H2O, SO4+2 (Sulfate) or (CH3)2CO -- (Acetone) module Radium.Formats.Condensed data Molecule a Ion :: (Molecule a) -> Int -> Molecule a Molecule :: [Molecule a] -> Int -> Molecule a Element :: a -> Int -> Molecule a -- | Parse formula -- --
--   parseFormula "C2H4" `shouldBe` Molecule [Element "C" 2, Element "H", 4)]  
--   
readCondensed :: String -> SymbolMolecule -- | Write Molecule to string writeCondensed :: SymbolMolecule -> String instance GHC.Show.Show a => GHC.Show.Show (Radium.Formats.Condensed.Molecule a) instance GHC.Classes.Eq a => GHC.Classes.Eq (Radium.Formats.Condensed.Molecule a) instance GHC.Base.Functor Radium.Formats.Condensed.Molecule -- | Module Radium.Element Copyright : Copyright (C) 2014 Krzysztof Langner -- License : BSD3 -- -- Maintainer : Krzysztof Langner klangner@gmail.com Stability : -- alpha Portability : portable -- -- This module contains Periodic Table with information about all known -- elements. module Radium.Element data Element atomicNumber :: Element -> Int symbol :: Element -> String atomWeight :: Element -> Double electroNegativity :: Element -> Double ionizationEnergy :: Element -> Double -- | Show number of electrons in each shell For elements which are -- exception to Aufbau principle configuration is given manually Is it -- possible to calculate it for all elements based only on atom -- properties? -- --
--   let e = element 8
--   shellElectrons e == [2, 6] 
--   
electronConfig :: Element -> [Int] -- | Find element by its atomic number -- --
--   atomicNumber (element 8) == 8 
--   
element :: Int -> Element -- | Find element by its symbol -- --
--   atomicNumber (elementBySymbol "O") == 8 
--   
elementBySymbol :: String -> Element -- | Number of valance electrons -- --
--   let e = element 8
--   valanceElectrons e == 6 
--   
valanceElectrons :: Element -> Int -- | Number of covalent bounds in element -- --
--   let e = element 8
--   covalentBounds e == 2 
--   
covalentBounds :: Element -> Int instance GHC.Show.Show Radium.Element.Element instance GHC.Classes.Eq Radium.Element.Element