~ubuntu-branches/ubuntu/hardy/kalign/hardy

« back to all changes in this revision

Viewing changes to kalign2_hirschberg_large.h

  • Committer: Bazaar Package Importer
  • Author(s): Charles Plessy
  • Date: 2007-02-21 09:07:33 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20070221090733-ttdj0bl7yes4to8f
Tags: 2.03-1
* New upstream release.
* Mended the watch file.
* Updated the manpage.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
        kalign2_hirschberg_large.h
 
3
        
 
4
        Released under GPL - see the 'COPYING' file   
 
5
        
 
6
        Copyright (C) 2006 Timo Lassmann <timolassmann@gmail.com>
 
7
        
 
8
        This program is free software; you can redistribute it and/or modify
 
9
        it under the terms of the GNU General Public License as published by
 
10
        the Free Software Foundation; either version 2 of the License, or
 
11
        any later version.
 
12
 
 
13
        This program is distributed in the hope that it will be useful,
 
14
        but WITHOUT ANY WARRANTY; without even the implied warranty of
 
15
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
16
        GNU General Public License for more details.
 
17
 
 
18
        You should have received a copy of the GNU General Public License
 
19
        along with this program; if not, write to the Free Software
 
20
        Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 
21
    
 
22
        Please send bug reports, comments etc. to:
 
23
        timolassmann@gmail.com
 
24
*/
 
25
 
 
26
struct large_states{
 
27
        float a;
 
28
        float ga;
 
29
        float gb;
 
30
        float x;
 
31
};
 
32
 
 
33
 
 
34
 
 
35
struct hirsch_large_mem{
 
36
        struct large_states* f;
 
37
        struct large_states* b;
 
38
        int starta;
 
39
        int startb;
 
40
        int enda;
 
41
        int endb;
 
42
        int size;
 
43
        int len_a;
 
44
        int len_b;
 
45
};
 
46
 
 
47
int* hirsch_large_pp_dyn(const float* prof1,const float* prof2,struct hirsch_large_mem* hm, int* hirsch_path);
 
48
struct large_states* foward_large_hirsch_pp_dyn(const float* prof1,const float* prof2,struct hirsch_large_mem* hm);
 
49
struct large_states* backward_large_hirsch_pp_dyn(const float* prof1,const float* prof2,struct hirsch_large_mem* hm);
 
50
int* hirsch_large_align_two_pp_vector(const float* prof1,const float* prof2,struct hirsch_large_mem* hm,int* hirsch_path,float input_states[],int old_cor[]);
 
51
 
 
52
int* hirsch_large_ps_dyn(const float* prof1,const int* seq2,struct hirsch_large_mem* hm, int* hirsch_path,int sip);
 
53
struct large_states* foward_large_hirsch_ps_dyn(const float* prof1,const int* seq2,struct hirsch_large_mem* hm,int sip);
 
54
struct large_states* backward_large_hirsch_ps_dyn(const float* prof1,const int* seq2,struct hirsch_large_mem* hm,int sip);
 
55
int* hirsch_large_align_two_ps_vector(const float* prof1,const int* seq2,struct hirsch_large_mem* hm,int* hirsch_path,float input_states[],int old_cor[],int sip);
 
56
 
 
57
 
 
58
int* hirsch_large_ss_dyn(float**subm, const int* seq1,const int* seq2,struct hirsch_large_mem* hm, int* hirsch_path);
 
59
struct large_states* foward_large_hirsch_ss_dyn(float**subm,const int* seq1,const int* seq2,struct hirsch_large_mem* hm);
 
60
struct large_states* backward_large_hirsch_ss_dyn(float**subm,const int* seq1,const int* seq2,struct hirsch_large_mem* hm);
 
61
int* hirsch_large_align_two_ss_vector(float**subm,const int* seq1,const int* seq2,struct hirsch_large_mem* hm,int* hirsch_path,float input_states[],int old_cor[]);
 
62
 
 
63
float* make_large_profile(float* prof, int* seq,int len,float** subm);
 
64
void set_large_gap_penalties(float* prof,int len,int nsip);
 
65
float* large_update(float* profa,float* profb,float* newp,int* path,int sipa,int sipb);
 
66
 
 
67
struct hirsch_large_mem* hirsch_large_mem_alloc(struct hirsch_large_mem* hm,int x);
 
68
struct hirsch_large_mem* hirsch_large_mem_realloc(struct hirsch_large_mem* hm,int x);
 
69
void hirsch_large_mem_free(struct hirsch_large_mem* hm);
 
70
 
 
71