blast_encoding.c
上传用户:yhdzpy8989
上传日期:2007-06-13
资源大小:13604k
文件大小:5k
源码类别:

生物技术

开发平台:

C/C++

  1. /*
  2.  * ===========================================================================
  3.  * PRODUCTION $Log: blast_encoding.c,v $
  4.  * PRODUCTION Revision 1000.1  2004/06/01 18:07:06  gouriano
  5.  * PRODUCTION PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.2
  6.  * PRODUCTION
  7.  * ===========================================================================
  8.  */
  9. /* $Id: blast_encoding.c,v 1000.1 2004/06/01 18:07:06 gouriano Exp $
  10.  * ===========================================================================
  11.  *
  12.  *                            PUBLIC DOMAIN NOTICE
  13.  *               National Center for Biotechnology Information
  14.  *
  15.  *  This software/database is a "United States Government Work" under the
  16.  *  terms of the United States Copyright Act.  It was written as part of
  17.  *  the author's official duties as a United States Government employee and
  18.  *  thus cannot be copyrighted.  This software/database is freely available
  19.  *  to the public for use. The National Library of Medicine and the U.S.
  20.  *  Government have not placed any restriction on its use or reproduction.
  21.  *
  22.  *  Although all reasonable efforts have been taken to ensure the accuracy
  23.  *  and reliability of the software and data, the NLM and the U.S.
  24.  *  Government do not and cannot warrant the performance or results that
  25.  *  may be obtained by using this software or data. The NLM and the U.S.
  26.  *  Government disclaim all warranties, express or implied, including
  27.  *  warranties of performance, merchantability or fitness for any particular
  28.  *  purpose.
  29.  *
  30.  *  Please cite the author in any work or product based on this material.
  31.  *
  32.  * ===========================================================================
  33.  *
  34.  * Author:  Christiam Camacho
  35.  *
  36.  */
  37. /** @file blast_encoding.c
  38.  * Definitions of static arrays defined in blast_encoding.h.
  39.  * @sa blast_encoding.h
  40.  */
  41. static char const rcsid[] =
  42.     "$Id: blast_encoding.c,v 1000.1 2004/06/01 18:07:06 gouriano Exp $";
  43. #include <algo/blast/core/blast_encoding.h>
  44. const Uint1 NCBI4NA_TO_BLASTNA[BLASTNA_SIZE] = {
  45.     15,     /* Gap, 0 */
  46.      0,     /* A,   1 */
  47.      1,     /* C,   2 */
  48.      6,     /* M,   3 */
  49.      2,     /* G,   4 */
  50.      4,     /* R,   5 */
  51.      9,     /* S,   6 */
  52.     13,     /* V,   7 */
  53.      3,     /* T,   8 */
  54.      8,     /* W,   9 */
  55.      5,     /* Y,  10 */
  56.     12,     /* H,  11 */
  57.      7,     /* K,  12 */
  58.     11,     /* D,  13 */
  59.     10,     /* B,  14 */
  60.     14      /* N,  15 */
  61. };
  62. const Uint1 BLASTNA_TO_NCBI4NA[BLASTNA_SIZE] = {
  63.      1,     /* A, 0 */
  64.      2,     /* C, 1 */
  65.      4,     /* G, 2 */
  66.      8,     /* T, 3 */
  67.      5,     /* R, 4 */
  68.     10,     /* Y, 5 */
  69.      3,     /* M, 6 */
  70.     12,     /* K, 7 */
  71.      9,     /* W, 8 */
  72.      6,     /* S, 9 */
  73.     14,     /* B, 10 */
  74.     13,     /* D, 11 */
  75.     11,     /* H, 12 */
  76.      7,     /* V, 13 */
  77.     15,     /* N, 14 */
  78.      0      /* Gap, 15 */
  79. };
  80. const Uint1 IUPACNA_TO_BLASTNA[128]={
  81. 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
  82. 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
  83. 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
  84. 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
  85. 15, 0,10, 1,11,15,15, 2,12,15,15, 7,15, 6,14,15,
  86. 15,15, 4, 9, 3,15,13, 8,15, 5,15,15,15,15,15,15,
  87. 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,
  88. 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15};
  89. const Uint1 IUPACNA_TO_NCBI4NA[128]={
  90.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  91.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  92.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  93.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  94.  0, 1,14, 2,13, 0, 0, 4,11, 0, 0,12, 0, 3,15, 0,
  95.  0, 0, 5, 6, 8, 0, 7, 9, 0,10, 0, 0, 0, 0, 0, 0,
  96.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  97.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
  98. const Uint1 AMINOACID_TO_NCBISTDAA[128] = {
  99.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  100.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  101.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,25, 0, 0, 0, 0, 0,
  102.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  103.  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0,10,11,12,13, 0,
  104. 14,15,16,17,18,24,19,20,21,22,23, 0, 0, 0, 0, 0,
  105.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  106.  0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
  107. /*
  108.  * ===========================================================================
  109.  * $Log: blast_encoding.c,v $
  110.  * Revision 1000.1  2004/06/01 18:07:06  gouriano
  111.  * PRODUCTION: UPGRADED [GCC34_MSVC7] Dev-tree R1.2
  112.  *
  113.  * Revision 1.2  2004/05/19 14:52:02  camacho
  114.  * 1. Added doxygen tags to enable doxygen processing of algo/blast/core
  115.  * 2. Standardized copyright, CVS $Id string, $Log and rcsid formatting and i
  116.  *    location
  117.  * 3. Added use of @todo doxygen keyword
  118.  *
  119.  * Revision 1.1  2004/04/07 03:10:56  camacho
  120.  * Initial revision
  121.  *
  122.  * ===========================================================================
  123.  */