<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE pise SYSTEM "PARSER/pise.dtd">

<pise>

  <head>
    <title>VIENNARNA</title>
    <version>1.4</version>
    <description>RNAsubopt - calculate suboptimal secondary structures of RNAs</description>
    <authors>Wuchty, Hofacker, Fontana</authors>
    <reference>S. Wuchty, W. Fontana, I. L. Hofacker and P. Schuster Complete Suboptimal Folding of RNA and the Stability of Secondary Structures, Biopolymers, 49, 145-165 (1999)</reference>
    <doclink>http://bioweb.pasteur.fr/docs/gensoft-na.html#VIENNARNA</doclink>
  </head>


<command>rnasubopt</command>

<parameters>

<parameter iscommand="1" ishidden="1" type="String">
<name>rnasubopt</name>
<attributes>

	<format>
		<language>perl</language>
		<code>"RNAsubopt"</code>
	</format>
	<vdef><value>rnasubopt</value></vdef>
	<group>0</group>

</attributes>
</parameter>

<parameter ismandatory="1" issimple="1" type="Sequence">
<name>seq</name>
<attributes>

	<prompt>RNA Sequences File</prompt>
	<format>
		<language>perl</language>
		<code>" &lt; $value" </code>
	</format>
	<group>1000</group>
	<seqfmt>
		<value>8</value>
	</seqfmt>

</attributes>
</parameter>

<parameter type="Paragraph">
<paragraph>
<name>control</name>
<prompt>Control options</prompt>
<group>2</group>
<parameters>

	<parameter type="Integer">
	<name>temperature</name>
	<attributes>

		<prompt>Rescale energy parameters to a temperature of temp C. (-T)</prompt>
		<format>
			<language>perl</language>
			<code>(defined $value &amp;&amp; $value ne $vdef)? " -T $value" : ""</code>
		</format>
		<vdef><value>37</value></vdef>
		<group>2</group>

	</attributes>
	</parameter>

	<parameter type="Switch">
	<name>tetraloops</name>
	<attributes>

		<prompt>Do not include special stabilizing energies for certain tetraloops (-4)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -4" : ""</code>
		</format>
		<vdef><value>0</value></vdef>
		<group>2</group>

	</attributes>
	</parameter>

	<parameter type="Integer">
	<name>mfe</name>
	<attributes>

		<prompt>Calculate suboptimal structures within this range kcal/mol of the mfe (-e)</prompt>
		<format>
			<language>perl</language>
			<code>(defined $value &amp;&amp; $value != $vdef)? " -e $value" : ""</code>
		</format>
		<vdef><value>1</value></vdef>
		<group>2</group>

	</attributes>
	</parameter>

	<parameter type="Switch">
	<name>lodos</name>
	<attributes>

		<prompt>Calculate the Lower Density of States (-lodos)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -lodos" : ""</code>
		</format>
		<vdef><value>0</value></vdef>
		<group>2</group>
		<comment>
			<value>Output lines consist of an energy followed by the number of structures with that energy, suitable for plotting the density of states. Does not print the structures themseleves.</value>
		</comment>

	</attributes>
	</parameter>

	<parameter type="Excl">
	<name>dangling</name>
	<attributes>

		<prompt>How to treat dangling end energies for bases adjacent to helices in free ends and multiloops (-d)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " $value" : ""</code>
		</format>
		<vdef><value>""</value></vdef>
		<group>2</group>
		<vlist>
			<value></value>
			<label>only unpaired bases can participate in at most one dangling end</label>
			<value>-d</value>
			<label>-d: ignores dangling ends altogether</label>
			<value>-d2</value>
			<label>-d2: the check is ignored, this is the default for partition function folding.</label>
		</vlist>
		<comment>
			<value>How to treat 'dangling end' energies for bases adjacent to helices in free ends and multiloops: Normally only unpaired bases can participate in at most one dangling end. With -d2 this check is ignored, this is the default for partition function folding (-p). -d ignores dangling ends altogether. Note that by default pf and mfe folding treat dangling ends differently, use -d2 (or -d) in addition to -p to ensure that both algorithms use the same energy model. The -d2 options is available for RNAfold, RNAeval, and RNAinverse only.</value>
		</comment>
		<ctrls>
			<ctrl>
			<message>no message</message>
				<language>perl</language>
				<code>(! (defined $rnafold || defined $rnaeval || defined $rnainverse) &amp;&amp;   ($dangling eq "-d2")  &amp;&amp; ($dangling = "") &amp;&amp; 0)</code>
			</ctrl>
		</ctrls>

	</attributes>
	</parameter>

	<parameter type="Switch">
	<name>logML</name>
	<attributes>

		<prompt>Recalculate energies of structures using a logarithmic energy function for multi-loops (-logML)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -logML" : ""</code>
		</format>
		<vdef><value>0</value></vdef>
		<group>2</group>
		<comment>
			<value>This option does not effect structure generation, only the energies that is printed out. Since logML lowers energies somewhat, some structures may be missing.</value>
		</comment>

	</attributes>
	</parameter>

	<parameter type="Integer">
	<name>ep</name>
	<attributes>

		<prompt>Only print structures with energy within this prange of the mfe (with -logML) (-ep)</prompt>
		<format>
			<language>perl</language>
			<code>(defined $value)? " -ep $value" : ""</code>
		</format>
		<group>2</group>
	<precond>
		<language>perl</language>
		<code>$logML</code>
	</precond>

	</attributes>
	</parameter>

	<parameter type="Switch">
	<name>sort</name>
	<attributes>

		<prompt>Sort the structures by energy (-sort)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -sort" : ""</code>
		</format>
		<vdef><value>0</value></vdef>
		<group>2</group>

	</attributes>
	</parameter>

</parameters>
</paragraph>

</parameter>

<parameter type="Paragraph">
<paragraph>
<name>input</name>
<prompt>Input parameters</prompt>
<group>2</group>
<parameters>

	<parameter type="Switch">
	<name>noLP</name>
	<attributes>

		<prompt>Avoid lonely pairs (helices of length 1) (-noLP)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -noLP" : ""</code>
		</format>
		<vdef><value>0</value></vdef>
		<group>2</group>
		<comment>
			<value>This works by disallowing pairs that can only occur isolated. Other pairs may still occasionally occur as helices of length 1.</value>
		</comment>

	</attributes>
	</parameter>

	<parameter type="Switch">
	<name>noGU</name>
	<attributes>

		<prompt>Do not allow GU pairs (-noGU)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -noGU" : ""</code>
		</format>
		<vdef><value>0</value></vdef>
		<group>2</group>

	</attributes>
	</parameter>

	<parameter type="Switch">
	<name>noCloseGU</name>
	<attributes>

		<prompt>Do not allow GU pairs at the end of helices (-noCloseGU)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -noCloseGU" : ""</code>
		</format>
		<vdef><value>0</value></vdef>
		<group>2</group>

	</attributes>
	</parameter>

	<parameter type="String">
	<name>nsp</name>
	<attributes>

		<prompt>Non standard pairs (comma seperated list) (-nsp)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -nsp $value" : "" </code>
		</format>
		<group>2</group>
		<comment>
			<value>Allow other pairs in addition to the usual AU,GC,and GU pairs. pairs is a comma seperated list of additionally allowed pairs. If a the first character is a '-' then AB will imply that AB and BA are allowed pairs. e.g. RNAfold -nsp -GA will allow GA and AG pairs. Nonstandard pairs are given 0 stacking energy.</value>
		</comment>

	</attributes>
	</parameter>

	<parameter type="InFile">
	<name>parameter</name>
	<attributes>

		<prompt>Parameter file (-P)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -P $value" : ""</code>
		</format>
		<group>2</group>
		<comment>
			<value>Read energy parameters from paramfile, instead of using the default parameter set. A sample parameterfile should accompany your distribution. See the RNAlib documentation for details on the file format.</value>
		</comment>

	</attributes>
	</parameter>

</parameters>
</paragraph>

</parameter>

<parameter ishidden="1" type="String">
<name>readseq</name>
<attributes>

	<format>
		<language>perl</language>
		<code>"/local/gensoft/lib/ViennaRNA/readseq  -f=19 -a $seq &gt; $seq.tmp &amp;&amp; (cp $seq $seq.orig &amp;&amp; mv $seq.tmp $seq) ; "</code>
	</format>
	<group>-10</group>
<precond>
	<language>perl</language>
	<code>defined $rnafold || defined $rnasubopt</code>
</precond>

</attributes>
</parameter>

<parameter type="Results">
<name>psfiles</name>
<attributes>

	<filenames>*.ps</filenames>

</attributes>
</parameter>


</parameters>
</pise>
