-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathOptions.h
242 lines (239 loc) · 5.48 KB
/
Options.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
#ifndef OPTIONS_H_
#define OPTIONS_H_
const unsigned int REF_LOC=1;
const unsigned int REF_DYN=2;
const unsigned int REF_DP=4;
class Options {
public:
enum AlignType { ont, clr, ccs, contig};
int globalK;
int localK;
int globalW;
int localW;
int globalMaxFreq;
int localMaxFreq;
int maxDiag;
int cleanMaxDiag;
int minClusterSize;
int minClusterLength;
int window;
bool dotPlot;
bool mergeClusters;
bool mergeGapped;
int minDiagCluster;
int minRefinedClusterSize;
bool viewPairwise;
bool hardClip;
string printFormat;
//int bestn;
bool storeAll;
int nproc;
string outfile;
string outsvfile;
int maxCandidates;
int refineLevel;
bool doBandedAlignment;
int maxGap;
int maxGapBtwnAnchors;
int localIndexWindow;
bool NaiveDP;
bool SparseDP;
bool LookUpTable;
int readStart;
int readStride;
bool seqan;
int localMatch;
int localMismatch;
int localIndel;
int localBand;
int refineBand;
int MergeSplit;
int flagRemove;
int maxRemovePairedIndelsLength; // if an anchor's length is larger than this parameter,
// then even if it has paired indels before and after it, we do not delete this anchor.
int maxRemoveSpuriousAnchorsDist;
int minRemoveSpuriousAnchorsNum;
int minRemoveSpuriousAnchorsLength;
int NumAln;
int BtnSubClusterswindow;
int binLength;
int minBinNum;
bool HighlyAccurate;
int splitdist;
float firstcoefficient;
float secondcoefficient;
//int minimizerFreq;
int NumOfminimizersPerWindow;
bool Printsvsig;
int svsigLen;
float alnthres;
string timing;
int PrintNumAln;
AlignType readType;
bool storeTiming;
int sseBand;
int globalWinsize;
int minUniqueStretchNum;
int minUniqueStretchDist;
float slope;
float rate_FirstSDPValue;
float rate_value;
long maxDrift;
int minTightCluster;
bool RefineBySDP;
int refineSpaceDiag;
float initial_anchorbonus;
float anchorstoosparse;
bool passthroughtag;
bool CheckTrueIntervalInFineCluster;
bool CalculateMinimizerStats;
bool skipBandedRefine;
string readname;
int merge_dist;
bool SkipLocalMinimizer;
bool SkipClusering;
bool RemovePairedIndels;
bool RemoveSpuriousAnchors;
float second_anchorbonus;
int RoughClustermaxGap;
int SecondCleanMinDiagCluster;
int SecondCleanMaxDiag;
bool debug;
int anchorPerlength;
int punish_anchorfreq;
int cleanClustersize;
bool bypassClustering;
bool refineEnd;
int refineSpaceDist;
bool ExtractDiagonalFromClean;
bool trimrefine;
bool limitrefine;
int freeGap;
int maxP;
float gapopen;
float gapextend;
float gaproot;
int gapCeiling1;
int gapCeiling2;
bool showmm;
bool printMD;
bool refineBreakpoint;
Options() {
showmm=true;
printMD=false;
refineBreakpoint=false;
freeGap=10;
maxP=2000;
skipBandedRefine=false;
storeTiming=false;
readType=Options::ont;
localMatch=4;
localMismatch=-3;
localIndel=-4;
localBand=15;
refineBand=7;
sseBand=30;
readStart=0;
readStride=1;
dotPlot=false;
globalK=17;
globalW=10;
localK=7;
localW=5;
//bestn=1;
globalMaxFreq=50;
localMaxFreq=30;
maxDiag=500; // We want maxDiag to be a small number (used to be 500) //// For CCS, need to be smaller!!! //// lots of unmapped reads due to 500;
cleanMaxDiag=100;
minDiagCluster=10; // used to be 20
// This parameter is used in CleanOffDiagonal function; It's better not to set it to a single value.
// This parameter is used in another CleanOFFDiagonal function
// This parameter can be deleted here
minClusterSize=2; //
minClusterLength=50; // For CCS, need to be larger!(200)
minRefinedClusterSize=40;
window=100;
mergeGapped=false;
viewPairwise=false;
hardClip=false;
printFormat="p";
storeAll=false;
nproc=1;
outfile="";
outsvfile="";
maxCandidates=10;
doBandedAlignment=true;
refineLevel= REF_LOC | REF_DYN | REF_DP;
maxGap=5000; // 5000
maxGapBtwnAnchors=1000; // no larger than 2000 // used to be 1500 // 1000
mergeClusters=true;
NaiveDP=false;
seqan=false;
SparseDP=true;
LookUpTable=true;
MergeSplit=true;
flagRemove=0;
maxRemovePairedIndelsLength=500; // used to be 50
//maxRemoveSpuriousAnchorsDist=200;
//minRemoveSpuriousAnchorsNum=15;
//minRemoveSpuriousAnchorsLength=100;
maxRemoveSpuriousAnchorsDist=500;
minRemoveSpuriousAnchorsNum=10;
NumAln = 3;
PrintNumAln = 1;
BtnSubClusterswindow = 800;
binLength = 20000;
minBinNum = 3;
HighlyAccurate = false;
splitdist = 50000;
firstcoefficient = 18;
secondcoefficient = 12;
//minimizerFreq = 50;
NumOfminimizersPerWindow = 5;
Printsvsig=false;
svsigLen = 25;
alnthres = 0.7f;
timing="";
localIndexWindow=256;
globalWinsize = 16;
minUniqueStretchNum = 1;
minUniqueStretchDist = 50;
slope=1;
rate_FirstSDPValue=0.2;
rate_value=0.8;
maxDrift=400;
minTightCluster=10;
RefineBySDP=true;
refineSpaceDiag=5;
initial_anchorbonus=1.0;
anchorstoosparse=0.01;
passthroughtag=false;
CheckTrueIntervalInFineCluster=false;
CalculateMinimizerStats=false;
merge_dist=100;
SkipLocalMinimizer=false;
SkipClusering=false;
RemovePairedIndels=true;
RemoveSpuriousAnchors=true;
second_anchorbonus=2;
RoughClustermaxGap=1000;
SecondCleanMinDiagCluster=40;
SecondCleanMaxDiag=10;
debug=false;
anchorPerlength=10;
punish_anchorfreq=10;
cleanClustersize=100;
bypassClustering=false;
refineEnd=false;
refineSpaceDist=10000;
ExtractDiagonalFromClean=false;
trimrefine=false;
limitrefine=true;
gapopen=2;
gapextend=10;
gaproot=2.0;
gapCeiling1=1500;
gapCeiling2=3000;
}
};
#endif