JWS-117 Compiled all tools with ./compilebin.sh and some were missing related files.
[jabaws.git] / binaries / src / ViennaRNA / doc / html / group__pf__cofold.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <title>RNAlib-2.1.2: Partition Function for two hybridized Sequences</title>
6 <link href="tabs.css" rel="stylesheet" type="text/css"/>
7 <link href="doxygen.css" rel="stylesheet" type="text/css"/>
8 </head>
9 <body>
10 <!-- Generated by Doxygen 1.6.1 -->
11 <script type="text/javascript">
12 <!--
13 function changeDisplayState (e){
14   var num=this.id.replace(/[^[0-9]/g,'');
15   var button=this.firstChild;
16   var sectionDiv=document.getElementById('dynsection'+num);
17   if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){
18     sectionDiv.style.display='block';
19     button.src='open.gif';
20   }else{
21     sectionDiv.style.display='none';
22     button.src='closed.gif';
23   }
24 }
25 function initDynSections(){
26   var divs=document.getElementsByTagName('div');
27   var sectionCounter=1;
28   for(var i=0;i<divs.length-1;i++){
29     if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){
30       var header=divs[i];
31       var section=divs[i+1];
32       var button=header.firstChild;
33       if (button!='IMG'){
34         divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild);
35         button=document.createElement('img');
36         divs[i].insertBefore(button,divs[i].firstChild);
37       }
38       header.style.cursor='pointer';
39       header.onclick=changeDisplayState;
40       header.id='dynheader'+sectionCounter;
41       button.src='closed.gif';
42       section.id='dynsection'+sectionCounter;
43       section.style.display='none';
44       section.style.marginLeft='14px';
45       sectionCounter++;
46     }
47   }
48 }
49 window.onload = initDynSections;
50 -->
51 </script>
52 <div class="navigation" id="top">
53   <div class="tabs">
54     <ul>
55       <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
56       <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
57       <li><a href="modules.html"><span>Modules</span></a></li>
58       <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
59       <li><a href="files.html"><span>Files</span></a></li>
60     </ul>
61   </div>
62 </div>
63 <div class="contents">
64 <h1>Partition Function for two hybridized Sequences<br/>
65 <small>
66 [<a class="el" href="group__cofold.html">Calculate Secondary Structures of two RNAs upon Dimerization</a>,&nbsp;<a class="el" href="group__pf__fold.html">Calculating Partition Functions and Pair Probabilities</a>]</small>
67 </h1>
68 <p>Partition Function Cofolding.  
69 <a href="#_details">More...</a></p>
70
71 <p><div class="dynheader">
72 Collaboration diagram for Partition Function for two hybridized Sequences:</div>
73 <div class="dynsection">
74 <center><table><tr><td><img src="group__pf__cofold.png" border="0" alt="" usemap="#group____pf____cofold_map"/>
75 <map name="group____pf____cofold_map" id="group____pf____cofold">
76 <area shape="rect" id="node1" href="group__pf__fold.html" title="This section provides information about all functions and variables related to the..." alt="" coords="41,5,372,35"/><area shape="rect" id="node2" href="group__cofold.html" title="Predict structures formed by two molecules upon hybridization." alt="" coords="5,58,408,89"/></map></td></tr></table></center>
77 </div>
78 </p>
79 <table border="0" cellpadding="0" cellspacing="0">
80 <tr><td colspan="2"><h2>Files</h2></td></tr>
81 <tr><td class="memItemLeft" align="right" valign="top">file &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="part__func__co_8h.html">part_func_co.h</a></td></tr>
82
83 <p><tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><p>Partition function for two RNA sequences. </p>
84 <br/></td></tr>
85 </p>
86 <tr><td colspan="2"><h2>Functions</h2></td></tr>
87 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcofoldF.html">cofoldF</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__pf__cofold.html#gaa86a5f998789ed71813d23d7307a791b">co_pf_fold</a> (char *sequence, char *structure)</td></tr>
88 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculate partition function and base pair probabilities.  <a href="#gaa86a5f998789ed71813d23d7307a791b"></a><br/></td></tr>
89 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structcofoldF.html">cofoldF</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__pf__cofold.html#gabd873b450832ab5f21101fc5ab354d21">co_pf_fold_par</a> (char *sequence, char *structure, <a class="el" href="structpf__paramT.html">pf_paramT</a> *parameters, int calculate_bppm, int is_constrained)</td></tr>
90 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Calculate partition function and base pair probabilities.  <a href="#gabd873b450832ab5f21101fc5ab354d21"></a><br/></td></tr>
91 <tr><td class="memItemLeft" align="right" valign="top">double *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__pf__cofold.html#ga11f0252c1d2c4697253ff4b5bd392d3c">export_co_bppm</a> (void)</td></tr>
92 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a pointer to the base pair probability array.  <a href="#ga11f0252c1d2c4697253ff4b5bd392d3c"></a><br/></td></tr>
93 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gade3ce34ae8214811374b1d28a40dc247"></a><!-- doxytag: member="pf_cofold::free_co_pf_arrays" ref="gade3ce34ae8214811374b1d28a40dc247" args="(void)" -->
94 void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__pf__cofold.html#gade3ce34ae8214811374b1d28a40dc247">free_co_pf_arrays</a> (void)</td></tr>
95 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Free the memory occupied by <a class="el" href="group__pf__cofold.html#gaa86a5f998789ed71813d23d7307a791b" title="Calculate partition function and base pair probabilities.">co_pf_fold()</a>. <br/></td></tr>
96 <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__pf__cofold.html#ga6e0f36c1f9b7d9dd4bfbad914c1119e5">update_co_pf_params</a> (int length)</td></tr>
97 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Recalculate energy parameters.  <a href="#ga6e0f36c1f9b7d9dd4bfbad914c1119e5"></a><br/></td></tr>
98 <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__pf__cofold.html#ga117d880df45bef444d5e2785ffa40a53">update_co_pf_params_par</a> (int length, <a class="el" href="structpf__paramT.html">pf_paramT</a> *parameters)</td></tr>
99 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Recalculate energy parameters.  <a href="#ga117d880df45bef444d5e2785ffa40a53"></a><br/></td></tr>
100 <tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__pf__cofold.html#ga15ae04ac5ab84e876dcf0093120cb617">compute_probabilities</a> (double FAB, double FEA, double FEB, struct <a class="el" href="structplist.html">plist</a> *prAB, struct <a class="el" href="structplist.html">plist</a> *prA, struct <a class="el" href="structplist.html">plist</a> *prB, int Alength)</td></tr>
101 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compute Boltzmann probabilities of dimerization without homodimers.  <a href="#ga15ae04ac5ab84e876dcf0093120cb617"></a><br/></td></tr>
102 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="structConcEnt.html">ConcEnt</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__pf__cofold.html#ga5545cb936ac4ff93c7d699d46e72e8c7">get_concentrations</a> (double FEAB, double FEAA, double FEBB, double FEA, double FEB, double *startconc)</td></tr>
103 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Given two start monomer concentrations a and b, compute the concentrations in thermodynamic equilibrium of all dimers and the monomers.  <a href="#ga5545cb936ac4ff93c7d699d46e72e8c7"></a><br/></td></tr>
104 <tr><td colspan="2"><h2>Variables</h2></td></tr>
105 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaff27888c4088cc1f60fd59cbd589474c"></a><!-- doxytag: member="pf_cofold::mirnatog" ref="gaff27888c4088cc1f60fd59cbd589474c" args="" -->
106 int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__pf__cofold.html#gaff27888c4088cc1f60fd59cbd589474c">mirnatog</a></td></tr>
107 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Toggles no intrabp in 2nd mol. <br/></td></tr>
108 <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac2d1851a710a8561390861155ca988fe"></a><!-- doxytag: member="pf_cofold::F_monomer" ref="gac2d1851a710a8561390861155ca988fe" args="[2]" -->
109 double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__pf__cofold.html#gac2d1851a710a8561390861155ca988fe">F_monomer</a> [2]</td></tr>
110 <tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Free energies of the two monomers. <br/></td></tr>
111 </table>
112 <hr/><a name="_details"></a><h2>Detailed Description</h2>
113 <p>Partition Function Cofolding. </p>
114 <p>To simplify the implementation the partition function computation is done internally in a null model that does not include the duplex initiation energy, i.e. the entropic penalty for producing a dimer from two monomers). The resulting free energies and pair probabilities are initially relative to that null model. In a second step the free energies can be corrected to include the dimerization penalty, and the pair probabilities can be divided into the conditional pair probabilities given that a re dimer is formed or not formed. See  bernhart:2006 for further details. </p>
115 <hr/><h2>Function Documentation</h2>
116 <a class="anchor" id="gaa86a5f998789ed71813d23d7307a791b"></a><!-- doxytag: member="part_func_co.h::co_pf_fold" ref="gaa86a5f998789ed71813d23d7307a791b" args="(char *sequence, char *structure)" -->
117 <div class="memitem">
118 <div class="memproto">
119       <table class="memname">
120         <tr>
121           <td class="memname"><a class="el" href="structcofoldF.html">cofoldF</a> co_pf_fold </td>
122           <td>(</td>
123           <td class="paramtype">char *&nbsp;</td>
124           <td class="paramname"> <em>sequence</em>, </td>
125         </tr>
126         <tr>
127           <td class="paramkey"></td>
128           <td></td>
129           <td class="paramtype">char *&nbsp;</td>
130           <td class="paramname"> <em>structure</em></td><td>&nbsp;</td>
131         </tr>
132         <tr>
133           <td></td>
134           <td>)</td>
135           <td></td><td></td><td></td>
136         </tr>
137       </table>
138 </div>
139 <div class="memdoc">
140
141 <p>Calculate partition function and base pair probabilities. </p>
142 <p>This is the cofold partition function folding. The second molecule starts at the <a class="el" href="fold__vars_8h.html#ab9b2c3a37a5516614c06d0ab54b97cda" title="Marks the position (starting from 1) of the first nucleotide of the second molecule...">cut_point</a> nucleotide.</p>
143 <dl class="note"><dt><b>Note:</b></dt><dd>OpenMP: Since this function relies on the global parameters <a class="el" href="fold__vars_8h.html#ad512b5dd4dbec60faccfe137bb474489" title="do backtracking, i.e. compute secondary structures or base pair probabilities">do_backtrack</a>, <a class="el" href="fold__vars_8h.html#a72b511ed1201f7e23ec437e468790d74" title="Switch the energy model for dangling end contributions (0, 1, 2, 3).">dangles</a>, <a class="el" href="fold__vars_8h.html#ab4b11c8d9c758430960896bc3fe82ead" title="Rescale energy parameters to a temperature in degC.">temperature</a> and <a class="el" href="fold__vars_8h.html#ad3b22044065acc6dee0af68931b52cfd" title="A scaling factor used by pf_fold() to avoid overflows.">pf_scale</a> it is not threadsafe according to concurrent changes in these variables! Use <a class="el" href="group__pf__cofold.html#gabd873b450832ab5f21101fc5ab354d21" title="Calculate partition function and base pair probabilities.">co_pf_fold_par()</a> instead to circumvent this issue.</dd></dl>
144 <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__pf__cofold.html#gabd873b450832ab5f21101fc5ab354d21" title="Calculate partition function and base pair probabilities.">co_pf_fold_par()</a></dd></dl>
145 <dl><dt><b>Parameters:</b></dt><dd>
146   <table border="0" cellspacing="2" cellpadding="0">
147     <tr><td valign="top"></td><td valign="top"><em>sequence</em>&nbsp;</td><td>Concatenated RNA sequences </td></tr>
148     <tr><td valign="top"></td><td valign="top"><em>structure</em>&nbsp;</td><td>Will hold the structure or constraints </td></tr>
149   </table>
150   </dd>
151 </dl>
152 <dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="structcofoldF.html">cofoldF</a> structure containing a set of energies needed for concentration computations. </dd></dl>
153
154 </div>
155 </div>
156 <a class="anchor" id="gabd873b450832ab5f21101fc5ab354d21"></a><!-- doxytag: member="part_func_co.h::co_pf_fold_par" ref="gabd873b450832ab5f21101fc5ab354d21" args="(char *sequence, char *structure, pf_paramT *parameters, int calculate_bppm, int is_constrained)" -->
157 <div class="memitem">
158 <div class="memproto">
159       <table class="memname">
160         <tr>
161           <td class="memname"><a class="el" href="structcofoldF.html">cofoldF</a> co_pf_fold_par </td>
162           <td>(</td>
163           <td class="paramtype">char *&nbsp;</td>
164           <td class="paramname"> <em>sequence</em>, </td>
165         </tr>
166         <tr>
167           <td class="paramkey"></td>
168           <td></td>
169           <td class="paramtype">char *&nbsp;</td>
170           <td class="paramname"> <em>structure</em>, </td>
171         </tr>
172         <tr>
173           <td class="paramkey"></td>
174           <td></td>
175           <td class="paramtype"><a class="el" href="structpf__paramT.html">pf_paramT</a> *&nbsp;</td>
176           <td class="paramname"> <em>parameters</em>, </td>
177         </tr>
178         <tr>
179           <td class="paramkey"></td>
180           <td></td>
181           <td class="paramtype">int&nbsp;</td>
182           <td class="paramname"> <em>calculate_bppm</em>, </td>
183         </tr>
184         <tr>
185           <td class="paramkey"></td>
186           <td></td>
187           <td class="paramtype">int&nbsp;</td>
188           <td class="paramname"> <em>is_constrained</em></td><td>&nbsp;</td>
189         </tr>
190         <tr>
191           <td></td>
192           <td>)</td>
193           <td></td><td></td><td></td>
194         </tr>
195       </table>
196 </div>
197 <div class="memdoc">
198
199 <p>Calculate partition function and base pair probabilities. </p>
200 <p>This is the cofold partition function folding. The second molecule starts at the <a class="el" href="fold__vars_8h.html#ab9b2c3a37a5516614c06d0ab54b97cda" title="Marks the position (starting from 1) of the first nucleotide of the second molecule...">cut_point</a> nucleotide.</p>
201 <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__energy__parameters.html#ga6fc2f3eef5a3024d44963ac59a42e39d" title="Get precomputed Boltzmann factors of the loop type dependent energy contributions...">get_boltzmann_factors()</a>, <a class="el" href="group__pf__cofold.html#gaa86a5f998789ed71813d23d7307a791b" title="Calculate partition function and base pair probabilities.">co_pf_fold()</a></dd></dl>
202 <dl><dt><b>Parameters:</b></dt><dd>
203   <table border="0" cellspacing="2" cellpadding="0">
204     <tr><td valign="top"></td><td valign="top"><em>sequence</em>&nbsp;</td><td>Concatenated RNA sequences </td></tr>
205     <tr><td valign="top"></td><td valign="top"><em>structure</em>&nbsp;</td><td>Pointer to the structure constraint </td></tr>
206     <tr><td valign="top"></td><td valign="top"><em>parameters</em>&nbsp;</td><td>Data structure containing the precalculated Boltzmann factors </td></tr>
207     <tr><td valign="top"></td><td valign="top"><em>calculate_bppm</em>&nbsp;</td><td>Switch to turn Base pair probability calculations on/off (0==off) </td></tr>
208     <tr><td valign="top"></td><td valign="top"><em>is_constrained</em>&nbsp;</td><td>Switch to indicate that a structure contraint is passed via the structure argument (0==off) </td></tr>
209   </table>
210   </dd>
211 </dl>
212 <dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="structcofoldF.html">cofoldF</a> structure containing a set of energies needed for concentration computations. </dd></dl>
213
214 </div>
215 </div>
216 <a class="anchor" id="ga11f0252c1d2c4697253ff4b5bd392d3c"></a><!-- doxytag: member="part_func_co.h::export_co_bppm" ref="ga11f0252c1d2c4697253ff4b5bd392d3c" args="(void)" -->
217 <div class="memitem">
218 <div class="memproto">
219       <table class="memname">
220         <tr>
221           <td class="memname">double* export_co_bppm </td>
222           <td>(</td>
223           <td class="paramtype">void&nbsp;</td>
224           <td class="paramname"></td>
225           <td>&nbsp;)&nbsp;</td>
226           <td></td>
227         </tr>
228       </table>
229 </div>
230 <div class="memdoc">
231
232 <p>Get a pointer to the base pair probability array. </p>
233 <p>Accessing the base pair probabilities for a pair (i,j) is achieved by </p>
234 <div class="fragment"><pre class="fragment">FLT_OR_DBL *pr = export_bppm(); pr_ij = pr[iindx[i]-j]; </pre></div><dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="utils_8h.html#a55c0f6b3b07b6adf2ee235ba901fe397" title="Get an index mapper array (iindx) for accessing the energy matrices, e.g. in partition...">get_iindx()</a> </dd></dl>
235 <dl class="return"><dt><b>Returns:</b></dt><dd>A pointer to the base pair probability array </dd></dl>
236
237 </div>
238 </div>
239 <a class="anchor" id="ga6e0f36c1f9b7d9dd4bfbad914c1119e5"></a><!-- doxytag: member="part_func_co.h::update_co_pf_params" ref="ga6e0f36c1f9b7d9dd4bfbad914c1119e5" args="(int length)" -->
240 <div class="memitem">
241 <div class="memproto">
242       <table class="memname">
243         <tr>
244           <td class="memname">void update_co_pf_params </td>
245           <td>(</td>
246           <td class="paramtype">int&nbsp;</td>
247           <td class="paramname"> <em>length</em></td>
248           <td>&nbsp;)&nbsp;</td>
249           <td></td>
250         </tr>
251       </table>
252 </div>
253 <div class="memdoc">
254
255 <p>Recalculate energy parameters. </p>
256 <p>This function recalculates all energy parameters given the current model settings.</p>
257 <dl class="note"><dt><b>Note:</b></dt><dd>This function relies on the global variables <a class="el" href="fold__vars_8h.html#ad3b22044065acc6dee0af68931b52cfd" title="A scaling factor used by pf_fold() to avoid overflows.">pf_scale</a>, <a class="el" href="fold__vars_8h.html#a72b511ed1201f7e23ec437e468790d74" title="Switch the energy model for dangling end contributions (0, 1, 2, 3).">dangles</a> and <a class="el" href="fold__vars_8h.html#ab4b11c8d9c758430960896bc3fe82ead" title="Rescale energy parameters to a temperature in degC.">temperature</a>. Thus it might not be threadsafe in certain situations. Use <a class="el" href="group__pf__cofold.html#ga117d880df45bef444d5e2785ffa40a53" title="Recalculate energy parameters.">update_co_pf_params_par()</a> instead.</dd></dl>
258 <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__energy__parameters.html#ga6fc2f3eef5a3024d44963ac59a42e39d" title="Get precomputed Boltzmann factors of the loop type dependent energy contributions...">get_boltzmann_factors()</a>, <a class="el" href="group__pf__cofold.html#ga117d880df45bef444d5e2785ffa40a53" title="Recalculate energy parameters.">update_co_pf_params_par()</a></dd></dl>
259 <dl><dt><b>Parameters:</b></dt><dd>
260   <table border="0" cellspacing="2" cellpadding="0">
261     <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>Length of the current RNA sequence </td></tr>
262   </table>
263   </dd>
264 </dl>
265
266 </div>
267 </div>
268 <a class="anchor" id="ga117d880df45bef444d5e2785ffa40a53"></a><!-- doxytag: member="part_func_co.h::update_co_pf_params_par" ref="ga117d880df45bef444d5e2785ffa40a53" args="(int length, pf_paramT *parameters)" -->
269 <div class="memitem">
270 <div class="memproto">
271       <table class="memname">
272         <tr>
273           <td class="memname">void update_co_pf_params_par </td>
274           <td>(</td>
275           <td class="paramtype">int&nbsp;</td>
276           <td class="paramname"> <em>length</em>, </td>
277         </tr>
278         <tr>
279           <td class="paramkey"></td>
280           <td></td>
281           <td class="paramtype"><a class="el" href="structpf__paramT.html">pf_paramT</a> *&nbsp;</td>
282           <td class="paramname"> <em>parameters</em></td><td>&nbsp;</td>
283         </tr>
284         <tr>
285           <td></td>
286           <td>)</td>
287           <td></td><td></td><td></td>
288         </tr>
289       </table>
290 </div>
291 <div class="memdoc">
292
293 <p>Recalculate energy parameters. </p>
294 <p>This function recalculates all energy parameters given the current model settings. It's second argument can either be NULL or a data structure containing the precomputed Boltzmann factors. In the first scenario, the necessary data structure will be created automatically according to the current global model settings, i.e. this mode might not be threadsafe. However, if the provided data structure is not NULL, threadsafety for the model parameters <a class="el" href="fold__vars_8h.html#a72b511ed1201f7e23ec437e468790d74" title="Switch the energy model for dangling end contributions (0, 1, 2, 3).">dangles</a>, <a class="el" href="fold__vars_8h.html#ad3b22044065acc6dee0af68931b52cfd" title="A scaling factor used by pf_fold() to avoid overflows.">pf_scale</a> and <a class="el" href="fold__vars_8h.html#ab4b11c8d9c758430960896bc3fe82ead" title="Rescale energy parameters to a temperature in degC.">temperature</a> is regained, since their values are taken from this data structure during subsequent calculations.</p>
295 <dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__energy__parameters.html#ga6fc2f3eef5a3024d44963ac59a42e39d" title="Get precomputed Boltzmann factors of the loop type dependent energy contributions...">get_boltzmann_factors()</a>, <a class="el" href="group__pf__cofold.html#ga6e0f36c1f9b7d9dd4bfbad914c1119e5" title="Recalculate energy parameters.">update_co_pf_params()</a></dd></dl>
296 <dl><dt><b>Parameters:</b></dt><dd>
297   <table border="0" cellspacing="2" cellpadding="0">
298     <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>Length of the current RNA sequence </td></tr>
299     <tr><td valign="top"></td><td valign="top"><em>parameters</em>&nbsp;</td><td>data structure containing the precomputed Boltzmann factors </td></tr>
300   </table>
301   </dd>
302 </dl>
303
304 </div>
305 </div>
306 <a class="anchor" id="ga15ae04ac5ab84e876dcf0093120cb617"></a><!-- doxytag: member="part_func_co.h::compute_probabilities" ref="ga15ae04ac5ab84e876dcf0093120cb617" args="(double FAB, double FEA, double FEB, struct plist *prAB, struct plist *prA, struct plist *prB, int Alength)" -->
307 <div class="memitem">
308 <div class="memproto">
309       <table class="memname">
310         <tr>
311           <td class="memname">void compute_probabilities </td>
312           <td>(</td>
313           <td class="paramtype">double&nbsp;</td>
314           <td class="paramname"> <em>FAB</em>, </td>
315         </tr>
316         <tr>
317           <td class="paramkey"></td>
318           <td></td>
319           <td class="paramtype">double&nbsp;</td>
320           <td class="paramname"> <em>FEA</em>, </td>
321         </tr>
322         <tr>
323           <td class="paramkey"></td>
324           <td></td>
325           <td class="paramtype">double&nbsp;</td>
326           <td class="paramname"> <em>FEB</em>, </td>
327         </tr>
328         <tr>
329           <td class="paramkey"></td>
330           <td></td>
331           <td class="paramtype">struct <a class="el" href="structplist.html">plist</a> *&nbsp;</td>
332           <td class="paramname"> <em>prAB</em>, </td>
333         </tr>
334         <tr>
335           <td class="paramkey"></td>
336           <td></td>
337           <td class="paramtype">struct <a class="el" href="structplist.html">plist</a> *&nbsp;</td>
338           <td class="paramname"> <em>prA</em>, </td>
339         </tr>
340         <tr>
341           <td class="paramkey"></td>
342           <td></td>
343           <td class="paramtype">struct <a class="el" href="structplist.html">plist</a> *&nbsp;</td>
344           <td class="paramname"> <em>prB</em>, </td>
345         </tr>
346         <tr>
347           <td class="paramkey"></td>
348           <td></td>
349           <td class="paramtype">int&nbsp;</td>
350           <td class="paramname"> <em>Alength</em></td><td>&nbsp;</td>
351         </tr>
352         <tr>
353           <td></td>
354           <td>)</td>
355           <td></td><td></td><td></td>
356         </tr>
357       </table>
358 </div>
359 <div class="memdoc">
360
361 <p>Compute Boltzmann probabilities of dimerization without homodimers. </p>
362 <p>Given the pair probabilities and free energies (in the null model) for a dimer AB and the two constituent monomers A and B, compute the conditional pair probabilities given that a dimer AB actually forms. Null model pair probabilities are given as a list as produced by <a class="el" href="group__pf__fold.html#ga03e15e831a31b1154855ab47edbdb019" title="Create a plist from a probability matrix.">assign_plist_from_pr()</a>, the dimer probabilities 'prAB' are modified in place.</p>
363 <dl><dt><b>Parameters:</b></dt><dd>
364   <table border="0" cellspacing="2" cellpadding="0">
365     <tr><td valign="top"></td><td valign="top"><em>FAB</em>&nbsp;</td><td>free energy of dimer AB </td></tr>
366     <tr><td valign="top"></td><td valign="top"><em>FEA</em>&nbsp;</td><td>free energy of monomer A </td></tr>
367     <tr><td valign="top"></td><td valign="top"><em>FEB</em>&nbsp;</td><td>free energy of monomer B </td></tr>
368     <tr><td valign="top"></td><td valign="top"><em>prAB</em>&nbsp;</td><td>pair probabilities for dimer </td></tr>
369     <tr><td valign="top"></td><td valign="top"><em>prA</em>&nbsp;</td><td>pair probabilities monomer </td></tr>
370     <tr><td valign="top"></td><td valign="top"><em>prB</em>&nbsp;</td><td>pair probabilities monomer </td></tr>
371     <tr><td valign="top"></td><td valign="top"><em>Alength</em>&nbsp;</td><td>Length of molecule A </td></tr>
372   </table>
373   </dd>
374 </dl>
375
376 </div>
377 </div>
378 <a class="anchor" id="ga5545cb936ac4ff93c7d699d46e72e8c7"></a><!-- doxytag: member="part_func_co.h::get_concentrations" ref="ga5545cb936ac4ff93c7d699d46e72e8c7" args="(double FEAB, double FEAA, double FEBB, double FEA, double FEB, double *startconc)" -->
379 <div class="memitem">
380 <div class="memproto">
381       <table class="memname">
382         <tr>
383           <td class="memname"><a class="el" href="structConcEnt.html">ConcEnt</a>* get_concentrations </td>
384           <td>(</td>
385           <td class="paramtype">double&nbsp;</td>
386           <td class="paramname"> <em>FEAB</em>, </td>
387         </tr>
388         <tr>
389           <td class="paramkey"></td>
390           <td></td>
391           <td class="paramtype">double&nbsp;</td>
392           <td class="paramname"> <em>FEAA</em>, </td>
393         </tr>
394         <tr>
395           <td class="paramkey"></td>
396           <td></td>
397           <td class="paramtype">double&nbsp;</td>
398           <td class="paramname"> <em>FEBB</em>, </td>
399         </tr>
400         <tr>
401           <td class="paramkey"></td>
402           <td></td>
403           <td class="paramtype">double&nbsp;</td>
404           <td class="paramname"> <em>FEA</em>, </td>
405         </tr>
406         <tr>
407           <td class="paramkey"></td>
408           <td></td>
409           <td class="paramtype">double&nbsp;</td>
410           <td class="paramname"> <em>FEB</em>, </td>
411         </tr>
412         <tr>
413           <td class="paramkey"></td>
414           <td></td>
415           <td class="paramtype">double *&nbsp;</td>
416           <td class="paramname"> <em>startconc</em></td><td>&nbsp;</td>
417         </tr>
418         <tr>
419           <td></td>
420           <td>)</td>
421           <td></td><td></td><td></td>
422         </tr>
423       </table>
424 </div>
425 <div class="memdoc">
426
427 <p>Given two start monomer concentrations a and b, compute the concentrations in thermodynamic equilibrium of all dimers and the monomers. </p>
428 <p>This function takes an array 'startconc' of input concentrations with alternating entries for the initial concentrations of molecules A and B (terminated by two zeroes), then computes the resulting equilibrium concentrations from the free energies for the dimers. Dimer free energies should be the dimer-only free energies, i.e. the FcAB entries from the <a class="el" href="structcofoldF.html">cofoldF</a> struct.</p>
429 <dl><dt><b>Parameters:</b></dt><dd>
430   <table border="0" cellspacing="2" cellpadding="0">
431     <tr><td valign="top"></td><td valign="top"><em>FEAB</em>&nbsp;</td><td>Free energy of AB dimer (FcAB entry) </td></tr>
432     <tr><td valign="top"></td><td valign="top"><em>FEAA</em>&nbsp;</td><td>Free energy of AA dimer (FcAB entry) </td></tr>
433     <tr><td valign="top"></td><td valign="top"><em>FEBB</em>&nbsp;</td><td>Free energy of BB dimer (FcAB entry) </td></tr>
434     <tr><td valign="top"></td><td valign="top"><em>FEA</em>&nbsp;</td><td>Free energy of monomer A </td></tr>
435     <tr><td valign="top"></td><td valign="top"><em>FEB</em>&nbsp;</td><td>Free energy of monomer B </td></tr>
436     <tr><td valign="top"></td><td valign="top"><em>startconc</em>&nbsp;</td><td>List of start concentrations [a0],[b0],[a1],[b1],...,[an][bn],[0],[0] </td></tr>
437   </table>
438   </dd>
439 </dl>
440 <dl class="return"><dt><b>Returns:</b></dt><dd><a class="el" href="structConcEnt.html">ConcEnt</a> array containing the equilibrium energies and start concentrations </dd></dl>
441
442 </div>
443 </div>
444 </div>
445 <hr size="1"/><address style="text-align: right;"><small>Generated on 11 Apr 2017 for RNAlib-2.1.2 by&nbsp;
446 <a href="http://www.doxygen.org/index.html">
447 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
448 </body>
449 </html>