source: tags/ms_r18q1/TREEGEN/rns.h

Last change on this file was 16766, checked in by westram, 6 years ago
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.5 KB
Line 
1#ifndef RNS_H
2#define RNS_H
3
4#ifndef BASE_H
5#include "base.h"
6#endif
7#ifndef SIMCFG_H
8#include "simcfg.h"
9#endif
10#ifndef FRAND_H
11#include "frand.h"
12#endif
13
14typedef double SingleProb[BASETYPES];
15typedef double DoubleProb[BASETYPES][BASETYPES];
16
17// -----------------------------
18//      Erzeugung der Ur-RNS
19
20extern int        orgLen;
21extern double     orgHelixPart;
22
23// -----------------
24//      Mutation
25
26extern int    timeSteps;
27extern Frand  mrpb_Init,
28              l2hrpb_Init,
29              pairPart,
30              mutationRate,
31              splitRate,
32              helixGcDruck,
33              helixGcRate,
34              helixAtRate,
35              loopGcDruck,
36              loopGcRate,
37              loopAtRate;
38extern double transitionRate,
39              transversionRate;
40
41// ---------------------------
42//      Ausgabefilepointer
43
44extern FILE *topo,
45            *seq;
46
47// ---------------------
48//      Eine Species
49
50typedef struct S_RNS {
51    char *base;    // Array der Basen
52    int   bases,   // Anzahl Basen
53          helix,   // Anzahl Basenpaare in helikalen Bereichen
54          pairing, // Anzahl paarender Basenpaare (G-C und A-T)
55          laufNr;  // erhoeht sich mit jeder neuen RNS (fuer Namensvergabe)
56
57} *RNS;
58
59#ifdef __cplusplus
60extern "C" {
61#endif
62
63    RNS  createOriginRNS ();
64    void freeRNS         (RNS rns);
65    void splitRNS        (int no_of_father, RNS origin, double age, int steps, int depth);
66
67    void dumpDepths      ();
68
69#ifdef __cplusplus
70}
71#endif
72
73#endif
Note: See TracBrowser for help on using the repository browser.