1\hypertarget{group__dp__matrices}{}\doxysection{The Dynamic Programming Matrices} 2\label{group__dp__matrices}\index{The Dynamic Programming Matrices@{The Dynamic Programming Matrices}} 3 4 5This module provides interfaces that deal with creation and destruction of dynamic programming matrices used within the RNAlib. 6 7 8 9 10\doxysubsection{Detailed Description} 11This module provides interfaces that deal with creation and destruction of dynamic programming matrices used within the RNAlib. 12 13Collaboration diagram for The Dynamic Programming Matrices\+: 14\nopagebreak 15\begin{figure}[H] 16\begin{center} 17\leavevmode 18\includegraphics[width=350pt]{group__dp__matrices} 19\end{center} 20\end{figure} 21\doxysubsection*{Data Structures} 22\begin{DoxyCompactItemize} 23\item 24struct \mbox{\hyperlink{group__dp__matrices_structvrna__mx__mfe__s}{vrna\+\_\+mx\+\_\+mfe\+\_\+s}} 25\begin{DoxyCompactList}\small\item\em Minimum Free Energy (MFE) Dynamic Programming (DP) matrices data structure required within the \mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}}. \mbox{\hyperlink{group__dp__matrices_structvrna__mx__mfe__s}{More...}}\end{DoxyCompactList}\item 26struct \mbox{\hyperlink{group__dp__matrices_structvrna__mx__pf__s}{vrna\+\_\+mx\+\_\+pf\+\_\+s}} 27\begin{DoxyCompactList}\small\item\em Partition function (PF) Dynamic Programming (DP) matrices data structure required within the \mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}}. \mbox{\hyperlink{group__dp__matrices_structvrna__mx__pf__s}{More...}}\end{DoxyCompactList}\end{DoxyCompactItemize} 28\doxysubsection*{Typedefs} 29\begin{DoxyCompactItemize} 30\item 31\mbox{\Hypertarget{group__dp__matrices_gae5aef35d016475e758f619b7bcb534f9}\label{group__dp__matrices_gae5aef35d016475e758f619b7bcb534f9}} 32typedef struct \mbox{\hyperlink{group__dp__matrices_structvrna__mx__mfe__s}{vrna\+\_\+mx\+\_\+mfe\+\_\+s}} \mbox{\hyperlink{group__dp__matrices_gae5aef35d016475e758f619b7bcb534f9}{vrna\+\_\+mx\+\_\+mfe\+\_\+t}} 33\begin{DoxyCompactList}\small\item\em Typename for the Minimum Free Energy (MFE) DP matrices data structure \mbox{\hyperlink{group__dp__matrices_structvrna__mx__mfe__s}{vrna\+\_\+mx\+\_\+mfe\+\_\+s}}. \end{DoxyCompactList}\item 34\mbox{\Hypertarget{group__dp__matrices_ga68729ab3fed26bdd1806fa814f172fc1}\label{group__dp__matrices_ga68729ab3fed26bdd1806fa814f172fc1}} 35typedef struct \mbox{\hyperlink{group__dp__matrices_structvrna__mx__pf__s}{vrna\+\_\+mx\+\_\+pf\+\_\+s}} \mbox{\hyperlink{group__dp__matrices_ga68729ab3fed26bdd1806fa814f172fc1}{vrna\+\_\+mx\+\_\+pf\+\_\+t}} 36\begin{DoxyCompactList}\small\item\em Typename for the Partition Function (PF) DP matrices data structure \mbox{\hyperlink{group__dp__matrices_structvrna__mx__pf__s}{vrna\+\_\+mx\+\_\+pf\+\_\+s}}. \end{DoxyCompactList}\end{DoxyCompactItemize} 37\doxysubsection*{Enumerations} 38\begin{DoxyCompactItemize} 39\item 40enum \mbox{\hyperlink{group__dp__matrices_ga6042ea1d58d01931e959791be6d89343}{vrna\+\_\+mx\+\_\+type\+\_\+e}} \{ \mbox{\hyperlink{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343aafa2568956dab79595521e20c49a5f75}{VRNA\+\_\+\+MX\+\_\+\+DEFAULT}} 41, \mbox{\hyperlink{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343a2ea5d5947f6ec02544934b0ff2785e99}{VRNA\+\_\+\+MX\+\_\+\+WINDOW}} 42, \mbox{\hyperlink{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343ae656f8391445ff71bed8a597a0a19417}{VRNA\+\_\+\+MX\+\_\+2\+DFOLD}} 43 \} 44\begin{DoxyCompactList}\small\item\em An enumerator that is used to specify the type of a polymorphic Dynamic Programming (DP) matrix data structure. \end{DoxyCompactList}\end{DoxyCompactItemize} 45\doxysubsection*{Functions} 46\begin{DoxyCompactItemize} 47\item 48int \mbox{\hyperlink{group__dp__matrices_ga08661f098008961dab0023bf300f0c33}{vrna\+\_\+mx\+\_\+add}} (\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$vc, \mbox{\hyperlink{group__dp__matrices_ga6042ea1d58d01931e959791be6d89343}{vrna\+\_\+mx\+\_\+type\+\_\+e}} type, unsigned int options) 49\begin{DoxyCompactList}\small\item\em Add Dynamic Programming (DP) matrices (allocate memory) \end{DoxyCompactList}\item 50void \mbox{\hyperlink{group__dp__matrices_ga6a9422feb5dfe5c64050cebf447672d0}{vrna\+\_\+mx\+\_\+mfe\+\_\+free}} (\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$vc) 51\begin{DoxyCompactList}\small\item\em Free memory occupied by the Minimum Free Energy (MFE) Dynamic Programming (DP) matrices. \end{DoxyCompactList}\item 52void \mbox{\hyperlink{group__dp__matrices_ga2283e69fd139fb8e58d7ade3b5773f9c}{vrna\+\_\+mx\+\_\+pf\+\_\+free}} (\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$vc) 53\begin{DoxyCompactList}\small\item\em Free memory occupied by the Partition Function (PF) Dynamic Programming (DP) matrices. \end{DoxyCompactList}\end{DoxyCompactItemize} 54 55 56\doxysubsection{Data Structure Documentation} 57\index{vrna\_mx\_mfe\_s@{vrna\_mx\_mfe\_s}}\label{structvrna__mx__mfe__s} 58\Hypertarget{group__dp__matrices_structvrna__mx__mfe__s} 59\doxysubsubsection{struct vrna\+\_\+mx\+\_\+mfe\+\_\+s} 60Minimum Free Energy (MFE) Dynamic Programming (DP) matrices data structure required within the \mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}}. \doxysubsubsection*{Data Fields} 61\begin{Indent}\textbf{ Common fields for MFE matrices}\par 62\begin{DoxyCompactItemize} 63\item 64\mbox{\Hypertarget{group__dp__matrices_a468680aa937b664d453075108d976ae2}\label{group__dp__matrices_a468680aa937b664d453075108d976ae2}} 65\mbox{\hyperlink{group__dp__matrices_ga6042ea1d58d01931e959791be6d89343}{vrna\+\_\+mx\+\_\+type\+\_\+e}} {\bfseries type} 66\item 67\mbox{\Hypertarget{group__dp__matrices_a1f92a8406fc1fb721dbf9193c34ad826}\label{group__dp__matrices_a1f92a8406fc1fb721dbf9193c34ad826}} 68unsigned int \mbox{\hyperlink{group__dp__matrices_a1f92a8406fc1fb721dbf9193c34ad826}{length}} 69\begin{DoxyCompactList}\small\item\em Length of the sequence, therefore an indicator of the size of the DP matrices. \end{DoxyCompactList}\end{DoxyCompactItemize} 70\end{Indent} 71\begin{Indent}\textbf{ Default DP matrices}\par 72{\em \begin{DoxyNote}{Note} 73These data fields are available if 74\begin{DoxyCode}{0} 75\DoxyCodeLine{\mbox{\hyperlink{group__dp__matrices_structvrna__mx__mfe__s}{vrna\_mx\_mfe\_t}}.type == \mbox{\hyperlink{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343aafa2568956dab79595521e20c49a5f75}{VRNA\_MX\_DEFAULT}} } 76 77\end{DoxyCode} 78 79\end{DoxyNote} 80}\end{Indent} 81\begin{Indent}\textbf{ Local Folding DP matrices using window approach}\par 82{\em \begin{DoxyNote}{Note} 83These data fields are available if 84\begin{DoxyCode}{0} 85\DoxyCodeLine{\mbox{\hyperlink{group__dp__matrices_structvrna__mx__mfe__s}{vrna\_mx\_mfe\_t}}.type == \mbox{\hyperlink{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343a2ea5d5947f6ec02544934b0ff2785e99}{VRNA\_MX\_WINDOW}} } 86 87\end{DoxyCode} 88 89\end{DoxyNote} 90}\end{Indent} 91\begin{Indent}\textbf{ Distance Class DP matrices}\par 92{\em \begin{DoxyNote}{Note} 93These data fields are available if 94\begin{DoxyCode}{0} 95\DoxyCodeLine{\mbox{\hyperlink{group__dp__matrices_structvrna__mx__mfe__s}{vrna\_mx\_mfe\_t}}.type == \mbox{\hyperlink{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343ae656f8391445ff71bed8a597a0a19417}{VRNA\_MX\_2DFOLD}} } 96 97\end{DoxyCode} 98 99\end{DoxyNote} 100}\end{Indent} 101\index{vrna\_mx\_pf\_s@{vrna\_mx\_pf\_s}}\label{structvrna__mx__pf__s} 102\Hypertarget{group__dp__matrices_structvrna__mx__pf__s} 103\doxysubsubsection{struct vrna\+\_\+mx\+\_\+pf\+\_\+s} 104Partition function (PF) Dynamic Programming (DP) matrices data structure required within the \mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}}. \doxysubsubsection*{Data Fields} 105\begin{Indent}\textbf{ Common fields for DP matrices}\par 106\begin{DoxyCompactItemize} 107\item 108\mbox{\Hypertarget{group__dp__matrices_a74ba745d6fc4ac5d437bc24450ea789c}\label{group__dp__matrices_a74ba745d6fc4ac5d437bc24450ea789c}} 109\mbox{\hyperlink{group__dp__matrices_ga6042ea1d58d01931e959791be6d89343}{vrna\+\_\+mx\+\_\+type\+\_\+e}} {\bfseries type} 110\item 111\mbox{\Hypertarget{group__dp__matrices_a798f72ece3f3f970bb0de2120600ad63}\label{group__dp__matrices_a798f72ece3f3f970bb0de2120600ad63}} 112unsigned int {\bfseries length} 113\item 114\mbox{\Hypertarget{group__dp__matrices_a133ac57938cb0969da254a594572baf8}\label{group__dp__matrices_a133ac57938cb0969da254a594572baf8}} 115\mbox{\hyperlink{group__data__structures_ga31125aeace516926bf7f251f759b6126}{FLT\+\_\+\+OR\+\_\+\+DBL}} $\ast$ {\bfseries scale} 116\item 117\mbox{\Hypertarget{group__dp__matrices_ae18e83833416f62943d5dd7be1cc038f}\label{group__dp__matrices_ae18e83833416f62943d5dd7be1cc038f}} 118\mbox{\hyperlink{group__data__structures_ga31125aeace516926bf7f251f759b6126}{FLT\+\_\+\+OR\+\_\+\+DBL}} $\ast$ {\bfseries exp\+MLbase} 119\end{DoxyCompactItemize} 120\end{Indent} 121\begin{Indent}\textbf{ Default PF matrices}\par 122{\em \begin{DoxyNote}{Note} 123These data fields are available if 124\begin{DoxyCode}{0} 125\DoxyCodeLine{\mbox{\hyperlink{group__dp__matrices_structvrna__mx__pf__s}{vrna\_mx\_pf\_t}}.type == \mbox{\hyperlink{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343aafa2568956dab79595521e20c49a5f75}{VRNA\_MX\_DEFAULT}} } 126 127\end{DoxyCode} 128 129\end{DoxyNote} 130}\end{Indent} 131\begin{Indent}\textbf{ Local Folding DP matrices using window approach}\par 132{\em \begin{DoxyNote}{Note} 133These data fields are available if 134\begin{DoxyCode}{0} 135\DoxyCodeLine{\mbox{\hyperlink{group__dp__matrices_structvrna__mx__mfe__s}{vrna\_mx\_mfe\_t}}.type == \mbox{\hyperlink{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343a2ea5d5947f6ec02544934b0ff2785e99}{VRNA\_MX\_WINDOW}} } 136 137\end{DoxyCode} 138 139\end{DoxyNote} 140}\end{Indent} 141\begin{Indent}\textbf{ Distance Class DP matrices}\par 142{\em \begin{DoxyNote}{Note} 143These data fields are available if 144\begin{DoxyCode}{0} 145\DoxyCodeLine{\mbox{\hyperlink{group__dp__matrices_structvrna__mx__pf__s}{vrna\_mx\_pf\_t}}.type == \mbox{\hyperlink{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343ae656f8391445ff71bed8a597a0a19417}{VRNA\_MX\_2DFOLD}} } 146 147\end{DoxyCode} 148 149\end{DoxyNote} 150}\end{Indent} 151 152 153\doxysubsection{Enumeration Type Documentation} 154\mbox{\Hypertarget{group__dp__matrices_ga6042ea1d58d01931e959791be6d89343}\label{group__dp__matrices_ga6042ea1d58d01931e959791be6d89343}} 155\index{The Dynamic Programming Matrices@{The Dynamic Programming Matrices}!vrna\_mx\_type\_e@{vrna\_mx\_type\_e}} 156\index{vrna\_mx\_type\_e@{vrna\_mx\_type\_e}!The Dynamic Programming Matrices@{The Dynamic Programming Matrices}} 157\doxysubsubsection{\texorpdfstring{vrna\_mx\_type\_e}{vrna\_mx\_type\_e}} 158{\footnotesize\ttfamily enum \mbox{\hyperlink{group__dp__matrices_ga6042ea1d58d01931e959791be6d89343}{vrna\+\_\+mx\+\_\+type\+\_\+e}}} 159 160 161 162{\ttfamily \#include $<$\mbox{\hyperlink{dp__matrices_8h}{Vienna\+RNA/dp\+\_\+matrices.\+h}}$>$} 163 164 165 166An enumerator that is used to specify the type of a polymorphic Dynamic Programming (DP) matrix data structure. 167 168\begin{DoxySeeAlso}{See also} 169\mbox{\hyperlink{group__dp__matrices_gae5aef35d016475e758f619b7bcb534f9}{vrna\+\_\+mx\+\_\+mfe\+\_\+t}}, \mbox{\hyperlink{group__dp__matrices_ga68729ab3fed26bdd1806fa814f172fc1}{vrna\+\_\+mx\+\_\+pf\+\_\+t}} 170\end{DoxySeeAlso} 171\begin{DoxyEnumFields}{Enumerator} 172\raisebox{\heightof{T}}[0pt][0pt]{\index{VRNA\_MX\_DEFAULT@{VRNA\_MX\_DEFAULT}!The Dynamic Programming Matrices@{The Dynamic Programming Matrices}}\index{The Dynamic Programming Matrices@{The Dynamic Programming Matrices}!VRNA\_MX\_DEFAULT@{VRNA\_MX\_DEFAULT}}}\mbox{\Hypertarget{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343aafa2568956dab79595521e20c49a5f75}\label{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343aafa2568956dab79595521e20c49a5f75}} 173VRNA\+\_\+\+MX\+\_\+\+DEFAULT&Default DP matrices. \\ 174\hline 175 176\raisebox{\heightof{T}}[0pt][0pt]{\index{VRNA\_MX\_WINDOW@{VRNA\_MX\_WINDOW}!The Dynamic Programming Matrices@{The Dynamic Programming Matrices}}\index{The Dynamic Programming Matrices@{The Dynamic Programming Matrices}!VRNA\_MX\_WINDOW@{VRNA\_MX\_WINDOW}}}\mbox{\Hypertarget{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343a2ea5d5947f6ec02544934b0ff2785e99}\label{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343a2ea5d5947f6ec02544934b0ff2785e99}} 177VRNA\+\_\+\+MX\+\_\+\+WINDOW&DP matrices suitable for local structure prediction using window approach. \begin{DoxySeeAlso}{See also} 178\mbox{\hyperlink{group__mfe__window_ga689df235a1915a1ad56e377383c044ce}{vrna\+\_\+mfe\+\_\+window()}}, \mbox{\hyperlink{group__mfe__window_gaa4f67ae94efd08d800c17f9b53423fd6}{vrna\+\_\+mfe\+\_\+window\+\_\+zscore()}}, \mbox{\hyperlink{group__part__func__window__deprecated_ga7cdf690583871f9c158a0f91d4785cb6}{pfl\+\_\+fold()}} 179\end{DoxySeeAlso} 180\\ 181\hline 182 183\raisebox{\heightof{T}}[0pt][0pt]{\index{VRNA\_MX\_2DFOLD@{VRNA\_MX\_2DFOLD}!The Dynamic Programming Matrices@{The Dynamic Programming Matrices}}\index{The Dynamic Programming Matrices@{The Dynamic Programming Matrices}!VRNA\_MX\_2DFOLD@{VRNA\_MX\_2DFOLD}}}\mbox{\Hypertarget{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343ae656f8391445ff71bed8a597a0a19417}\label{group__dp__matrices_gga6042ea1d58d01931e959791be6d89343ae656f8391445ff71bed8a597a0a19417}} 184VRNA\+\_\+\+MX\+\_\+2\+DFOLD&DP matrices suitable for distance class partitioned structure prediction. \begin{DoxySeeAlso}{See also} 185\mbox{\hyperlink{group__kl__neighborhood__mfe_ga243c288b463147352829df04de6a2f77}{vrna\+\_\+mfe\+\_\+\+Two\+D()}}, \mbox{\hyperlink{group__kl__neighborhood__pf_ga0bc3427689bd09da09b8b3094a27f836}{vrna\+\_\+pf\+\_\+\+Two\+D()}} 186\end{DoxySeeAlso} 187\\ 188\hline 189 190\end{DoxyEnumFields} 191 192 193\doxysubsection{Function Documentation} 194\mbox{\Hypertarget{group__dp__matrices_ga08661f098008961dab0023bf300f0c33}\label{group__dp__matrices_ga08661f098008961dab0023bf300f0c33}} 195\index{The Dynamic Programming Matrices@{The Dynamic Programming Matrices}!vrna\_mx\_add@{vrna\_mx\_add}} 196\index{vrna\_mx\_add@{vrna\_mx\_add}!The Dynamic Programming Matrices@{The Dynamic Programming Matrices}} 197\doxysubsubsection{\texorpdfstring{vrna\_mx\_add()}{vrna\_mx\_add()}} 198{\footnotesize\ttfamily int vrna\+\_\+mx\+\_\+add (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$}]{vc, }\item[{\mbox{\hyperlink{group__dp__matrices_ga6042ea1d58d01931e959791be6d89343}{vrna\+\_\+mx\+\_\+type\+\_\+e}}}]{type, }\item[{unsigned int}]{options }\end{DoxyParamCaption})} 199 200 201 202{\ttfamily \#include $<$\mbox{\hyperlink{dp__matrices_8h}{Vienna\+RNA/dp\+\_\+matrices.\+h}}$>$} 203 204 205 206Add Dynamic Programming (DP) matrices (allocate memory) 207 208This function adds DP matrices of a specific type to the provided \mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}}, such that successive DP recursion can be applied. The function caller has to specify which type of DP matrix is requested, see \mbox{\hyperlink{group__dp__matrices_ga6042ea1d58d01931e959791be6d89343}{vrna\+\_\+mx\+\_\+type\+\_\+e}}, and what kind of recursive algorithm will be applied later on, using the parameters type, and options, respectively. For the latter, Minimum free energy (MFE), and Partition function (PF) computations are distinguished. A third option that may be passed is \mbox{\hyperlink{group__fold__compound_ga8f681fa12b8d4b348bf58415fd1fc82f}{VRNA\+\_\+\+OPTION\+\_\+\+HYBRID}}, indicating that auxiliary DP arrays are required for RNA-\/\+RNA interaction prediction. 209 210\begin{DoxyNote}{Note} 211Usually, there is no need to call this function, since the constructors of \mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} are handling all the DP matrix memory allocation. 212\end{DoxyNote} 213\begin{DoxySeeAlso}{See also} 214vrna\+\_\+mx\+\_\+mfe\+\_\+add(), vrna\+\_\+mx\+\_\+pf\+\_\+add(), \mbox{\hyperlink{group__fold__compound_ga283cf113a37614a75c1388c4ec6d7b2f}{vrna\+\_\+fold\+\_\+compound()}}, \mbox{\hyperlink{group__fold__compound_gad6bacc816af274922b13d947f708aa0c}{vrna\+\_\+fold\+\_\+compound\+\_\+comparative()}}, \mbox{\hyperlink{group__fold__compound_ga576a077b418a9c3650e06f8e5d296fc2}{vrna\+\_\+fold\+\_\+compound\+\_\+free()}}, \mbox{\hyperlink{group__dp__matrices_ga2283e69fd139fb8e58d7ade3b5773f9c}{vrna\+\_\+mx\+\_\+pf\+\_\+free()}}, \mbox{\hyperlink{group__dp__matrices_ga6a9422feb5dfe5c64050cebf447672d0}{vrna\+\_\+mx\+\_\+mfe\+\_\+free()}}, \mbox{\hyperlink{group__dp__matrices_ga6042ea1d58d01931e959791be6d89343}{vrna\+\_\+mx\+\_\+type\+\_\+e}}, \mbox{\hyperlink{group__fold__compound_gae63be9127fe7dcc1f9bb14f5bb1064ee}{VRNA\+\_\+\+OPTION\+\_\+\+MFE}}, \mbox{\hyperlink{group__fold__compound_gabfbadcddda3e74ce7f49035ef8f058f7}{VRNA\+\_\+\+OPTION\+\_\+\+PF}}, \mbox{\hyperlink{group__fold__compound_ga8f681fa12b8d4b348bf58415fd1fc82f}{VRNA\+\_\+\+OPTION\+\_\+\+HYBRID}}, \mbox{\hyperlink{group__fold__compound_ga61469c423131552c8483229f8b6c7e0e}{VRNA\+\_\+\+OPTION\+\_\+\+EVAL\+\_\+\+ONLY}} 215\end{DoxySeeAlso} 216 217\begin{DoxyParams}{Parameters} 218{\em vc} & The \mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} that holds pointers to the DP matrices \\ 219\hline 220{\em type} & The type of DP matrices requested \\ 221\hline 222{\em options} & Option flags that specify the kind of DP matrices, such as MFE or PF arrays, and auxiliary requirements \\ 223\hline 224\end{DoxyParams} 225\begin{DoxyReturn}{Returns} 2261 if DP matrices were properly allocated and attached, 0 otherwise 227\end{DoxyReturn} 228\mbox{\Hypertarget{group__dp__matrices_ga6a9422feb5dfe5c64050cebf447672d0}\label{group__dp__matrices_ga6a9422feb5dfe5c64050cebf447672d0}} 229\index{The Dynamic Programming Matrices@{The Dynamic Programming Matrices}!vrna\_mx\_mfe\_free@{vrna\_mx\_mfe\_free}} 230\index{vrna\_mx\_mfe\_free@{vrna\_mx\_mfe\_free}!The Dynamic Programming Matrices@{The Dynamic Programming Matrices}} 231\doxysubsubsection{\texorpdfstring{vrna\_mx\_mfe\_free()}{vrna\_mx\_mfe\_free()}} 232{\footnotesize\ttfamily void vrna\+\_\+mx\+\_\+mfe\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$}]{vc }\end{DoxyParamCaption})} 233 234 235 236{\ttfamily \#include $<$\mbox{\hyperlink{dp__matrices_8h}{Vienna\+RNA/dp\+\_\+matrices.\+h}}$>$} 237 238 239 240Free memory occupied by the Minimum Free Energy (MFE) Dynamic Programming (DP) matrices. 241 242\begin{DoxySeeAlso}{See also} 243\mbox{\hyperlink{group__fold__compound_ga283cf113a37614a75c1388c4ec6d7b2f}{vrna\+\_\+fold\+\_\+compound()}}, \mbox{\hyperlink{group__fold__compound_gad6bacc816af274922b13d947f708aa0c}{vrna\+\_\+fold\+\_\+compound\+\_\+comparative()}}, \mbox{\hyperlink{group__fold__compound_ga576a077b418a9c3650e06f8e5d296fc2}{vrna\+\_\+fold\+\_\+compound\+\_\+free()}}, \mbox{\hyperlink{group__dp__matrices_ga2283e69fd139fb8e58d7ade3b5773f9c}{vrna\+\_\+mx\+\_\+pf\+\_\+free()}} 244\end{DoxySeeAlso} 245 246\begin{DoxyParams}{Parameters} 247{\em vc} & The \mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} storing the MFE DP matrices that are to be erased from memory \\ 248\hline 249\end{DoxyParams} 250\mbox{\Hypertarget{group__dp__matrices_ga2283e69fd139fb8e58d7ade3b5773f9c}\label{group__dp__matrices_ga2283e69fd139fb8e58d7ade3b5773f9c}} 251\index{The Dynamic Programming Matrices@{The Dynamic Programming Matrices}!vrna\_mx\_pf\_free@{vrna\_mx\_pf\_free}} 252\index{vrna\_mx\_pf\_free@{vrna\_mx\_pf\_free}!The Dynamic Programming Matrices@{The Dynamic Programming Matrices}} 253\doxysubsubsection{\texorpdfstring{vrna\_mx\_pf\_free()}{vrna\_mx\_pf\_free()}} 254{\footnotesize\ttfamily void vrna\+\_\+mx\+\_\+pf\+\_\+free (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} $\ast$}]{vc }\end{DoxyParamCaption})} 255 256 257 258{\ttfamily \#include $<$\mbox{\hyperlink{dp__matrices_8h}{Vienna\+RNA/dp\+\_\+matrices.\+h}}$>$} 259 260 261 262Free memory occupied by the Partition Function (PF) Dynamic Programming (DP) matrices. 263 264\begin{DoxySeeAlso}{See also} 265\mbox{\hyperlink{group__fold__compound_ga283cf113a37614a75c1388c4ec6d7b2f}{vrna\+\_\+fold\+\_\+compound()}}, \mbox{\hyperlink{group__fold__compound_gad6bacc816af274922b13d947f708aa0c}{vrna\+\_\+fold\+\_\+compound\+\_\+comparative()}}, \mbox{\hyperlink{group__fold__compound_ga576a077b418a9c3650e06f8e5d296fc2}{vrna\+\_\+fold\+\_\+compound\+\_\+free()}}, \mbox{\hyperlink{group__dp__matrices_ga6a9422feb5dfe5c64050cebf447672d0}{vrna\+\_\+mx\+\_\+mfe\+\_\+free()}} 266\end{DoxySeeAlso} 267 268\begin{DoxyParams}{Parameters} 269{\em vc} & The \mbox{\hyperlink{group__fold__compound_ga1b0cef17fd40466cef5968eaeeff6166}{vrna\+\_\+fold\+\_\+compound\+\_\+t}} storing the PF DP matrices that are to be erased from memory \\ 270\hline 271\end{DoxyParams} 272