/var/lib/mobyle/programs/clustalO-profile.xml is in mobyle-programs 5.1.2-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 | <?xml version='1.0' encoding='UTF-8'?>
<!-- XML Authors: Corinne Maufrais, Nicolas Joly and Bertrand Neron, -->
<!-- 'Biological Software and Databases' Group, Institut Pasteur, Paris. -->
<!-- Distributed under LGPLv2 License. Please refer to the COPYING.LIB document. -->
<program>
<head>
<name>clustalO-profile</name>
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="Entities/ClustalO_package.xml" />
<doc>
<title>Clustal-Omega: Profile alignment</title>
<description>
<text lang="en">Align 2 profiles (alignments)</text>
</description>
<comment>
<text lang="en">Use this interface to align two alignments (profiles) together.</text>
<text lang="en">The columns in each profile will be kept
fixed and the alignment of the two profiles will be written
out.</text>
</comment>
</doc>
<category>alignment:multiple</category>
<command>clustalo</command>
</head>
<parameters>
<paragraph>
<name>input</name>
<prompt lang="en">Data Input</prompt>
<comment>
<text lang="en">the columns in each profile will be kept
fixed and the alignment of the two profiles will be written
out.</text>
<text lang="en">Use this option to align two alignments (profiles) together.</text>
</comment>
<parameters>
<parameter ismandatory="1" issimple="1" ismaininput="1">
<name>profile1</name>
<prompt lang="en">Pre-aligned multiple sequence file (aligned columns will be kept fixed)</prompt>
<type>
<biotype>Protein</biotype>
<datatype>
<class>Alignment</class>
</datatype>
<dataFormat>FASTA</dataFormat>
<dataFormat>CLUSTAL</dataFormat>
<dataFormat>STOCKHOLM</dataFormat>
<dataFormat>MSF</dataFormat>
<dataFormat>PHYLPI</dataFormat>
<!-- to add when squizz will handle this formats
<dataFormat>SELEX</dataFormat>
<dataFormat>PO</dataFormat>
-->
</type>
<format>
<code proglang="perl">" --profile1=$value"</code>
<code proglang="python">" --profile1=" + str( value )</code>
</format>
</parameter>
<parameter ismandatory="1" issimple="1" ismaininput="1">
<name>profile2</name>
<prompt lang="en">Pre-aligned multiple sequence file (aligned columns will be kept fixed)</prompt>
<type>
<biotype>Protein</biotype>
<datatype>
<class>Alignment</class>
</datatype>
<dataFormat>FASTA</dataFormat>
<dataFormat>CLUSTAL</dataFormat>
<dataFormat>STOCKHOLM</dataFormat>
<dataFormat>MSF</dataFormat>
<!-- to add when squizz will handle this formats
<dataFormat>SELEX</dataFormat>
<dataFormat>PO</dataFormat>
-->
<card>1</card>
</type>
<format>
<code proglang="perl">" --profile2=$value"</code>
<code proglang="python">" --profile2=" + str( value )</code>
</format>
</parameter>
<parameter issimple="1">
<name>seqtype</name>
<prompt lang="en">type of sequences</prompt>
<type>
<datatype>
<class>Choice</class>
</datatype>
</type>
<vdef>
<value>auto</value>
</vdef>
<vlist>
<velem>
<label>Automatic</label>
<value>auto</value>
</velem>
<velem>
<label>Protein</label>
<value>Protein</value>
</velem>
<velem>
<label>RNA</label>
<value>RNA</value>
</velem>
<velem>
<label>DNA</label>
<value>DNA</value>
</velem>
</vlist>
<format>
<code proglang="perl">(defined $value and $value neq $vdef)? " --seqtype=$value" : ""</code>
<code proglang="python">("", " --seqtype="+str(value))[value is not None and value != vdef]</code>
</format>
<comment>
<text lang="en">Since version 1.1.0 the Clustal-Omega alignment engine can process
DNA/RNA. Clustal-Omega tries to guess the sequence type (protein,
DNA/RNA), but this can be over-ruled with this flag.
</text>
</comment>
</parameter>
</parameters>
</paragraph>
<paragraph>
<name>clustering</name>
<prompt lang="en">Clustering</prompt>
<comment>
<text lang="en">
In order to produce a multiple alignment Clustal-Omega requires a
guide tree which defines the order in which sequences/profiles are
aligned. A guide tree in turn is constructed, based on a distance
matrix. Conventionally, this distance matrix is comprised of all the
pair-wise distances of the sequences. The distance measure
Clustal-Omega uses for pair-wise distances of un-aligned sequences is
the k-tuple measure [4], which was also implemented in Clustal 1.83
and ClustalW2
[5,6]. If the sequences inputted via -i are aligned
Clustal-Omega uses the Kimura-corrected pairwise aligned identities
[7]. The computational effort (time/memory) to calculate and store a
full distance matrix grows quadratically with the number of sequences.
Clustal-Omega can improve this scalability to N*log(N) by employing a
fast clustering algorithm called mBed [2]; this option is
automatically invoked (default). If a full distance matrix evaluation
is desired, then the --full flag has to
be set. The mBed mode
calculates a reduced set of pair-wise distances. These distances are
used in a k-means algorithm, that clusters at most 100 sequences. For
each cluster a full distance matrix is calculated. No full distance
matrix (of all input sequences) is calculated in mBed mode. If there
are less than 100 sequences in the input, then in effect a full
distance matrix is calculated in mBed mode, however, no distance
matrix can be outputted (see below).
</text>
<text lang="en">Clustal-Omega uses Muscle's [8] fast UPGMA implementation to construct
its guide trees from the distance matrix. By default, the distance
matrix is used internally to construct the guide tree and is then
discarded. By specifying --distmat-out the internal distance matrix
can be written to file. This is only possible in --full mode. The
guide trees by default are used internally to guide the multiple
alignment and are then discarded. By specifying the --guidetree-out
option these
internal guide trees can be written out to
file. Conversely, the distance calculation and/or guide tree building
stage can be skipped, by reading in a pre-calculated distance matrix
and/or pre-calculated guide tree. These options are invoked by
specifying the --distmat-in and/or --guidetree-in flags,
respectively. However, distance matrix reading is disabled in the
current version. By default, distance matrix and guide tree files are
not over-written, if a file with the specified name already
exists. In
this case Clustal-Omega aborts during the command-line processing
stage. In mBed mode a full distance matrix cannot
be outputted, distance matrix output is only possible in --full mode.
mBed or --full distance mode do not affect the ability to write out
guide-trees.
</text>
<text lang="en">
Guide trees can be iterated to refine the alignment (see section
ITERATION). Clustal-Omega takes the alignment, that was produced
initially and constructs a new distance matrix from this alignment.
The distance measure used at this stage is the Kimura distance [7]. By
default, Clustal-Omega constructs a reduced distance matrix at this
stage using the mBed algorithm, which will then be used to create an
improved (iterated) new guide tree. To turn off mBed-like clustering
at this
stage the --full-iter flag has to be set. While Kimura
distances in general are much faster to calculate than k-tuple
distances, time and memory requirements still scale quadratically with
the number of sequences and --full-iter clustering should only be
considered for smaller cases ( << 10,000 sequences).
</text>
<text lang="en">[2] Blackshields G, Sievers F, Shi W, Wilm A, Higgins DG. Sequence
embedding for fast construction of guide trees for multiple
sequence alignment. Algorithms Mol Biol. 2010 May 14;5:21.
</text>
<text lang="en">[4] Wilbur and Lipman, 1983; PMID 6572363</text>
<text lang="en">[5] Thompson JD, Higgins DG, Gibson TJ. (1994). CLUSTAL W: improving
the sensitivity of progressive multiple sequence alignment through
sequence weighting, position-specific gap penalties and weight
matrix choice. Nucleic Acids Res., 22, 4673-4680.
</text>
<text lang="en">[6] Larkin MA, Blackshields G, Brown NP, Chenna R, McGettigan PA,
McWilliam H, Valentin F, Wallace IM, Wilm A, Lopez R, Thompson JD,
Gibson TJ, Higgins DG. (2007). Clustal W and Clustal X version
2.0. Bioinformatics, 23, 2947-2948.
</text>
<text lang="en">[7] Kimura M (1980). "A simple method for estimating evolutionary
rates of base substitutions through comparative studies of
nucleotide sequences". Journal of Molecular Evolution 16: 111–120.
</text>
</comment>
<parameters>
<parameter>
<name>guidetree_in</name>
<prompt lang="en">Guide tree input file (--guidetree-in)</prompt>
<type>
<datatype>
<class>Tree</class>
</datatype>
<dataFormat>NEWICK</dataFormat>
</type>
<format>
<code proglang="perl">(defined $value )? " --guidetree-in= $value" : ""</code>
<code proglang="python">( "" , " --guidetree-in="+str(value))[ value is not None ]</code>
</format>
</parameter>
<parameter>
<name>full</name>
<prompt lang="en">Use full distance matrix for guide-tree calculation (slow; mBed is default) (--full)</prompt>
<type>
<datatype>
<class>Boolean</class>
</datatype>
</type>
<vdef>
<value>0</value>
</vdef>
<format>
<code proglang="perl">(defined $full and $ full)? " --full ": ""</code>
<code proglang="python">( "" , " --full ")[ value is not None and value ]</code>
</format>
</parameter>
<parameter>
<name>full_iter</name>
<prompt lang="en">Use full distance matrix for guide-tree calculation during iteration (mBed is default) (--full-iter)</prompt>
<type>
<datatype>
<class>Boolean</class>
</datatype>
</type>
<vdef>
<value>0</value>
</vdef>
<format>
<code proglang="perl">(defined $full and $ full)? " --full-iter ": ""</code>
<code proglang="python">( "" , " --full-iter ")[ value is not None and value ]</code>
</format>
</parameter>
</parameters>
</paragraph>
<paragraph>
<name>output_format</name>
<prompt lang="en">Alignment Output</prompt>
<parameters>
<parameter>
<name>output_format</name>
<prompt lang="en">alignment output format</prompt>
<type>
<datatype>
<class>Choice</class>
</datatype>
</type>
<vdef>
<value>fasta</value>
</vdef>
<vlist>
<velem>
<label>fasta</label>
<value>fasta</value>
</velem>
<velem>
<label>clustal</label>
<value>clustal</value>
</velem>
<velem>
<label>msf</label>
<value>msf</value>
</velem>
<velem>
<label>phylip</label>
<value>phylip</value>
</velem>
<velem>
<label>stockholm</label>
<value>stockholm</value>
</velem>
<velem>
<label>vienna</label>
<value>vienna</value>
</velem>
<!-- to add when squizz will handle this formats
<velem>
<label>selex</label>
<value>selex</value>
</velem>
-->
</vlist>
<format>
<code proglang="perl">(defined $value and $value ne $vdef)? " --outfmt=$value" : ""</code>
<code proglang="python">( "" , " --outfmt=" + value )[ value is not None and value != vdef ]</code>
</format>
</parameter>
</parameters>
</paragraph>
<paragraph>
<name>iteration</name>
<prompt lang="en">Iteration</prompt>
<comment>
<text lang="en">By default, Clustal-Omega calculates (or reads in) a guide tree and
performs a multiple alignment in the order specified by this guide
tree. This alignment is then outputted. Clustal-Omega can 'iterate'
its guide tree. The hope is that the (Kimura) distances, that can be
derived from the initial alignment, will give rise to a better guide
tree, and by extension, to a better alignment.</text>
<text lang="en">A similar rationale applies to HMM-iteration. MSAs in general are very
'vulnerable' at their early stages. Sequences that are aligned at an
early stage remain fixed for the rest of the MSA. Another way of
putting this is: 'once a gap, always a gap'. This behaviour can be
mitigated by HMM iteration. An initial alignment is created and turned
into a HMM. This HMM can help in a new round of MSA to 'anticipate'
where residues should align. This is using the HMM as an External
Profile and carrying out iterative EPA. In practice, individual
sequences and profiles are aligned to the External HMM, derived after
the initial alignment. Pseudo-count information is then transferred to
the (internal) HMM, corresponding to the individual
sequence/profile. The now somewhat 'softened' sequences/profiles are
then in turn aligned in the order specified by the guide
tree. Pseudo-count transfer is reduced with the size of the
profile. Individual sequences attain the greatest
pseudo-count
transfer, larger profiles less so. Pseudo-count transfer to profiles
larger than, say, 10 is negligible. The effect of HMM iteration is
more pronounced in larger test sets (that is, with more sequences).</text>
<text lang="en">Both, HMM- and guide tree-iteration come at a cost of increasing the
run-time. One round of guide tree iteration adds on (roughly) the time
it took to construct the initial alignment. If, for example, the
initial alignment took 1min, then it will take (roughly) 2min to
iterate the guide tree once, 3min to iterate the guide tree twice, and
so on. HMM-iteration is more costly, as each round of iteration adds
three times the time required for the alignment stage. For example, if
the initial alignment took 1min, then each additional round of HMM
iteration will add on 3min; so 4 iterations will take 13min
(=1min+4*3min). The factor of 3 stems from the fact that at every
stage both intermediate profiles have to be aligned with the
background HMM, and finally the (softened) HMMs have to be aligned as
well. All times are quoted for single processors.</text>
<text lang="en">By default, guide tree iteration and HMM-iteration are coupled. This
means, at each iteration step both, guide tree and HMM, are
re-calculated. This is invoked by setting the --iter flag. For
example, if --iter=1, then first an initial alignment is produced
(without external HMM background information and using k-tuple
distances to calculate the guide tree). This initial alignment is then
used to re-calculate a new guide tree (using Kimura distances) and to
create a HMM. The new
guide tree and the HMM are then used to produce
a new MSA.</text>
<text lang="en">Iteration of guide tree and HMM can be de-coupled. This means that the
number of guide tree iterations and HMM iterations can be
different. This can be done by combining the --iter flag with the
--max-guidetree-iterations and/or the --max-hmm-iterations flag. The
number of guide tree iterations is the minimum of --iter and
--max-guidetree-iterations, while the number of HMM iterations is the
minimum of --iter and --max-hmm-iterations. If, for example, HMM
iteration should be
performed 5 times but guide tree iteration should
be performed only 3 times, then one should set --iter=5 and
--max-guidetree-iterations=3. All three flags can be specified at the
same time (however, this makes no sense). It is not sufficient just to
specify --max-guidetree-iterations and --max-hmm-iterations but not
--iter. If any iteration is desired --iter has to be set.</text>
</comment>
<parameters>
<parameter>
<name>iterations</name>
<prompt lang="en">Number of (combined guide-tree/HMM) iterations (--iter)</prompt>
<type>
<datatype>
<class>Integer</class>
</datatype>
</type>
<format>
<code proglang="perl">(defined $value)? " --iter=$value ": ""</code>
<code proglang="python">( "" , " --iter="+str(value) )[ value is not None ]</code>
</format>
</parameter>
<parameter>
<name>max_guidetree_iterations</name>
<prompt lang="en">Maximum number guidetree iterations (--max-guidetree-iterations)</prompt>
<type>
<datatype>
<class>Integer</class>
</datatype>
</type>
<format>
<code proglang="perl">(defined $value)? " --max-guidetree-iterations=$value ": ""</code>
<code proglang="python">( "" , " --max-guidetree-iterations="+str(value) )[ value is not None ]</code>
</format>
</parameter>
<parameter>
<name>max_hmm_iterations</name>
<prompt lang="en">Maximum number of HMM iterations (--max-hmm-iterations)</prompt>
<type>
<datatype>
<class>Integer</class>
</datatype>
</type>
<format>
<code proglang="perl">(defined $value)? " --max-hmm-iterations=$value ": ""</code>
<code proglang="python">( "" , " --max-hmm-iterations="+str(value) )[ value is not None ]</code>
</format>
</parameter>
</parameters>
</paragraph>
<paragraph>
<name>miscellaneous</name>
<prompt lang="en">Miscellaneous</prompt>
<parameters>
<parameter>
<name>auto</name>
<prompt lang="en">Set options automatically (might overwrite some of your options) (--auto)</prompt>
<type>
<datatype>
<class>Boolean</class>
</datatype>
</type>
<vdef>
<value>0</value>
</vdef>
<format>
<code proglang="perl">(defined $value and $value)? " --auto ": ""</code>
<code proglang="python">( "" , " --auto ")[value is not None and value]</code>
</format>
<comment>
<text lang="en">Users may feel unsure which options are appropriate in certain
situations even though using ClustalO without any special options
should give you the desired results. The --auto flag tries to
alleviate this problem and selects accuracy/speed flags according to
the number of sequences. For all cases will use mBed and thereby
possibly overwrite the --full option. For more than 1,000 sequences
the iteration is turned off as the effect of iteration is more
noticeable for 'larger'
problems. Otherwise iterations are set to 1 if
not already set to a higher value by the user. Expert users may want
to avoid this flag and exercise more fine tuned control by selecting
the appropriate options manually.</text>
</comment>
</parameter>
<parameter ishidden="1">
<name>verbosity</name>
<argpos>100</argpos>
<type>
<datatype>
<class>String</class>
</datatype>
</type>
<format>
<code proglang="perl">" -v --force --log=clustalO_log"</code>
<code proglang="python">" -v --force --log=clustalO_log"</code>
</format>
</parameter>
</parameters>
</paragraph>
<parameter isstdout="1">
<name>alignment_output</name>
<prompt lang="en">Multiple Sequence Alignment</prompt>
<type>
<biotype>Protein</biotype>
<datatype>
<class>Alignment</class>
</datatype>
<dataFormat>
<test param="output_format" eq="fa">FASTA</test>
<test param="output_format" eq="clustal">CLUSTAL</test>
<test param="output_format" eq="msf">MSF</test>
<test param="output_format" eq="phylip">PHILIPI</test>
<test param="output_format" eq="stockholm">STOCKHOLM</test>
<test param="output_format" eq="vienna">FASTA</test>
<!-- to add when squizz will handle this formats
<test param="output_format" eq="selex">SELEX</test>
-->
</dataFormat>
</type>
<filenames>
<code proglang="perl">"clustalO-profile.out"</code>
<code proglang="python">"clustalO-profile.out"</code>
</filenames>
</parameter>
<parameter isout="1">
<name>logfile</name>
<prompt lang="en">Clustal omega log file</prompt>
<type>
<datatype>
<class>ClustalOReport</class>
<superclass>Report</superclass>
</datatype>
</type>
<filenames>
<code proglang="perl">"clustalO_log"</code>
<code proglang="python">"clustalO_log"</code>
</filenames>
</parameter>
</parameters>
</program>
|