<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE pise SYSTEM "PARSER/pise.dtd" [
<!ENTITY emboss_init SYSTEM "XMLDIR/emboss.xml">
]>

<pise>

<head>
<title>DAN</title>
<description>Calculates DNA RNA/DNA melting temperature (EMBOSS)</description>
<category>nucleic:composition</category>
<doclink>http://bioweb.pasteur.fr/docs/EMBOSS/dan.html</doclink>
</head>

<command>dan</command>

<parameters>

&emboss_init;


<parameter type="Paragraph">
<paragraph>
<name>input</name>
	<prompt>Input section</prompt>

<parameters>
	<parameter type="Sequence" ismandatory="1" issimple="1" ishidden="0">
	<name>sequence</name>
	<attributes>
		<prompt>sequence -- DNA [sequences] (-sequence)</prompt>
		<format>
			<language>perl</language>
			<code>" -sequence=$value -sformat=fasta"</code>
		</format>
		<group>1</group>
		<seqtype><value>dna</value></seqtype>
		<seqfmt>
			<value>8</value>
		</seqfmt>
		<pipe>
			<pipetype>seqsfile</pipetype>
				<language>perl</language>
				<code>1</code>
		</pipe>
	</attributes>
	</parameter>

	</parameters>
</paragraph>
</parameter>


<parameter type="Paragraph">
<paragraph>
<name>required</name>
	<prompt>Required section</prompt>

<parameters>
	<parameter type="Integer" ismandatory="1" issimple="1" ishidden="0">
	<name>windowsize</name>
	<attributes>
		<prompt>Enter window size (-windowsize)</prompt>
		<vdef>
			<value>20</value>
		</vdef>
		<format>
			<language>perl</language>
			<code>" -windowsize=$value"</code>
		</format>
		<group>2</group>
		<comment>
			<value>The values of melting point and other thermodynamic properties of the sequence are determined by taking a short length of sequence known as a window and determining the properties of the sequence in that window. The window is incrementally moved along the sequence with the properties being calculated at each new position.</value>
		</comment>
		<scalemin><value>1</value></scalemin>
		<scalemax><value>100</value></scalemax>
	</attributes>
	</parameter>

	<parameter type="Integer" ismandatory="1" issimple="1" ishidden="0">
	<name>shiftincrement</name>
	<attributes>
		<prompt>Enter Shift Increment (-shiftincrement)</prompt>
		<vdef>
			<value>1</value>
		</vdef>
		<format>
			<language>perl</language>
			<code>" -shiftincrement=$value"</code>
		</format>
		<group>3</group>
		<comment>
			<value>This is the amount by which the window is moved at each increment in order to find the melting point and other properties along the sequence.</value>
		</comment>
		<scalemin><value>1</value></scalemin>
		<scalemax>
			<language>acd</language>
			<code>$windowSize</code>
		</scalemax>
	</attributes>
	</parameter>

	<parameter type="Float" ismandatory="1" issimple="1" ishidden="0">
	<name>dnaconc</name>
	<attributes>
		<prompt>Enter DNA concentration (nM) (-dnaconc)</prompt>
		<vdef>
			<value>50.</value>
		</vdef>
		<format>
			<language>perl</language>
			<code>" -dnaconc=$value"</code>
		</format>
		<group>4</group>
		<scalemin><value>1.</value></scalemin>
		<scalemax><value>100000.</value></scalemax>
	</attributes>
	</parameter>

	<parameter type="Float" ismandatory="1" issimple="1" ishidden="0">
	<name>saltconc</name>
	<attributes>
		<prompt>Enter salt concentration (mM) (-saltconc)</prompt>
		<vdef>
			<value>50.</value>
		</vdef>
		<format>
			<language>perl</language>
			<code>" -saltconc=$value"</code>
		</format>
		<group>5</group>
		<scalemin><value>1.</value></scalemin>
		<scalemax><value>1000.</value></scalemax>
	</attributes>
	</parameter>

	</parameters>
</paragraph>
</parameter>


<parameter type="Paragraph">
<paragraph>
<name>advanced</name>
	<prompt>Advanced section</prompt>

<parameters>
	<parameter type="Switch" ismandatory="0" issimple="0" ishidden="0">
	<name>rna</name>
	<attributes>
		<prompt>Use RNA data values (-rna)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -rna" : ""</code>
		</format>
		<group>6</group>
		<comment>
			<value>This specifies that the sequence is an RNA sequnce and not a DNA sequence.</value>
		</comment>
	</attributes>
	</parameter>


	<parameter type="Paragraph">
	<paragraph>
	<name>productsection</name>
		<prompt>Product options</prompt>

	<parameters>
		<parameter type="Switch" ismandatory="0" issimple="0" ishidden="0">
		<name>product</name>
		<attributes>
			<prompt>Prompt for product values (-product)</prompt>
			<format>
				<language>perl</language>
				<code>($value)? " -product" : ""</code>
			</format>
			<group>7</group>
			<comment>
				<value>This prompts for percent formamide, percent of mismatches allowed and product length.</value>
			</comment>
		</attributes>
		</parameter>

		<parameter type="Float" ismandatory="0" issimple="0" ishidden="0">
		<name>formamide</name>
		<attributes>
			<prompt>Enter percentage of formamide (-formamide)</prompt>
				<precond>
					<language>perl</language>
					<code>$product</code>
					<language>acd</language>
					<code>$product</code>
				</precond>
			<vdef>
				<value>0.</value>
			</vdef>
			<format>
				<language>perl</language>
				<code>(defined $value &amp;&amp; $value != $vdef)? " -formamide=$value" : ""</code>
			</format>
			<group>8</group>
			<comment>
				<value>This specifies the percent formamide to be used in calculations (it is ignored unless -product is used).</value>
			</comment>
			<scalemin><value>0.</value></scalemin>
			<scalemax><value>100.</value></scalemax>
		</attributes>
		</parameter>

		<parameter type="Float" ismandatory="0" issimple="0" ishidden="0">
		<name>mismatch</name>
		<attributes>
			<prompt>Enter percent mismatch (-mismatch)</prompt>
				<precond>
					<language>perl</language>
					<code>$product</code>
					<language>acd</language>
					<code>$product</code>
				</precond>
			<vdef>
				<value>0.</value>
			</vdef>
			<format>
				<language>perl</language>
				<code>(defined $value &amp;&amp; $value != $vdef)? " -mismatch=$value" : ""</code>
			</format>
			<group>9</group>
			<comment>
				<value>This specifies the percent mismatch to be used in calculations (it is ignored unless -product is used).</value>
			</comment>
			<scalemin><value>0.</value></scalemin>
			<scalemax><value>100.</value></scalemax>
		</attributes>
		</parameter>

		<parameter type="Integer" ismandatory="0" issimple="0" ishidden="0">
		<name>prodlen</name>
		<attributes>
			<prompt>Enter the product length (-prodlen)</prompt>
				<precond>
					<language>perl</language>
					<code>$product</code>
					<language>acd</language>
					<code>$product</code>
				</precond>
			<vdef>
				<language>acd</language>
				<code>$windowSize</code>
			</vdef>
			<format>
				<language>perl</language>
				<code>(defined $value &amp;&amp; $value != $vdef)? " -prodlen=$value" : ""</code>
			</format>
			<group>10</group>
			<comment>
				<value>This specifies the product length to be used in calculations (it is ignored unless -product is used).</value>
			</comment>
			<scalemin>
				<language>acd</language>
				<code>$windowSize</code>
			</scalemin>
		</attributes>
		</parameter>

		</parameters>
	</paragraph>
	</parameter>


	<parameter type="Paragraph">
	<paragraph>
	<name>thermosection</name>
		<prompt>Thermodynamic options</prompt>

	<parameters>
		<parameter type="Switch" ismandatory="0" issimple="0" ishidden="0">
		<name>thermo</name>
		<attributes>
			<prompt>Thermodynamic calculations (-thermo)</prompt>
			<format>
				<language>perl</language>
				<code>($value)? " -thermo" : ""</code>
			</format>
			<group>11</group>
			<comment>
				<value>Output the DeltaG, DeltaH and DeltaS values of the sequence windows to the output data file.</value>
			</comment>
		</attributes>
		</parameter>

		<parameter type="Float" ismandatory="0" issimple="0" ishidden="0">
		<name>temperature</name>
		<attributes>
			<prompt>Enter temperature (-temperature)</prompt>
			<vdef>
				<value>25.</value>
			</vdef>
			<format>
				<language>perl</language>
				<code>(defined $value &amp;&amp; $value != $vdef)? " -temperature=$value" : ""</code>
			</format>
			<group>12</group>
			<comment>
				<value>If -thermo has been specified then this specifies the temperature at which to calculate the DeltaG, DeltaH and DeltaS values.</value>
			</comment>
			<scalemin><value>0.</value></scalemin>
			<scalemax><value>100.</value></scalemax>
		</attributes>
		</parameter>

		</parameters>
	</paragraph>
	</parameter>

	</parameters>
</paragraph>
</parameter>


<parameter type="Paragraph">
<paragraph>
<name>output</name>
	<prompt>Output section</prompt>

<parameters>
	<parameter type="Switch" ismandatory="0" issimple="0" ishidden="0">
	<name>plot</name>
	<attributes>
		<prompt>Produce a plot (-plot)</prompt>
		<format>
			<language>perl</language>
			<code>($value)? " -plot" : ""</code>
		</format>
		<group>13</group>
		<comment>
			<value>If this is not specified then the file of output data is produced, else a plot of the melting point along the sequence is produced.</value>
		</comment>
	</attributes>
	</parameter>

	<parameter type="Float" ismandatory="0" issimple="0" ishidden="0">
	<name>mintemp</name>
	<attributes>
		<prompt>Enter minimum temperature (-mintemp)</prompt>
			<precond>
				<language>perl</language>
				<code>$plot</code>
				<language>acd</language>
				<code>$plot</code>
			</precond>
		<vdef>
			<value>55.</value>
		</vdef>
		<format>
			<language>perl</language>
			<code>(defined $value &amp;&amp; $value != $vdef)? " -mintemp=$value" : ""</code>
		</format>
		<group>14</group>
		<comment>
			<value>Enter a minimum value for the temperature scale (y-axis) of the plot.</value>
		</comment>
		<scalemin><value>0.</value></scalemin>
		<scalemax><value>150.</value></scalemax>
	</attributes>
	</parameter>

	<parameter type="Excl" ismandatory="0" issimple="0" ishidden="0">
	<name>graph</name>
	<attributes>
		<prompt>graph (-graph)</prompt>
			<vlist>
				<value>x11</value>
				<label>x11</label>
				<value>hp7470</value>
				<label>hp7470</label>
				<value>postscript</value>
				<label>postscript</label>
				<value>cps</value>
				<label>cps</label>
				<value>hp7580</value>
				<label>hp7580</label>
				<value>null</value>
				<label>null</label>
				<value>data</value>
				<label>data</label>
				<value>colourps</value>
				<label>colourps</label>
				<value>text</value>
				<label>text</label>
				<value>none</value>
				<label>none</label>
				<value>tek4107t</value>
				<label>tek4107t</label>
				<value>tekt</value>
				<label>tekt</label>
				<value>xwindows</value>
				<label>xwindows</label>
				<value>hpgl</value>
				<label>hpgl</label>
				<value>xterm</value>
				<label>xterm</label>
				<value>meta</value>
				<label>meta</label>
				<value>ps</value>
				<label>ps</label>
				<value>tek</value>
				<label>tek</label>
				<value>png</value>
				<label>png</label>
				<value>tektronics</value>
				<label>tektronics</label>
			</vlist>
			<precond>
				<language>perl</language>
				<code>$plot</code>
				<language>acd</language>
				<code>$plot</code>
			</precond>
		<vdef><value>postscript</value></vdef>
		<format>
			<language>perl</language>
			<code>($value)? " -graph=$value" : ""</code>
		</format>
		<group>15</group>
	</attributes>
	</parameter>

	<parameter type="OutFile" ismandatory="0" issimple="0" ishidden="0">
	<name>outfile</name>
	<attributes>
		<prompt>outfile (-outfile)</prompt>
			<precond>
				<language>acd</language>
				<code>@(!$(plot))</code>
			</precond>
		<format>
			<language>perl</language>
			<code>($value)? " -outfile=$value" : ""</code>
		</format>
		<group>16</group>
		<comment>
			<value>If a plot is not being produced then data on the melting point etc. in each window along the sequence is output to the file.</value>
		</comment>
	</attributes>
	</parameter>

	</parameters>
</paragraph>
</parameter>

<parameter type="String" ishidden="1">
<name>auto</name>
<attributes>
	<format>
		<language>perl</language>
		<code>" -auto -stdout"</code>
	</format>
	<group>18</group>
</attributes>
</parameter>
<parameter type="Results">
<name>psresults_graph</name>
<attributes>
	<precond>
		<language>perl</language>
		<code>$graph eq "postscript" || $graph eq "ps" || $graph eq "colourps" || $graph eq "cps"</code>
	</precond>
	<filenames>*.ps</filenames>
</attributes>
</parameter>
<parameter type="Results">
<name>metaresults_graph</name>
<attributes>
	<precond>
		<language>perl</language>
		<code>$graph eq "meta"</code>
	</precond>
	<filenames>*.meta</filenames>
</attributes>
</parameter>
<parameter type="Results">
<name>dataresults_graph</name>
<attributes>
	<precond>
		<language>perl</language>
		<code>$graph eq "data"</code>
	</precond>
	<filenames>*.dat</filenames>
</attributes>
</parameter>
<parameter type="Results">
<name>pngresults_graph</name>
<attributes>
	<precond>
		<language>perl</language>
		<code>$graph eq "png"</code>
	</precond>
	<filenames>*.png *.2 *.3</filenames>
</attributes>
</parameter>
<parameter type="Results">
<name>hpglresults_graph</name>
<attributes>
	<precond>
		<language>perl</language>
		<code>$graph =~ /hp/</code>
	</precond>
	<filenames>*.hpgl</filenames>
</attributes>
</parameter>

</parameters>
</pise>
