--- /dev/null
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<title>RNAlib-2.1.2: /home/mescalin/ronny/public_html/programs/ViennaRNA/H/alifold.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">RNAlib-2.1.2
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.1.1 -->
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main Page</span></a></li>
+ <li><a href="pages.html"><span>Related Pages</span></a></li>
+ <li><a href="modules.html"><span>Modules</span></a></li>
+ <li><a href="annotated.html"><span>Data Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('alifold_8h.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">alifold.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="alifold_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="preprocessor">#ifndef __VIENNA_RNA_PACKAGE_ALIFOLD_H__</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="preprocessor"></span><span class="preprocessor">#define __VIENNA_RNA_PACKAGE_ALIFOLD_H__</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="preprocessor"></span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="preprocessor">#include "<a class="code" href="data__structures_8h.html" title="All datastructures and typedefs shared among the Vienna RNA Package can be found here.">data_structures.h</a>"</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> </div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keyword">extern</span> <span class="keywordtype">double</span> <a class="code" href="group__consensus__fold.html#gaf3cbac6ff5d706d6e414677841ddf94c" title="This variable controls the weight of the covariance term in the energy function of alignment folding ...">cv_fact</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keyword">extern</span> <span class="keywordtype">double</span> <a class="code" href="group__consensus__fold.html#ga502948a122a2af5b914355b1f3ea2f61" title="This variable controls the magnitude of the penalty for non-compatible sequences in the covariance te...">nc_fact</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment">/*</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment">##############################################</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment"># MFE VARIANTS OF THE ALIFOLD IMPLEMENTATION #</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment">##############################################</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">*/</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">void</span> <a class="code" href="alifold_8h.html#ac484c6bd429bafbd353b91044508d8e9" title="Update the energy parameters for alifold function.">update_alifold_params</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordtype">float</span> <a class="code" href="group__consensus__mfe__fold.html#ga4cf00f0659e5f0480335d69e797f05b1" title="Compute MFE and according consensus structure of an alignment of sequences.">alifold</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> **strings,</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keywordtype">char</span> *structure);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordtype">float</span> <a class="code" href="group__consensus__mfe__fold.html#gadbd3b0b1c144cbfb4efe704b2b260f96" title="Compute MFE and according structure of an alignment of sequences assuming the sequences are circular ...">circalifold</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> **strings,</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keywordtype">char</span> *structure);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">void</span> <a class="code" href="group__consensus__mfe__fold.html#ga72095e4554b5d577250ea14c42acc49e" title="Free the memory occupied by MFE alifold functions.">free_alifold_arrays</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordtype">int</span> <a class="code" href="group__consensus__fold.html#gaa2d600be90844094ec145ea14a314d2f" title="Get the mean pairwise identity in steps from ?to?(ident)">get_mpi</a>(<span class="keywordtype">char</span> *Alseq[],</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>  <span class="keywordtype">int</span> n_seq,</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>  <span class="keywordtype">int</span> length,</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>  <span class="keywordtype">int</span> *mini);</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="keywordtype">float</span> **<a class="code" href="group__consensus__fold.html#ga5e125c9586fcd4e2e1559fe76f7289cc" title="Read a ribosum or other user-defined scoring matrix.">readribosum</a>(<span class="keywordtype">char</span> *name);</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="keywordtype">float</span> <a class="code" href="group__consensus__fold.html#ga1c48869c03b49a342bf4cbdd61900081" title="Calculate the free energy of a consensus structure given a set of aligned sequences.">energy_of_alistruct</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> **sequences,</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keyword">const</span> <span class="keywordtype">char</span> *structure,</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <span class="keywordtype">int</span> n_seq,</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  <span class="keywordtype">float</span> *energy);</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordtype">float</span> energy_of_ali_gquad_structure(<span class="keyword">const</span> <span class="keywordtype">char</span> **sequences,</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  <span class="keyword">const</span> <span class="keywordtype">char</span> *structure,</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordtype">int</span> n_seq,</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  <span class="keywordtype">float</span> *energy);</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="comment">/*</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="comment">#############################################################</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="comment"># some helper functions that might be useful in the library #</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="comment">#############################################################</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="comment">*/</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="keywordtype">void</span> <a class="code" href="group__consensus__fold.html#gaa3e40277c837d6f7603afe319884c786" title="Get arrays with encoded sequence of the alignment.">encode_ali_sequence</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> *sequence,</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  <span class="keywordtype">short</span> *S,</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  <span class="keywordtype">short</span> *s5,</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  <span class="keywordtype">short</span> *s3,</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>  <span class="keywordtype">char</span> *ss,</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> *as,</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>  <span class="keywordtype">int</span> circ);</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordtype">void</span> <a class="code" href="group__consensus__fold.html#ga8a560930f7f2582cc3967723a86cfdfa" title="Allocate memory for sequence array used to deal with aligned sequences.">alloc_sequence_arrays</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> **sequences,</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>  <span class="keywordtype">short</span> ***S,</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>  <span class="keywordtype">short</span> ***S5,</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>  <span class="keywordtype">short</span> ***S3,</div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> ***a2s,</div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>  <span class="keywordtype">char</span> ***Ss,</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>  <span class="keywordtype">int</span> circ);</div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> </div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="keywordtype">void</span> <a class="code" href="group__consensus__fold.html#ga298a420a8c879202e2617b3f724fde38" title="Free the memory of the sequence arrays used to deal with aligned sequences.">free_sequence_arrays</a>( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> n_seq,</div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  <span class="keywordtype">short</span> ***S,</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>  <span class="keywordtype">short</span> ***S5,</div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>  <span class="keywordtype">short</span> ***S3,</div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> ***a2s,</div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>  <span class="keywordtype">char</span> ***Ss);</div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="comment">/*</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="comment">#############################################################</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="comment"># PARTITION FUNCTION VARIANTS OF THE ALIFOLD IMPLEMENTATION #</span></div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="comment">#############################################################</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="comment">*/</span></div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> </div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> </div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="keywordtype">float</span> <a class="code" href="group__consensus__pf__fold.html#ga4d2ff54d8210fc7cceeeff389d4dbd1d">alipf_fold_par</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> **sequences,</div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>  <span class="keywordtype">char</span> *structure,</div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>  <a class="code" href="structplist.html" title="this datastructure is used as input parameter in functions of PS_dot.h and others">plist</a> **pl,</div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>  <a class="code" href="structpf__paramT.html" title="The datastructure that contains temperature scaled Boltzmann weights of the energy parameters...">pf_paramT</a> *parameters,</div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>  <span class="keywordtype">int</span> calculate_bppm,</div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>  <span class="keywordtype">int</span> is_constrained,</div>
+<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>  <span class="keywordtype">int</span> is_circular);</div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> </div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="keywordtype">float</span> <a class="code" href="group__consensus__pf__fold.html#gad32ded7d753ccaf211ab35782d1f42a9" title="The partition function version of alifold() works in analogy to pf_fold(). Pair probabilities and inf...">alipf_fold</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> **sequences,</div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>  <span class="keywordtype">char</span> *structure,</div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>  <a class="code" href="structplist.html" title="this datastructure is used as input parameter in functions of PS_dot.h and others">plist</a> **pl);</div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> </div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="keywordtype">float</span> <a class="code" href="group__consensus__pf__fold.html#ga6b4dde1d43b79ab3753508c46cf50363">alipf_circ_fold</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> **sequences,</div>
+<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>  <span class="keywordtype">char</span> *structure,</div>
+<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>  <a class="code" href="structplist.html" title="this datastructure is used as input parameter in functions of PS_dot.h and others">plist</a> **pl);</div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> </div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> </div>
+<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> FLT_OR_DBL *<a class="code" href="group__consensus__pf__fold.html#gadaaf83394216413505e48d913dbc1b4e" title="Get a pointer to the base pair probability array.">export_ali_bppm</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> </div>
+<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="keywordtype">void</span> free_alipf_arrays(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> </div>
+<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="keywordtype">char</span> *<a class="code" href="group__consensus__stochbt.html#ga0df40248788f0fb17ebdc59d74116d1c" title="Sample a consensus secondary structure from the Boltzmann ensemble according its probability ...">alipbacktrack</a>(<span class="keywordtype">double</span> *prob);</div>
+<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> </div>
+<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div>
+<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="keywordtype">int</span> <a class="code" href="group__consensus__fold.html#ga0cc49457fd79eeb04d4a7f97c868b09b" title="Get pointers to (almost) all relavant arrays used in alifold's partition function computation...">get_alipf_arrays</a>(<span class="keywordtype">short</span> ***S_p,</div>
+<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>  <span class="keywordtype">short</span> ***S5_p,</div>
+<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>  <span class="keywordtype">short</span> ***S3_p,</div>
+<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>  <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> ***a2s_p,</div>
+<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>  <span class="keywordtype">char</span> ***Ss_p,</div>
+<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>  FLT_OR_DBL **qb_p,</div>
+<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>  FLT_OR_DBL **qm_p,</div>
+<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>  FLT_OR_DBL **q1k_p,</div>
+<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>  FLT_OR_DBL **qln_p,</div>
+<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>  <span class="keywordtype">short</span> **pscore);</div>
+<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> </div>
+<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_d72344b28b4f2089ce25682c4e6eba22.html">H</a></li><li class="navelem"><a class="el" href="alifold_8h.html">alifold.h</a></li>
+ <li class="footer">Generated on Wed Jul 24 2013 13:38:55 for RNAlib-2.1.2 by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.1.1 </li>
+ </ul>
+</div>
+</body>
+</html>