Delila Program: curvafea

curvafea program

Documentation for the curvafea program is below, with links to related programs in the "see also" section.

{   version = 1.06; (* of curvafea.p 2003 Sep 2}

(* begin module describe.curvafea *)
(*
name
   curvafea: DNA curvature to lister features

synopsis
   curvafea(book: in, curvafeap: in, curvaout: in,
            curvafeamarks: out, curvaxyin: out,
            output: out)

files

   book:  A book from the delila system.

   curvafeap:  parameters to control the program.  The file must contain the
        following parameters, one per line:

      1. The version number of the program.  This allows the user to be
         warned if an old parameter file is used.

      2. zerobase: character and one integer OR one integer.  The coordinate
         to set the phase of the wave by.  This base will be red.

         If the first character is 'f' then the first base is the zerobase.

         If the first character is 'l' then the last base is the zerobase.

         When the first character is 'f' or 'l', it is followed by the
         zerobase as an offset.  So f 0 is the first base, f 1 is the second
         base, etc.

         If the first character is not 'f' or 'l' then an integer is given
         that is the phase offset.

         When a set of coordinates are used (6th parameter and beyond), 'f'
         and 'l' apply to each coordinate pair.  As a result, the phases of
         the colors WILL NOT MATCH.  If neither 'f' nor 'l' are used, then
         there is only one zero base for all pairs, so THE PHASES WILL
         MATCH.

      3. wavelength: one real.  The wave length in bases.  Usually there are
         10.6 base pairs per turn of DNA, but using 10.0 allows checking the
         program.  It can have other useful value, for example, one can set
         it to 3 to see translation frames.

      4. wavevertical (real):  how much to move the colored bar up or down
         (in character heights = bits).  This is preadjusted (by a constant
         (shiftdown) to fit just between the lister map numbering and the
         sequence.

      5. waveheight (real):  the height of the colored bar (in character
         heights = bits).  0.25 is the normal value that fits the line
         between the lister map numbering and the sequence.

      6. and all following lines: firstbase lastbase: two integers per line.
         The first and last bases to create marks for.  There may be an
         indefinite number of lines.  You can also use the program with
         different parameters and concatenate the curvafeamarks files together.
         WARNING:  Coordinate systems can jump in the Delila system, so this
         method will fail across jumps.  You can set the ranges by hand.
         This method can be used to mark only portions of the sequence.
         The program bookends can be used to find the end numbers of book
         pieces.

         IF PARAMETERs 6 ARE MISSING then the book will be used to obtain the
         coordinate system.  This method should always work, but it gives
         curvafea marks for the entire book.

   curvaout:  One or more '.map' files from the curva program.  These
      give the coordinate followed by the curvature on each line.  To
      make it possible to concatenate .map files together with
      spacers, blank lines and '*' at the starts of line are accepted
      (the latter as comments).

   curvafeamarks:  marks for the lister program

   curvaxyin:  curve in xyin format for the xyplo program

   output: messages to the user

description

   The program makes waves for lister by using the marks definition.  The
   waves are colored strips on the number line (or wherever the lister line
   starts).  The strip shows the phase of the DNA, allowing the orientation
   of binding sites to be compared.

   Since lister marks must be in order of the coordinate system, integrating
   the curvafea marks with other marks would require a lot of hand editing.  The
   mergemarks program allows marks to be smoothly joined together.

examples

1.34      version of curvafea that this parameter file is designed for.
f 0       zerobase: to set the phase of the wave by.  This base will be red.
10.6      wavelength: The wave length in bases.  Usually 10.6.
0         wavevertical: amount to shift colored wave vertically
0.25      waveheight: height of colored wave

Optionally, there can be:

-150  92  firstbase lastbase: range of sequence to mark
... (any number of repeats of the last line above may be made)

documentation

   The CURVATURE (ie curva) program is described at:

@article{Shpigelman.Bolshoy1993,
author = "E. S. Shpigelman
 and E. N. Trifonov
 and A. Bolshoy",
title = "{CURVATURE: software for the analysis of curved DNA}",
journal = "Comput Appl Biosci",
volume = "9",
pages = "435--440",
year = "1993"}

see also

   example parameter file: curvafeap

   The curves program is available from:
   http://ext.haifa.ac.il/~leokol/curvature/

   A script that takes a book as input and uses this program  to
   generate various files that can be used with Delila programs is:
   run.curva

   the program that uses the curvafeamarks: lister.p
   another program that could use curvafea marks:  makelogo.p
   a program to merge curvafeamarks with others:  mergemarks.p
   a program to obtain the range of a book:  bookends.p

   a program for plotting the curvaxyin:  xyplo.p

   Documentation on how the curvafea program produces the color wave:
   https://alum.mit.edu/www/toms/livecolors/

   This program was created by modifying:  live.p

author
   Thomas Dana Schneider

bugs

   NOTES from live.p:

   When one gives a pair of coordinates, curvafea creates marks running between
   the pair.  This will *fail* when there is a coordinate jump.  Also, it
   means that if the coordinate system is decreasing, the wave colors will be
   *reversed*.  When the book is used for coordinates, the wave is determined
   on internal (1 to n) coordinates and so the colors will never be
   reversed.  It is not clear yet whether the latter solution is a problem or
   not.  (Is it a bug or a feature?  :-)  Are there times when one would like
   the colors to reverse when the piece reverses?

   The answer to the above is YES: the colors must reverse for curva!
zzz check that this is true

   The code could be imbedded into lister.

technical notes

   The definition of the marks is in makelogo.p

   More information about the colors is in xyplo.p

*)
(* end module describe.curvafea *)
{This manual page was created by makman 1.45}


{created by htmlink 1.62}