ConClusion-0.0.1: Cluster algorithms, PCA, and chemical conformere analysis
CopyrightPhillip Seeber 2021
LicenseAGPL-3
Maintainerphillip.seeber@googlemail.com
Stabilityexperimental
PortabilityPOSIX, Windows
Safe HaskellNone
LanguageHaskell2010

ConClusion.Chemistry.Topology

Description

This module implements routines to work with simple molden style XYZ trajectories. This includes parsers as well as functions to obtain structural features in internal coordinates.

For an introduction into PCA see https://www.cs.cmu.edu/~elaw/papers/pca.pdf.

Diherdrals require a special metric, see https://onlinelibrary.wiley.com/doi/full/10.1002/prot.20310).

Synopsis

Documentation

data Molecule Source #

A Molecule in cartesian coordinates.

xyz :: Parser Molecule Source #

Parser for molecules in Molden XYZ format.

trajectory :: Parser Trajectory Source #

Parser for trajectories in XYZ format as produced by CREST.

data B Source #

Selection of a bond between two atoms.

Constructors

B Int Int 

data A Source #

Selection of an angle between three atoms.

Constructors

A Int Int Int 

data D Source #

Selection of a dihedral angle between four atoms. Rotation around the central two.

Constructors

D Int Int Int Int 

data Feature Source #

Selections

Constructors

Energy 
Bond B 
Angle A 
Dihedral D 

getFeatures :: (MonadThrow m, Traversable f) => f Feature -> Trajectory -> m (Matrix DL Double) Source #

Obtains the feature matrix \(\mathbf{X}\) for a principal component analysis. Given \(m\) features to analyse in \(n\) measurements, \(\mathbf{X}\) will be a \(m \times n\) matrix.