Learn R Programming

Rknots (version 1.3.0)

HOMFLYpolynomial: Compute the HOMFLY polynomial of a polygonal link

Description

Compute the HOMFLY polynomial of a polygonal link, given its skein tree (generated by skeinIterator)

Usage

HOMFLYpolynomial(leaves, tree, skein.sign = -1)

Arguments

leaves
a list containing the binary indices of the tree leaves
tree
a list containing the skein tree as returned by skeinIterator.
skein.sign
the skein sign to be used (+1 or -1)

Value

  • the HOMFLY polynomial

Details

The polynomial computation relies on rSymPy. Please notice that the first time sympy is invoked is expected to be much slower than subsequent ones.

References

Freyd P, Yetter D, Hoste J, Lickorish WBR, Millett K, et al. (1985) A new polynomial invariant of knots and links. Bull Amer Math Soc (NS) 12: 239-246. Kauffman, L. Knots and Physics. Teaneck, NJ: World Scientific, p. 19, 1991. Comoglio F. and Rinaldi M. (2011) A Topological Framework for the Computation of the HOMFLY Polynomial and Its Application to Proteins PLoS ONE 6(4): e18693, doi:10.1371/journal.pone.0018693 ArXiv:1104.3405

See Also

HOMFLY2mirror, HOMFLY2Alexander, HOMFLY2Jones

Examples

Run this code
## Import a PDB file from the file system
protein <- makeExampleProtein()

## Reduce to minimal structure
protein.reduced <- AlexanderBriggs(protein$A)

## Compute the skein tree
tree <- skeinIterator(protein.reduced$points3D, protein.reduced$ends)
	
## Compute the HOMFLY polynomial
HOMFLYpolynomial(tree$leaves, tree$tree, skein.sign = -1)

Run the code above in your browser using DataLab