1 /* to use floats instead of doubles in pf_fold() comment next line */
4 #define FLT_OR_DBL double
6 #define FLT_OR_DBL float
9 extern int noGU; /* GU not allowed at all */
10 extern int no_closingGU; /* GU allowed only inside stacks */
11 extern int tetra_loop; /* Fold with specially stable 4-loops */
12 extern int energy_set; /* 0 = BP; 1=any mit GC; 2=any mit AU-parameter */
13 extern int dangles; /* use dangling end energies (not in part_func!) */
15 extern char *nonstandards; /* contains allowed non standard bases */
16 extern double temperature; /* rescale parameters to this temperature */
17 extern int james_rule; /* interior loops of size 2 get energy 0.8Kcal and
18 no mismatches, default 1 */
19 extern int logML; /* use logarithmic multiloop energy function */
20 extern int cut_point; /* first position of 2nd strand for co-folding */
22 struct bond { /* base pair */
26 typedef struct bond bondT;
27 extern bondT *base_pair; /* list of base pairs */
29 extern FLT_OR_DBL *pr; /* base pairing prob. matrix */
30 extern int *iindx; /* pr[i,j] -> pr[iindx[i]-j] */
31 extern double pf_scale; /* scaling factor to avoid float overflows*/
32 extern int fold_constrained; /* fold with constraints */
33 extern int do_backtrack; /* calculate pair prob matrix in part_func() */
34 extern int noLonelyPairs; /* avoid helices of length 1 */
35 extern char backtrack_type; /* usually 'F'; 'C' require (1,N) to be bonded;
36 'M' seq is part of a multi loop */
37 char * option_string(void);