00001 #ifndef DATASTRUCT
00002 #define DATASTRUCT
00003
00004
00005
00006 /* typedef struct _Epar_set{ */
00007 /* typedef int tstack[NBPAIRS+1][NBPAIRS+1] _stack; */
00008 /* typedef int[NBPAIRS+1][5][5] _mismatchI; */
00009 /* typedef int[NBPAIRS+1][5][5] _mismatchH; */
00010 /* typedef int[NBPAIRS+1][5] _dangle5; */
00011 /* typedef int[NBPAIRS+1][5] _dangle3; */
00012 /* typedef int[NBPAIRS+1][NBPAIRS+1][5][5] _Sint2; */
00013 /* typedef int[11][2] _deep; */
00014 /* typedef int[11][2] _shallow; */
00015
00016
00017 typedef struct _baum{
00018 int nummer; /* of base in sequence */
00019 char looptype;
00020 int int_bps;
00021 int pk_flag;
00022 int pk_com;
00023 int no_dang;
00024 int deng;
00025 int col;
00026 unsigned short base; /* 0<->unknown, 1<->A, 2<->C, 3<->G, 4<->U */
00027 struct _baum *up;
00028 struct _baum *down;
00029 struct _baum *next[2];
00030 struct _baum *prev[2];
00031 struct _baum *next_bp[2];
00032 struct _baum *prev_bp[2];
00033 }baum;
00034
00035 typedef struct _F_set{
00036 float startE;
00037 float stopE;
00038 double elotime;
00039 int elostep;
00040 int startlen;
00041 double smt;
00042 int smn;
00043 short starT ;/* 0 start structure is open chain, 1 specified start structure */
00044 short stoP ; /* 1 specified stop structure */
00045 short noS ; /* no structure output */
00046 short allS;
00047 short pS ;
00048 short mC ; /* 0 kawasaki rule, 1 metropolis rule */
00049 }F_set;
00050
00051 typedef struct _E_set{
00052 short tetra_loop;
00053 short james_rule;
00054 short energy_set;
00055 short logML;
00056 short new_ninio;
00057 short stack_bulge;
00058 int dangles ;
00059
00060
00061 /* _stack stack; */
00062 int **stack;
00063 int *hairpin;
00064 int *bulge;
00065 int *internal_loop;
00066 int ***mismatchI;
00067 int ***mismatchH;
00068 int **dangle5 ;
00069 int **dangle3;
00070 int ****Sint2;
00071 int *F_ninio;
00072 double lxc;
00073 int MLbase;
00074 int MLintern;
00075 int MLclosing;
00076 int *TETRA_ENERGY;
00077 /* int Triloop_E[40]; */
00078 /* char *Triloops=Triloops_37; */
00079 char *Tetraloops;
00080 int MAX_NINIO;
00081 int Coax_const;
00082 int **deep;
00083 int **shallow;
00084 }E_set;
00085
00086 typedef struct _M_set{
00087 short noGU ;
00088 short no_closingGU ;
00089 short do_pk;
00090 short do_flip;
00091 short myturn;
00092 }M_set;
00093
00094
00095 typedef struct _mol{
00096 baum *vroot;
00097 char *seq;
00098 char *struc;
00099
00100 char *currform;
00101 char *oldform;
00102 char *startform; /* array for start structure */
00103 char **stopform; /* array for stop structure */
00104 short *nei_list;
00105 double *bmf_list;
00106 int nei_cnt;
00107
00108 E_set *e_info;
00109 M_set *m_info;
00110 F_set *f_info;
00111
00112 float E1 ;
00113 double Zeit;
00114 int round ;
00115 int len ;
00116 float temperature ;
00117
00118 }mol;
00119
00120 #endif
1.2.6 written by Dimitri van Heesch,
© 1997-2001