## Webserver to compute RNA hairpin Profile

If you find these programs helpful for your work, please cite the paper,
Asymptotic number of hairpins of saturated RNA secondary structures
by P. Clote, E. Kranakis and D. Krizanc,
*Bull Math Biol* (2014).

**C source code to compute minimum energy structure having k hairpins**

**Mathematica computations**

These computations apply the theorems of Drmota-Lalley-Woods and of Drmota, in order to compute the number of structures and expected number of hairpins.

- Here is Mathematica code to compute the symptotic number of structures and expected number of hairpins, taken over all SATURATED secondary structures, having at least θ unpaired bases in each hairpin, and with stickiness p, where θ=1,3 and p=1,1/2,3/8.
- Here is Mathematica code to compute the asymptotic number of structures and expected number of hairpins, taken over ALL secondary structures, having at least θ unpaired bases in each hairpin, and with stickiness p, where θ=1,3 and p=1,1/2,3/8.
- equivalenceOfGrammarsHairpinSaturated.pdf: Mathematica computation to show equivalence of grammars G1 and G2 in paper.
- expNumHairpinsSatStr2012.pdf: Mathematica computation of the expected number of hairpins, where θ=1,p=1 using more laborious, and less informative method, described in a preliminary draft of the paper, found here in original version.

**Python code using dynamic programming to compute expected number of hairpins**

- expNumHairpinsInListOfStr.py
- filterSatStrFromListOfStr.py
- numSaturated.py
- expNumHairpinsInSaturated.py
- numSaturatedJCB.py
- numSaturatedStr.py
- ratioExpNumHairpinsSatStr.pdf

**Hairpin analysis of STRAND database**

Python programs to analyze the number of hairpins in the STRAND database (necessary, because the STRAND database does not compute the number of hairpins, although stack size, etc. is computed).

**Hairpin analysis of Mathews' RNA collection: number of hairpins as function of RNA length**