new mafft v 6.857 with extensions
[jabaws.git] / binaries / src / mafft / core / functions.h
1 extern int intlen( int *num );
2 extern char seqcheck( char **seq );
3 extern void scmx_calc( int icyc, char **aseq, double *effarr, float **scmx );
4 extern void exitall( char arr[] );
5 extern void display( char **seq, int nseq );
6 extern void intergroup_score( char **seq1, char **seq2, double *eff1, double *eff2, int clus1, int clus2, int len, double *value );
7 extern void intergroup_score_gapnomi( char **seq1, char **seq2, double *eff1, double *eff2, int clus1, int clus2, int len, double *value );
8 extern void intergroup_score_new( char **seq1, char **seq2, double *eff1, double *eff2, int clus1, int clus2, int len, double *value );
9 extern double score_calc5( char **seq, int s, double **eff, int ex );
10 extern double score_calc4( char **seq, int s, double **eff, int ex );
11 extern void upg2( int nseq, double **eff, int ***topol, double **len );
12 //extern void veryfastsupg_float_realloc_nobk_halfmtx( int njob, float **mtx, int ***topol, float **len );
13 //extern void veryfastsupg_float_realloc_nobk( int njob, float **mtx, int ***topol, float **len );
14 extern void veryfastsupg_int_realloc_nobk( int njob, int **mtx, int ***topol, double **len );
15 extern void veryfastsupg( int nseq, double **oeff, int ***topol, double **len );
16 extern void veryfastsupg_double( int nseq, double **oeff, int ***topol, double **len );
17 extern void veryfastsupg_double_loadtree( int nseq, double **oeff, int ***topol, double **len );
18 extern void veryfastsupg_double_loadtop( int nseq, double **oeff, int ***topol, double **len );
19 extern void veryfastsupg_int( int nseq, int **oeff, int ***topol, double **len );
20 extern void fastsupg( int nseq, double **oeff, int ***topol, double **len );
21 extern void supg( int nseq, double **oeff, int ***topol, double **len );
22 extern void spg( int nseq, double **oeff, int ***topol, double **len );
23 extern double ipower( double x, int n );
24 extern void countnode( int nseq, int ***topol, double **node );
25 extern void countnode_int( int nseq, int ***topol, int **node );
26 extern void counteff_simple( int nseq, int ***topol, double **len, double *node );
27 extern void counteff_simple_float( int nseq, int ***topol, float **len, double *node );
28 extern void counteff( int nseq, int ***topol, double **len, double **node );
29 extern float score_calc1( char *seq1, char *seq2 );
30 extern float score_calcp( char *seq1, char *seq2, int len );
31 extern float substitution_nid( char *seq1, char *seq2 );
32 extern float substitution_score( char *seq1, char *seq2 );
33 extern float substitution_hosei( char *seq1, char *seq2 );
34 extern float substitution( char *seq1, char *seq2 );
35 extern void treeconstruction( char **seq, int nseq, int ***topol, double **len, double **eff );
36 extern float bscore_calc( char **seq, int s, double **eff );
37 extern void AllocateTmpSeqs( char ***mseq2pt, char **mseq1pt, int locnlenmax );
38 extern void FreeTmpSeqs( char **mseq2, char *mseq1 );
39 extern void gappick_samestring( char *aseq );
40 extern void gappick0( char *aseq, char *seq );
41 extern void gappick( int nseq, int s, char **aseq, char **mseq2, 
42                                          double **eff, double *effarr );
43 extern void commongappick_record( int nseq, char **seq, int *map );
44 extern void commongappick( int nseq, char **seq );
45 extern double score_calc0( char **seq, int s, double **eff, int ex );
46 extern void strins( char *str1, char *str2 );
47 extern int isaligned( int nseq, char **seq );
48 extern double score_calc_for_score( int nseq, char **seq );
49 extern void floatncpy( float *vec1, float *vec2, int len );
50 extern float score_calc_a( char **seq, int s, double **eff );
51 extern float score_calc_s( char **seq, int s, double **eff );
52 extern double score_calc_for_score_s( int s, char **seq );
53 extern double SSPscore( int s, char **seq );
54 extern double DSPscore( int s, char **seq );
55 extern int searchAnchors( int nseq, char **seq, Segment *seg );
56 extern char *progName( char *str );
57 extern void dontcalcimportance( int nseq, double *eff, char **seq, LocalHom **localhom );
58 extern void calcimportance( int nseq, double *eff, char **seq, LocalHom **localhom );
59 extern void weightimportance2( int nseq, double *eff, LocalHom **localhom );
60 extern void weightimportance4( int clus1, int clus2, double *eff1, double *eff2, LocalHom ***localhom );
61 extern void extendlocalhom( int nseq, LocalHom **localhom );
62 extern void extendlocalhom2( int nseq, LocalHom **localhom, double **mtx );
63 extern int makelocal( char *s1, char *s2, int thr );
64 extern void mdfymtx( char **pair, int s1, double **partialmtx, double **mtx );
65 extern float score_calc( char **seq, int s );
66 extern void cpmx_calc( char **seq, float **cpmx, double *eff, int lgth, int clus );
67 extern void cpmx_calc_new( char **seq, float **cpmx, double *eff, int lgth, int clus );
68 extern void MScpmx_calc_new( char **seq, float **cpmx, double *eff, int lgth, int clus );
69 extern void mseqcat( char **seq1, char **seq2, double **eff, double *effarr1, double *effarr2, char name1[M][B], char name2[M][B], int clus1, int clus2 );
70 extern void strnbcat( char *s1, char *s2, int m );
71 extern int conjuctionforgaln( int s0, int s1, char **seq, char **aseq, double *peff, double *eff, char **name, char **aname, char *d );
72 extern int fastconjuction( int *memlist, char **seq, char **aseq, double *peff, double *eff, char name[M][B], char aname[M][B], char *d );
73 extern int fastconjuction_noname_kozo( int *memlist, char **seq, char **aseq, double *peff, double *eff, double *peff_kozo, double *eff_kozo, char *d );
74 extern int fastconjuction_noname( int *memlist, char **seq, char **aseq, double *peff, double *eff, char *d );
75 extern int fastconjuction_noweight( int *memlist, char **seq, char **aseq, double *peff, char *d );
76 extern int conjuctionfortbfast( char **pair, int s, char **seq, char **aseq, double *peff, double *eff, char *d );
77 extern int conjuctionfortbfast_kozo( double *tmptmp, char **pair, int s, char **seq, char **aseq, double *peff, double *eff, double *peff_kozo, double *eff_kozo, char *d );
78 extern int conjuction( char **pair, int s, char **seq, char **aseq, double *peff, double *eff, char **name, char **aname, char *d );
79 extern void floatdelete( float **cpmx, int d, int len );
80 extern void chardelete( char *seq, int d );
81 extern int RootBranchNode( int nseq, int ***topol, int step, int branch );
82 extern void BranchLeafNode( int nseq, int ***topol, int *node, int step, int branch );
83 extern void RootLeafNode( int nseq, int ***topol, int *node );
84 extern void nodeFromABranch( int nseq, int *result, int **pairwisenode, int ***topol, double **len, int step, int num );
85 extern void OneClusterAndTheOther( int locnjob, char **pair, int *s1, int *s2, int ***topol, int step, int branch );
86 extern void makeEffMtx( int nseq, double **mtx, double *vec );
87 extern void node_eff( int nseq, double *eff, int *node );
88 extern int shrinklocalhom( char **pair, int s1, int s2, LocalHom **localhom, LocalHom ***localhomshrink );
89 extern int msshrinklocalhom( char **pair, int s1, int s2, LocalHom **localhom, LocalHom ***localhomshrink );
90 extern int fastshrinklocalhom( int *mem1, int *mem2, LocalHom **localhom, LocalHom ***localhomshrink );
91 extern int msfastshrinklocalhom( int *mem1, int *mem2, LocalHom **localhom, LocalHom ***localhomshrink );
92 extern int TreeDependentIteration( int locnjob, char **name, int nlen[M], char **aseq, char **bseq, int ***topol, double **len, int alloclen, LocalHom **localhomtable, RNApair ***single, int nkozo, char *kozoarivec );
93 extern void checkMinusLength( int nseq, double **len );
94 extern void negativeMember2( int *mem, int *query, int locnseq );
95 extern int *negativeMember( int *query, int locnseq );
96 extern int IntExistsInVec( int query, int *vector );
97 extern NodeInCub searchParent( int top, int ***topol, int Start, int End );
98 extern void stopolInit( int n, Node *stopol );
99 extern void treeCnv( Node *stopol, int locnseq, int ***topol, double **len, double **bw );
100 extern int isLeaf( Node node );
101 extern double syntheticLength( Node *ob, Node *oppositeNode );
102 extern double calcW( Node *ob, Node *op );
103 extern void calcBranchWeight( double **bw, int locnseq, Node *stopol, int ***topol, double **len );
104 extern void branchWeightToPairWeight( int locnseq, int ***topol, double **pw, double **bw );
105 extern void weightFromABranch_rec( double *result, Node *ob, Node *op );
106 extern void weightFromABranch( int nseq, double *result, Node *stopol, int ***topol, int step, int LorR );
107 extern void keika( char *str, int current, int all );
108 extern double maxItch( double *soukan, int size );
109 extern void calcNaiseki( Fukusosuu *value, Fukusosuu *x, Fukusosuu *y );
110 extern Fukusosuu *AllocateFukusosuuVec( int l1 );
111 extern Fukusosuu **AllocateFukusosuuMtx( int l1, int l2 );
112 extern Fukusosuu ***AllocateFukusosuuCub( int l1, int l2, int l3 );
113 extern void FreeFukusosuuVec( Fukusosuu *vec );
114 extern void FreeFukusosuuMtx( Fukusosuu **mtx );
115 extern int getKouho( int *kouho, int nkouho, double *soukan, int nlen2 );
116 extern void zurasu2( int lag, int    clus1, int    clus2, char  **seq1, char  **seq2, char **aseq1, char **aseq2 );
117 extern void zurasu( int lag, int    clus1, int    clus2, char  **seq1, char  **seq2, char **aseq1, char **aseq2 );
118 extern int alignableReagion( int    clus1, int    clus2, char  **seq1, char  **seq2, double *eff1, double *eff2, Segment *seg );
119 extern void blockAlign( int *cut1, int *cut2, double **ocrossscore, int *ncut );
120 extern void blockAlign2( int *cut1, int *cut2, Segment **seg1, Segment **seg2, double **ocrossscore, int *ncut );
121 extern void blockAlign3( int *cut1, int *cut2, Segment **seg1, Segment **seg2, double **ocrossscore, int *ncut );
122 extern float A__align11( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch );
123 extern float imp_match_out_scH( int i1, int j1 );
124 extern void imp_match_init_strictH( float *imp, int clus1, int clus2, int lgth1, int lgth2, char **seq1, char **seq2, double *eff1, double *eff2, LocalHom ***localhom, int forscore );
125 extern float imp_match_out_scQ( int i1, int j1 );
126 extern float imp_match_out_scR( int i1, int j1 );
127 extern void imp_match_init_strictQ( float *imp, int clus1, int clus2, int lgth1, int lgth2, char **seq1, char **seq2, double *eff1, double *eff2, LocalHom ***localhom, int forscore );
128 extern void imp_match_init_strictR( float *imp, int clus1, int clus2, int lgth1, int lgth2, char **seq1, char **seq2, double *eff1, double *eff2, LocalHom ***localhom, int forscore );
129 extern void imp_match_init( float *imp, int clus1, int clus2, int lgth1, int lgth2, char **seq1, char **seq2, double *eff1, double *eff2, LocalHom ***localhom );
130 extern float MSalignmm( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, char *, char *, char *, char *, int *, int, int *, int headgp, int tailgp );
131 extern float Lalignmm_hmout( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, char *, char *, char *, char *, float **map );
132 extern float Lalign2m2m_hmout( char **seq1, char **seq2, char **seq1r, char **seq2r, char *dir1, char *dir2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, char *, char *, char *, char *, float **map );
133 extern float MSalign11( char **seq1, char **seq2, int alloclen );
134 //extern float rnalocal( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, RNApair **pair );
135 extern float A__align( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch, char *gs1, char *gs2, char *ge1, char *ge2, int *, int, int *, int headgp, int tailgp );
136 extern float H__align( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch, char *gs1, char *gs2, char *ge1, char *ge2 );
137 extern float Q__align( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch, char *gs1, char *gs2, char *ge1, char *ge2 );
138 extern float Q__align_gapmap( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch, char *gs1, char *gs2, char *ge1, char *ge2, int *gapmap1, int *gapmap2 );
139 extern float R__align( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch, char *gs1, char *gs2, char *ge1, char *ge2 );
140 extern float R__align( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch, char *gs1, char *gs2, char *ge1, char *ge2 );
141 extern float A__align_gapmap( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch, int *gapmap1, int *gapmap2 );
142 extern float D__align_gapmap( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch, int *gapmap1, int *gapmap2 );
143 extern float translate_and_Calign( char **mseq1, char **mseq2, double *effarr1, double *effarr2, int clus1, int clus2, int alloclen );
144 extern double Fgetlag( char  **seq1, char  **seq2, double *eff1, double *eff2, int    clus1, int    clus2, int alloclen );
145 extern float Falign( char  **seq1, char  **seq2, double *eff1, double *eff2, int    clus1, int    clus2, int alloclen, int *fftlog, int *, int, int * );
146 extern float Falign_udpari_long( char  **seq1, char  **seq2, double *eff1, double *eff2, int    clus1, int    clus2, int alloclen, int *fftlog );
147 float Falign_localhom( char  **seq1, char  **seq2, double *eff1, double *eff2, int    clus1, int    clus2, int alloclen, LocalHom ***localhom, float *totalimpmatch, int *gapmap1, int *gapmap2, int *chudanpt, int chudanref, int *chudanres );
148 extern float part_imp_match_out_sc( int i1, int j1 );
149 extern float part_imp_match_out_scQ( int i1, int j1 );
150 extern void part_imp_match_init_strict( float *imp, int clus1, int clus2, int lgth1, int lgth2, char **seq1, char **seq2, double *eff1, double *eff2, double *eff1_kozo, double *eff2_kozo, LocalHom ***localhom, int forscore );
151 extern void part_imp_match_init_strictQ( float *imp, int clus1, int clus2, int lgth1, int lgth2, char **seq1, char **seq2, double *eff1, double *eff2, LocalHom ***localhom, int forscore );
152 extern void part_imp_match_init( float *imp, int clus1, int clus2, int lgth1, int lgth2, char **seq1, char **seq2, double *eff1, double *eff2, LocalHom ***localhom );
153 extern float partA__align( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch, int start1, int end1, int start2, int end2, int *gapmap1, int *gapmap2, char *, char *, char *, char *, int *, int, int * );
154 extern float partQ__align( char **seq1, char **seq2, double *eff1, double *eff2, int icyc, int jcyc, int alloclen, LocalHom ***localhom, float *impmatch, int start1, int end1, int start2, int end2, int *gapmap1, int *gapmap2, char *, char *, char *, char *);
155 extern float G__align11( char **seq1, char **seq2, int alloclen, int headgp, int tailgp  );
156 extern float G__align11_noalign( int mtx[0x80][0x80], int penal, int penal_ex, char **seq1, char **seq2, int alloclen );
157 extern float L__align11( char **seq1, char **seq2, int alloclen, int *off1pt, int *off2pt );
158 extern float genL__align11( char **seq1, char **seq2, int alloclen, int *off1pt, int *off2pt );
159 extern float genG__align11( char **seq1, char **seq2, int alloclen );
160 extern float VAalign11( char **seq1, char **seq2, int alloclen, int *off1pt, int *off2pt, LocalHom *lhmpt );
161 extern float suboptalign11( char **seq1, char **seq2, int alloclen, int *off1pt, int *off2pt, LocalHom *lhmpt )
162 ;
163 extern int fft(int n, Fukusosuu *x, int dum);
164 extern void topolcpy( int s1[], int s2[], int *mpt1, int *mpt2 );
165 extern void topolcat( int s1[], int s2[], int *mpt1, int *mpt2 );
166 extern void topolsort( int m, int s[] );
167 extern void topolswap( int s1[], int s2[], int *mpt1, int *mpt2 );
168 extern void reduc( double **mtx, int nseq, int im, int jm );
169 extern void  nj( int nseq, double **omtx, int ***topol, double **dis );
170 extern void JTTmtx( double **rsr, double *freq, char locamino[26], char locgrp[26], int isTM );
171 extern void BLOSUMmtx( int n, double **matrix, double *freq, char *amino, char *amino_grp );
172 extern void putlocalhom2( char *al1, char *al2, LocalHom *localhompt, int off1, int off2, int opt, int overlapaa );
173 extern void putlocalhom_str( char *al1, char *al2, double *equiv, double scale, LocalHom *localhompt, int off1, int off2, int opt, int overlapaa );
174 extern void putlocalhom_ext( char *al1, char *al2, LocalHom *localhompt, int off1, int off2, int opt, int overlapaa );
175 extern void putlocalhom3( char *al1, char *al2, LocalHom *localhompt, int off1, int off2, int opt, int overlapaa );
176 extern void putlocalhom( char *al1, char *al2, LocalHom *localhompt, int off1, int off2, int opt, int overlapaa );
177 extern char *cutal( char *al, int al_display_start, int start, int end );
178 extern void ErrorExit( char *message );
179 extern void strncpy_caseC( char *str1, char *str2, int len );
180 extern void seqUpper( int nseq, char **seq );
181 extern void seqLower( int nseq, char **seq );
182 extern int getaline_fp_eof( char *s, int l, FILE *fp );
183 extern int getaline_fp_eof_new(char s[], int l, FILE *fp);
184 extern int myfgets(char s[], int l, FILE *fp);
185 extern float input_new( FILE *fp, int d );
186 extern void PreRead( FILE *fp, int *locnjob, int *locnlenmax );
187 extern int allSpace( char *str );
188 extern void Read( char name[M][B], int nlen[M], char **seq );
189 extern void FRead( FILE *fp, char name[][B], int nlen[], char **seq );
190 extern void kake2hiku( char *str );
191 extern void readDataforgaln( FILE *fp, char **name, int *nlen, char **seq );
192 extern void readData( FILE *fp, char name[][B], int nlen[], char **seq );
193 extern void readData_pointer_casepreserve( FILE *fp, char **name, int *nlen, char **seq );
194 extern void readData_pointer( FILE *fp, char **name, int *nlen, char **seq );
195 extern void readData_pointer2( FILE *fp, int nseq, char **name, int *nlen, char **seq );
196 extern void readData_varlen( FILE *fp, char **name, int *nlen, char **seq );
197 extern int countATGC( char *s, int *total );
198 extern void getnumlen( FILE *fp );
199 extern void getnumlen_casepreserve( FILE *fp, int *nlenmin );
200 extern void getnumlen_nogap( FILE *fp, int *nlenmin );
201 extern void WriteGapFill( FILE *fp, int locnjob, char name[][B], int nlen[M], char **aseq );
202 extern void writeDataforgaln( FILE *fp, int locnjob, char **name, int *nlen, char **aseq );
203 extern void writeData( FILE *fp, int locnjob, char name[][B], int nlen[], char **aseq );
204 extern void writeData_pointer( FILE *fp, int locnjob, char **name, int *nlen, char **aseq );
205 extern void readhat2_floathalf( FILE *fp, int nseq, char name[M][B], float **mtx );
206 extern void readhat2_floathalf_pointer( FILE *fp, int nseq, char **name, float **mtx );
207 extern void readhat2_float( FILE *fp, int nseq, char name[M][B], float **mtx );
208 extern void readhat2_int( FILE *fp, int nseq, char name[M][B], int **mtx );
209 extern void readhat2_pointer( FILE *fp, int nseq, char **name, double **mtx );
210 extern void readhat2( FILE *fp, int nseq, char name[M][B], double **mtx );
211 extern void WriteFloatHat2_pointer_halfmtx( FILE *hat2p, int locnjob, char **name, float **mtx );
212 extern void WriteFloatHat2( FILE *hat2p, int locnjob, char name[M][B], float **mtx );
213 extern void WriteHat2_int( FILE *hat2p, int locnjob, char name[M][B], int **mtx );
214 extern void WriteHat2( FILE *hat2p, int locnjob, char name[M][B], double **mtx );
215 extern void WriteHat2_pointer( FILE *hat2p, int locnjob, char **name, double **mtx );
216 extern int ReadFasta_sub( FILE *fp, double *dis, int nseq, char name[M][B] );
217 extern int ReadSsearch( FILE *fp, double *dis, int nseq, char name[M][B] );
218 extern int ReadBlastm7( FILE *fp, double *dis, int qmem, char name[M][B], LocalHom *localhomlist );
219 extern int ReadBlastm7_scoreonly( FILE *fp, double *dis, int nin );
220 extern int ReadBlastm7_avscore( FILE *fp, double *dis, int nin );
221 extern int ReadFasta34noalign( FILE *fp, double *dis, int qmem, char name[M][B], LocalHom *localhomlist );
222 extern int ReadFasta34m10_nuc( FILE *fp, double *dis, int qmem, char name[M][B], LocalHom *localhomlist );
223 extern int ReadFasta34m10( FILE *fp, double *dis, int qmem, char name[M][B], LocalHom *localhomlist );
224 extern int ReadFasta34m10_scoreonly_nuc( FILE *fp, double *dis, int nin );
225 extern int ReadFasta34m10_scoreonly( FILE *fp, double *dis, int nin );
226 extern int ReadFasta34( FILE *fp, double *dis, int nseq, char name[M][B], LocalHom *localhomlist );
227 extern int ReadFasta3( FILE *fp, double *dis, int nseq, char name[M][B] );
228 extern int ReadFasta( FILE *fp, double *dis, int nseq, char name[M][B] );
229 extern int ReadOpt( FILE *fp, int opt[M], int nseq, char name[M][B] );
230 extern int ReadOpt2( FILE *fp, int opt[M], int nseq, char name[M][B] );
231 extern int writePre( int nseq, char **name, int nlen[M], char **aseq, int force );
232 extern void readOtherOptions( int *ppidptr, int *fftThresholdptr, int *fftWinSizeptr );
233 extern void initSignalSM( void );
234 extern void initFiles( void );
235 extern void WriteForFasta( FILE *fp, int locnjob, char name[][B], int nlen[M], char **aseq );
236 extern void readlocalhomtable( FILE*fp, int njob, LocalHom **localhomtable, char *kozoarivec );
237 extern void readlocalhomtable2( FILE*fp, int njob, LocalHom **localhomtable, char *kozoarivec );
238 extern void outlocalhom( LocalHom **localhom, int nseq );
239 extern void outlocalhompt( LocalHom ***localhom, int n1, int n2 );
240 extern void FreeLocalHomTable( LocalHom **localhomtable, int n ) ;
241 extern void constants( int nseq, char **seq );
242 extern void clustalout_pointer( FILE *fp, int nseq, int maxlen, char **seq, char **name, char *mark, char *comment, int *order, int namelen );
243 extern void phylipout_pointer( FILE *fp, int nseq, int maxlen, char **seq, char **name, int *order );
244 extern void writeData_reorder( FILE *fp, int locnjob, char name[][B], int nlen[], char **aseq, int *order );
245 extern void writeData_reorder_pointer( FILE *fp, int locnjob, char **name, int *nlen, char **aseq, int *order );
246
247 extern void resetlocalhom( int, LocalHom ** );
248 extern int load1SeqWithoutName_new( FILE *fpp, char *cbuf );
249 extern char *load1SeqWithoutName_realloc( FILE *fpp );
250 extern char *load1SeqWithoutName_realloc_casepreserve( FILE *fpp );
251 extern int disttbfast( char **in, int nlen[M], char name[M][B] );
252 extern void searchKUorWA( FILE *fp );
253 extern void gapireru( char *res, char *ori, char *gt );
254 extern int seqlen( char *seq );
255 extern void st_FinalGapCount( float *fgcp, int clus, char **seq, double *eff, int len );
256 extern void st_OpeningGapCount( float *ogcp, int clus, char **seq, double *eff, int len );
257 extern void st_OpeningGapCount( float *ogcp, int clus, char **seq, double *eff, int len );
258 extern void st_FinalGapCount_zure( float *fgcp, int clus, char **seq, double *eff, int len );
259 extern void getdiaminofreq_x( float *freq, int clus, char **seq, double *eff, int len );
260 extern void new_FinalGapCount_zure( float *fgcp, int clus, char **seq, double *eff, int len, char *s, char *e );
261 extern void new_FinalGapCount( float *fgcp, int clus, char **seq, double *eff, int len, char *g );
262 extern void new_OpeningGapCount( float *ogcp, int clus, char **seq, double *eff, int len, char *g );
263 extern void new_OpeningGapCount_zure( float *ogcp, int clus, char **seq, double *eff, int len, char *s, char *e );
264 extern void getGapPattern( float *fgcp, int clus, char **seq, double *eff, int len, char *g );
265 extern void getgapfreq( float *freq, int clus, char **seq, double *eff, int len );
266 extern void getgapfreq_zure( float *freq, int clus, char **seq, double *eff, int len );
267 //extern void getgapfreq_zure_part( float *freq, int clus, char **seq, double *eff, int len, char *s );
268 extern void getgapfreq_zure_part( float *freq, int clus, char **seq, double *eff, int len, char *s );
269 extern void getdiaminofreq_part( float *freq, int clus, char **seq, double *eff, int len, char *s, char *e );
270 extern void getdigapfreq_part( float *freq, int clus, char **seq, double *eff, int len, char *s, char *e );
271 extern void getdiaminofreq_st( float *freq, int clus, char **seq, double *eff, int len );
272 extern void getdigapfreq_st( float *freq, int clus, char **seq, double *eff, int len );
273 extern void st_getGapPattern( Gappat **gpat, int clus, char **seq, double *eff, int len );
274 extern void getkyokaigap( char *g, char **s, int pos, int n );
275 extern double *loadaamtx( void );
276 extern float naivepairscore( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, int penal );
277 extern float naivepairscore11( char *seq1, char *seq2, int penal );
278 extern float naiveQpairscore( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, int penal );
279 extern float naiveRpairscore( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, int penal );
280 extern float naiveHpairscore( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, int penal );
281 extern void foldrna( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, RNApair ***gr1, RNApair ***gr2, float **impmtx, int *gapmap1, int *gapmap2, RNApair *pair );
282 extern void foldrna_gappick( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, RNApair ***gr1, RNApair ***gr2, float **impmtx, int *gapmap1, int *gapmap2, RNApair *pair );
283 extern void imp_rna( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, RNApair ***gr1, RNApair ***gr2, int *gapmap1, int *gapmap2, RNApair *pair );
284 extern void imp_rnaQ( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, RNApair ***gr1, RNApair ***gr2, int *gapmap1, int *gapmap2, RNApair *pair );
285 extern void part_imp_rnaQ( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, RNApair ***gr1, RNApair ***gr2, int *gapmap1, int *gapmap2, RNApair *pair );
286 extern void part_imp_rna( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, RNApair ***gr1, RNApair ***gr2, int *gapmap1, int *gapmap2, RNApair *pair );
287 extern void imp_rnaQ_gappick( int nseq1, int nseq2, char **seq1, char **seq2, double *eff1, double *eff2, RNApair ***gr1, RNApair ***gr2, int *gapmap1, int *gapmap2, RNApair *pair );
288 extern void foldalignedrna( int clus1, int clus2, char **mseq1, char **mseq2, double *effarr1, double *effarr2, RNApair *rnapairboth );
289 void readmccaskill( FILE *fp, RNApair **pairprob, int length );
290 void makegrouprna( RNApair ***group, RNApair ***all, int *memlist );
291 void makegrouprnait( RNApair ***group, RNApair ***all, char **pair, int s );
292 extern void fixed_musclesupg_float_realloc_nobk_halfmtx( int nseq, float **eff, int ***topol, float **len, Treedep * );
293 extern void loadtree( int nseq, int ***topol, float **len, char **name, int *nlen, Treedep * );
294 extern void loadtop( int nseq, float **eff, int ***topol, float **len );
295 extern void fixed_musclesupg_float_realloc_nobk_halfmtx_treeout( int nseq, float **eff, int ***topol, float **len, char **name, int *nlen, Treedep * );
296 extern void fixed_musclesupg_double_treeout( int nseq, double **eff, int ***topol, double **len, char **name );
297 extern void imp_match_init_strict( float *imp, int clus1, int clus2, int lgth1, int lgth2, char **seq1, char **seq2, double *eff1, double *eff2, double *eff1kozo, double*eff2kozo, LocalHom ***localhom, int forscore );
298 extern void miyataout_reorder_pointer( FILE *fp, int locnjob, int nlenmax, char **name, int *nlen, char **aseq, int *order );
299 extern void veryfastsupg_double_outtree( int nseq, double **eff, int ***topol, double **len, char **name );
300 extern void cpmx_ribosum( char **seq, char **seqr, char *dir, float **cpmx, double *eff, int lgth, int clus );
301 extern void rnaalifoldcall( char **seq, int nseq, RNApair **pairprob );
302 extern void readpairfoldalign( FILE *fp, char *seq1, char *seq2, char *aln1, char *aln2, int q1, int q2, int *of1, int *of2, int sumlen );
303 extern void write1seq( FILE *fp, char *aseq );
304 extern void assignstrweight( int nseq, double *strweight, Node *stopol, int ***topol, int step, int LorR, char *kozoari, double *seqweight );
305 extern void cutData( FILE *, int **, char **, int * );
306 extern void cutAlignment( FILE *, int **, char **, int *, char **, char ** );
307 extern void catData( FILE * );
308 extern void getnumlen_nogap_outallreg_web( FILE *fp, FILE *ofp, int *nlenminpt, int *isalignedpt );
309 extern void getnumlen_nogap_outallreg( FILE *fp, int *nlenminpt );
310 extern double plainscore( int nseq, char **seq );
311 extern void eq2dash( char *s );
312 extern void findnewgaps( int n, char **seq, int *gaplen );
313 extern void findcommongaps( int, char **, int * );
314 extern void adjustgapmap( int, int *, char * );
315 extern void insertnewgaps( int njob, int *alreadyaligned, char **seq, int *ex1, int *ex2, int *gaplen, int *gapmap, int alloclen, char alg );
316 extern void restorecommongaps( int n, char **seq, int *top0, int *top1, int *gaplen, int alloclen );
317 extern int samemember( int *mem, int *cand );
318 extern int includemember( int *mem, int *cand );
319 extern void profilealignment( int n0, int n1, int n2, char **aln0, char **aln1, char **aln2, int alloclen, char alg );