1\hypertarget{group__eval__loops__ext}{}\doxysection{Exterior Loops}
2\label{group__eval__loops__ext}\index{Exterior Loops@{Exterior Loops}}
3
4
5Functions to evaluate the free energy contributions for exterior loops.
6
7
8
9
10\doxysubsection{Detailed Description}
11Functions to evaluate the free energy contributions for exterior loops.
12
13Collaboration diagram for Exterior Loops\+:
14\nopagebreak
15\begin{figure}[H]
16\begin{center}
17\leavevmode
18\includegraphics[width=350pt]{group__eval__loops__ext}
19\end{center}
20\end{figure}
21\doxysubsection*{Files}
22\begin{DoxyCompactItemize}
23\item
24file \mbox{\hyperlink{external_8h}{external.\+h}}
25\begin{DoxyCompactList}\small\item\em Energy evaluation of exterior loops for MFE and partition function calculations. \end{DoxyCompactList}\end{DoxyCompactItemize}
26\doxysubsection*{Boltzmann weight (partition function) interface}
27\begin{DoxyCompactItemize}
28\item
29typedef struct vrna\+\_\+mx\+\_\+pf\+\_\+aux\+\_\+el\+\_\+s $\ast$ \mbox{\hyperlink{group__eval__loops__ext_gaf9d5160c11ffad3ec258124a77fee13c}{vrna\+\_\+mx\+\_\+pf\+\_\+aux\+\_\+el\+\_\+t}}
30\begin{DoxyCompactList}\small\item\em Auxiliary helper arrays for fast exterior loop computations. \end{DoxyCompactList}\item
31\mbox{\hyperlink{group__data__structures_ga31125aeace516926bf7f251f759b6126}{FLT\+\_\+\+OR\+\_\+\+DBL}} \mbox{\hyperlink{group__eval__loops__ext_ga357484958d3cd677f88f16c75c8a5730}{vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+stem}} (unsigned int type, int n5d, int n3d, \mbox{\hyperlink{group__energy__parameters_ga01d8b92fe734df8d79a6169482c7d8d8}{vrna\+\_\+exp\+\_\+param\+\_\+t}} $\ast$p)
32\begin{DoxyCompactList}\small\item\em Evaluate a stem branching off the exterior loop (Boltzmann factor version) \end{DoxyCompactList}\item
33\mbox{\Hypertarget{group__eval__loops__ext_ga88bf7b86f25fff9d828008df48779539}\label{group__eval__loops__ext_ga88bf7b86f25fff9d828008df48779539}}
34\mbox{\hyperlink{group__eval__loops__ext_gaf9d5160c11ffad3ec258124a77fee13c}{vrna\+\_\+mx\+\_\+pf\+\_\+aux\+\_\+el\+\_\+t}} {\bfseries vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+fast\+\_\+init} (\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$fc)
35\item
36\mbox{\Hypertarget{group__eval__loops__ext_ga560d6123a175af3c8fb668885da8b78c}\label{group__eval__loops__ext_ga560d6123a175af3c8fb668885da8b78c}}
37void {\bfseries vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+fast\+\_\+rotate} (\mbox{\hyperlink{group__eval__loops__ext_gaf9d5160c11ffad3ec258124a77fee13c}{vrna\+\_\+mx\+\_\+pf\+\_\+aux\+\_\+el\+\_\+t}} aux\+\_\+mx)
38\item
39\mbox{\Hypertarget{group__eval__loops__ext_ga90c23338dfb678853d34e4ca91cda370}\label{group__eval__loops__ext_ga90c23338dfb678853d34e4ca91cda370}}
40void {\bfseries vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+fast\+\_\+free} (\mbox{\hyperlink{group__eval__loops__ext_gaf9d5160c11ffad3ec258124a77fee13c}{vrna\+\_\+mx\+\_\+pf\+\_\+aux\+\_\+el\+\_\+t}} aux\+\_\+mx)
41\item
42\mbox{\Hypertarget{group__eval__loops__ext_ga1522bbee3c068632367decfcdbeeeb74}\label{group__eval__loops__ext_ga1522bbee3c068632367decfcdbeeeb74}}
43\mbox{\hyperlink{group__data__structures_ga31125aeace516926bf7f251f759b6126}{FLT\+\_\+\+OR\+\_\+\+DBL}} {\bfseries vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+fast} (\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$fc, int i, int j, \mbox{\hyperlink{group__eval__loops__ext_gaf9d5160c11ffad3ec258124a77fee13c}{vrna\+\_\+mx\+\_\+pf\+\_\+aux\+\_\+el\+\_\+t}} aux\+\_\+mx)
44\item
45\mbox{\Hypertarget{group__eval__loops__ext_gaf371b09437ca36067620b9bab14baa86}\label{group__eval__loops__ext_gaf371b09437ca36067620b9bab14baa86}}
46void {\bfseries vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+fast\+\_\+update} (\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$fc, int j, \mbox{\hyperlink{group__eval__loops__ext_gaf9d5160c11ffad3ec258124a77fee13c}{vrna\+\_\+mx\+\_\+pf\+\_\+aux\+\_\+el\+\_\+t}} aux\+\_\+mx)
47\end{DoxyCompactItemize}
48\doxysubsection*{Basic free energy interface}
49\begin{DoxyCompactItemize}
50\item
51int \mbox{\hyperlink{group__eval__loops__ext_gaa0c313c90da11aa741dcd62746d85337}{vrna\+\_\+\+E\+\_\+ext\+\_\+stem}} (unsigned int type, int n5d, int n3d, \mbox{\hyperlink{group__energy__parameters_ga8a69ca7d787e4fd6079914f5343a1f35}{vrna\+\_\+param\+\_\+t}} $\ast$p)
52\begin{DoxyCompactList}\small\item\em Evaluate a stem branching off the exterior loop. \end{DoxyCompactList}\item
53int \mbox{\hyperlink{group__eval__loops__ext_gace51f32d5b34b7003b51c948afc6c207}{vrna\+\_\+\+E\+\_\+ext\+\_\+loop}} (\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$fc, int i, int j)
54\begin{DoxyCompactList}\small\item\em Evaluate the free energy of a base pair in the exterior loop. \end{DoxyCompactList}\item
55\mbox{\Hypertarget{group__eval__loops__ext_gad26689b27fcaab5a1dcbd0d37d27ad5f}\label{group__eval__loops__ext_gad26689b27fcaab5a1dcbd0d37d27ad5f}}
56int {\bfseries vrna\+\_\+\+E\+\_\+ext\+\_\+loop\+\_\+5} (\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$fc)
57\item
58\mbox{\Hypertarget{group__eval__loops__ext_ga6e57363a8ff3597cc69181c33fbb8196}\label{group__eval__loops__ext_ga6e57363a8ff3597cc69181c33fbb8196}}
59int {\bfseries vrna\+\_\+\+E\+\_\+ext\+\_\+loop\+\_\+3} (\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$fc, int i)
60\end{DoxyCompactItemize}
61
62
63\doxysubsection{Typedef Documentation}
64\mbox{\Hypertarget{group__eval__loops__ext_gaf9d5160c11ffad3ec258124a77fee13c}\label{group__eval__loops__ext_gaf9d5160c11ffad3ec258124a77fee13c}}
65\index{Exterior Loops@{Exterior Loops}!vrna\_mx\_pf\_aux\_el\_t@{vrna\_mx\_pf\_aux\_el\_t}}
66\index{vrna\_mx\_pf\_aux\_el\_t@{vrna\_mx\_pf\_aux\_el\_t}!Exterior Loops@{Exterior Loops}}
67\doxysubsubsection{\texorpdfstring{vrna\_mx\_pf\_aux\_el\_t}{vrna\_mx\_pf\_aux\_el\_t}}
68{\footnotesize\ttfamily typedef struct vrna\+\_\+mx\+\_\+pf\+\_\+aux\+\_\+el\+\_\+s$\ast$ \mbox{\hyperlink{group__eval__loops__ext_gaf9d5160c11ffad3ec258124a77fee13c}{vrna\+\_\+mx\+\_\+pf\+\_\+aux\+\_\+el\+\_\+t}}}
69
70
71
72{\ttfamily \#include $<$\mbox{\hyperlink{external_8h}{Vienna\+RNA/loops/external.\+h}}$>$}
73
74
75
76Auxiliary helper arrays for fast exterior loop computations.
77
78\begin{DoxySeeAlso}{See also}
79vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+fast\+\_\+init(), vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+fast\+\_\+rotate(), vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+fast\+\_\+free(), vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+fast()
80\end{DoxySeeAlso}
81
82
83\doxysubsection{Function Documentation}
84\mbox{\Hypertarget{group__eval__loops__ext_gaa0c313c90da11aa741dcd62746d85337}\label{group__eval__loops__ext_gaa0c313c90da11aa741dcd62746d85337}}
85\index{Exterior Loops@{Exterior Loops}!vrna\_E\_ext\_stem@{vrna\_E\_ext\_stem}}
86\index{vrna\_E\_ext\_stem@{vrna\_E\_ext\_stem}!Exterior Loops@{Exterior Loops}}
87\doxysubsubsection{\texorpdfstring{vrna\_E\_ext\_stem()}{vrna\_E\_ext\_stem()}}
88{\footnotesize\ttfamily int vrna\+\_\+\+E\+\_\+ext\+\_\+stem (\begin{DoxyParamCaption}\item[{unsigned int}]{type,  }\item[{int}]{n5d,  }\item[{int}]{n3d,  }\item[{\mbox{\hyperlink{group__energy__parameters_ga8a69ca7d787e4fd6079914f5343a1f35}{vrna\+\_\+param\+\_\+t}} $\ast$}]{p }\end{DoxyParamCaption})}
89
90
91
92{\ttfamily \#include $<$\mbox{\hyperlink{external_8h}{Vienna\+RNA/loops/external.\+h}}$>$}
93
94
95
96Evaluate a stem branching off the exterior loop.
97
98Given a base pair $(i,j)$ encoded by {\itshape type}, compute the energy contribution including dangling-\/end/terminal-\/mismatch contributions. Instead of returning the energy contribution per-\/se, this function returns the corresponding Boltzmann factor. If either of the adjacent nucleotides $(i - 1)$ and $(j+1)$ must not contribute stacking energy, the corresponding encoding must be $-1$.
99
100\begin{DoxySeeAlso}{See also}
101vrna\+\_\+\+E\+\_\+exp\+\_\+stem()
102\end{DoxySeeAlso}
103
104\begin{DoxyParams}{Parameters}
105{\em type} & The base pair encoding \\
106\hline
107{\em n5d} & The encoded nucleotide directly adjacent at the 5\textquotesingle{} side of the base pair (may be -\/1) \\
108\hline
109{\em n3d} & The encoded nucleotide directly adjacent at the 3\textquotesingle{} side of the base pair (may be -\/1) \\
110\hline
111{\em p} & The pre-\/computed energy parameters \\
112\hline
113\end{DoxyParams}
114\begin{DoxyReturn}{Returns}
115The energy contribution of the introduced exterior-\/loop stem
116\end{DoxyReturn}
117\mbox{\Hypertarget{group__eval__loops__ext_gace51f32d5b34b7003b51c948afc6c207}\label{group__eval__loops__ext_gace51f32d5b34b7003b51c948afc6c207}}
118\index{Exterior Loops@{Exterior Loops}!vrna\_E\_ext\_loop@{vrna\_E\_ext\_loop}}
119\index{vrna\_E\_ext\_loop@{vrna\_E\_ext\_loop}!Exterior Loops@{Exterior Loops}}
120\doxysubsubsection{\texorpdfstring{vrna\_E\_ext\_loop()}{vrna\_E\_ext\_loop()}}
121{\footnotesize\ttfamily int vrna\+\_\+\+E\+\_\+ext\+\_\+loop (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$}]{fc,  }\item[{int}]{i,  }\item[{int}]{j }\end{DoxyParamCaption})}
122
123
124
125{\ttfamily \#include $<$\mbox{\hyperlink{external_8h}{Vienna\+RNA/loops/external.\+h}}$>$}
126
127
128
129Evaluate the free energy of a base pair in the exterior loop.
130
131Evalue the free energy of a base pair connecting two nucleotides in the exterior loop and take hard constraints into account.
132
133Typically, this is simply dangling end contributions of the adjacent nucleotides, potentially a terminal A-\/U mismatch penalty, and maybe some generic soft constraint contribution for that decomposition.
134
135\begin{DoxyNote}{Note}
136For dangles == 1 $\vert$$\vert$ 3 this function also evaluates the three additional pairs (i + 1, j), (i, j -\/ 1), and (i + 1, j -\/ 1) and returns the minimum for all four possibilities in total.
137\end{DoxyNote}
138
139\begin{DoxyParams}{Parameters}
140{\em fc} & Fold compound to work on (defines the model and parameters) \\
141\hline
142{\em i} & 5\textquotesingle{} position of the base pair \\
143\hline
144{\em j} & 3\textquotesingle{} position of the base pair \\
145\hline
146\end{DoxyParams}
147\begin{DoxyReturn}{Returns}
148Free energy contribution that arises when this pair is formed in the exterior loop
149\end{DoxyReturn}
150\mbox{\Hypertarget{group__eval__loops__ext_ga357484958d3cd677f88f16c75c8a5730}\label{group__eval__loops__ext_ga357484958d3cd677f88f16c75c8a5730}}
151\index{Exterior Loops@{Exterior Loops}!vrna\_exp\_E\_ext\_stem@{vrna\_exp\_E\_ext\_stem}}
152\index{vrna\_exp\_E\_ext\_stem@{vrna\_exp\_E\_ext\_stem}!Exterior Loops@{Exterior Loops}}
153\doxysubsubsection{\texorpdfstring{vrna\_exp\_E\_ext\_stem()}{vrna\_exp\_E\_ext\_stem()}}
154{\footnotesize\ttfamily \mbox{\hyperlink{group__data__structures_ga31125aeace516926bf7f251f759b6126}{FLT\+\_\+\+OR\+\_\+\+DBL}} vrna\+\_\+exp\+\_\+\+E\+\_\+ext\+\_\+stem (\begin{DoxyParamCaption}\item[{unsigned int}]{type,  }\item[{int}]{n5d,  }\item[{int}]{n3d,  }\item[{\mbox{\hyperlink{group__energy__parameters_ga01d8b92fe734df8d79a6169482c7d8d8}{vrna\+\_\+exp\+\_\+param\+\_\+t}} $\ast$}]{p }\end{DoxyParamCaption})}
155
156
157
158{\ttfamily \#include $<$\mbox{\hyperlink{external_8h}{Vienna\+RNA/loops/external.\+h}}$>$}
159
160
161
162Evaluate a stem branching off the exterior loop (Boltzmann factor version)
163
164Given a base pair $(i,j)$ encoded by {\itshape type}, compute the energy contribution including dangling-\/end/terminal-\/mismatch contributions. Instead of returning the energy contribution per-\/se, this function returns the corresponding Boltzmann factor. If either of the adjacent nucleotides $(i - 1)$ and $(j+1)$ must not contribute stacking energy, the corresponding encoding must be $-1$.
165
166\begin{DoxySeeAlso}{See also}
167\mbox{\hyperlink{group__eval__loops__ext_gaa0c313c90da11aa741dcd62746d85337}{vrna\+\_\+\+E\+\_\+ext\+\_\+stem()}}
168\end{DoxySeeAlso}
169
170\begin{DoxyParams}{Parameters}
171{\em type} & The base pair encoding \\
172\hline
173{\em n5d} & The encoded nucleotide directly adjacent at the 5\textquotesingle{} side of the base pair (may be -\/1) \\
174\hline
175{\em n3d} & The encoded nucleotide directly adjacent at the 3\textquotesingle{} side of the base pair (may be -\/1) \\
176\hline
177{\em p} & The pre-\/computed energy parameters (Boltzmann factor version) \\
178\hline
179\end{DoxyParams}
180\begin{DoxyReturn}{Returns}
181The Boltzmann weighted energy contribution of the introduced exterior-\/loop stem
182\end{DoxyReturn}
183