(
void)
const{
79 virtual void Init(
void);
80 virtual int Run(
void);
81 virtual void Exit(
void);
96arg_desc->SetUsageContext(
GetArguments().GetProgramBasename(),
97 "Real time Gumbel parameters estimation"\
98 " for Blast search");
100arg_desc->AddOptionalKey(
"scoremat",
"file",
101 "File containing score matrix values",
104arg_desc->AddOptionalKey(
"scorematname",
"name",
"Score matrix name",
108 "blosum45",
"blosum62",
109 "blosum80",
"pam30",
"pam70",
112arg_desc->AddOptionalKey(
"freqs1",
"file",
113 "File containing residue frequencies for" 116arg_desc->AddOptionalKey(
"freqs2",
"file",
117 "File containing residue frequencies for" 120arg_desc->AddDefaultKey(
"gapopen",
"open_penalty",
"Cost of opening a gap",
123arg_desc->AddDefaultKey(
"gapextend",
"extend_penalty",
124 "Cost of extending a gap",
127arg_desc->AddDefaultKey(
"lambda",
"accuracy",
128 "Desired accuracy of computed lambda",
131arg_desc->AddDefaultKey(
"K",
"accuracy",
132 "Desired accuracy of computed K",
135arg_desc->AddDefaultKey(
"gapped",
"gapped",
"Gapped or gapless regime",
138arg_desc->AddDefaultKey(
"maxtime",
"val",
"Maximum allowed time for" 139 " computation of Gumbel parameters [s]",
142arg_desc->AddDefaultKey(
"maxmemory",
"val",
"Maximum allowed memory for" 143 " computation of Gumbel parameters [Mb]",
146arg_desc->AddDefaultKey(
"fromscore",
"num",
"Minimum value of the score" 147 " range for calculation of P-values",
150arg_desc->AddDefaultKey(
"toscore",
"num",
"Maximum value of the score" 151 " range for calculation of P-values",
154arg_desc->AddDefaultKey(
"len1",
"num",
"Length of sequence 1 for score" 155 " P-values calculation",
158arg_desc->AddDefaultKey(
"len2",
"num",
"Length of sequence 2 for score" 159 " P-values calculation",
162arg_desc->AddOptionalKey(
"indiags",
"file",
163 "Text file with input randomization parameters, " 164 "for diagnostics only",
167arg_desc->AddOptionalKey(
"outdiags",
"file",
168 "Save diagnostics randomization parameters",
188fintest >> param_val;
197fintest >> num_params;
200 for(
int i=0;
i< num_params && !fintest.eof();
i++) {
201fintest >> param_val;
202fs_prelim.push_back(param_val);
209fintest >> num_params;
212 for(
int i=0;
i< num_params && !fintest.eof();
i++) {
213fintest >> param_val;
214prelim.push_back(param_val);
221fintest >> num_params;
224 for(
int i=0;
i< num_params && !fintest.eof();
i++) {
225fintest >> param_val;
226killing.push_back(param_val);
233fintest >> param_val;
240fintest >> param_val;
251 constvector<Int4>& fs_prelim
253fouttest << fs_prelim.size() <<
"\t";
254 for(
size_tk=0;k < fs_prelim.size();k++) {
255fouttest << fs_prelim[k] <<
"\t";
259fouttest << prelim.size() <<
"\t";
260 for(
size_tk=0;k < prelim.size();k++) {
261fouttest << prelim[k] <<
"\t";
264 constvector<Int4>& killing
266fouttest << killing.size() <<
"\t";
267 for(
size_tk=0;k < killing.size();k++) {
268fouttest << killing[k] <<
"\t";
281 if(!args[
"scoremat"] && !args[
"scorematname"]) {
282 NcbiCerr<<
"Error: Either score matrix name or file must be specified." 287 if(args[
"scoremat"] && args[
"scorematname"]) {
288 NcbiCerr<<
"Error: Either score matrix name or file must be specified." 293 if(args[
"fromscore"].AsInteger() > args[
"toscore"].AsInteger()) {
294 NcbiCerr<<
"Error: Incorrect values for score range, fromscore must be" 304 if(args[
"scorematname"]) {
306 stringname = args[
"scorematname"].AsString();
307 if(name ==
"blosum45") {
310 else if(name ==
"blosum62") {
313 else if(name ==
"blosum80") {
316 else if(name ==
"pam30") {
319 else if(name ==
"pam70") {
322 else if(name ==
"pam250") {
332opts->SetScoreMatrix(smat);
336 if(args[
"scoremat"]) {
338vector<Int4> score_vals;
339 while(!istr.eof()) {
341args[
"scoremat"].AsInputFile() >> elem;
342 if(elem != INT_MAX) {
343score_vals.push_back(elem);
347opts->SetScoreMatrix(smat);
351 if(args[
"freqs1"]) {
353vector<double> freqs;
354 while(!istr.eof()) {
357freqs.push_back(elem);
362 ITERATE(vector<double>, it, freqs) {
370opts->SetSeq1ResidueProbs(freqs);
374 if(args[
"freqs2"]) {
376vector<double> freqs;
377 while(!istr.eof()) {
380freqs.push_back(elem);
383 ITERATE(vector<double>, it, freqs) {
391opts->SetSeq2ResidueProbs(freqs);
394opts->SetGapOpening(args[
"gapopen"].AsInteger());
395opts->SetGapExtension(args[
"gapextend"].AsInteger());
396opts->SetLambdaAccuracy(args[
"lambda"].AsDouble());
397opts->SetKAccuracy(args[
"K"].AsDouble());
398opts->SetGapped(args[
"gapped"].AsBoolean());
399opts->SetMaxCalcTime(args[
"maxtime"].AsDouble());
400opts->SetMaxCalcMemory(args[
"maxmemory"].AsDouble());
404 if(args[
"indiags"]) {
406 NcbiCerr<<
"Error: Randomization parameters file is incomplete" 413 if(!opts->Validate()) {
414 ITERATE(vector<string>, it, opts->GetMessages()) {
421 if(args[
"indiags"]) {
430 if(args[
"outdiags"]) {
432*gp_calc->GetRandParams());
437 NcbiCout<<
"Parameters estimation\n" 438<<
"Parameter value\terror\n" 439<<
"Lambda\t"<< g_params.
lambda<<
"\t" 464args[
"fromscore"].AsInteger(),
465args[
"toscore"].AsInteger(),
466args[
"len1"].AsInteger(),
467args[
"len2"].AsInteger(),
474pv_calculator.
Run();
478 NcbiCout<<
"P-values estimaton\nscore\tP-value\tP-value error\n";
480 NcbiCout<< args[
"fromscore"].AsInteger() + (
int)k <<
"\t" 503 int main(
intargc,
const char* argv[])
Score matrix that can take any value.
EScoreMatrixName
Names of standard scoring matrices.
Application for computing Gumbel parameters.
virtual void Exit(void)
Cleanup on application exit.
virtual void Init(void)
Initialize the application.
virtual int Run(void)
Run the application.
CGumbelParamsApplication(void)
Keeps track of Gumbel params calculation library version.
virtual string Print(void) const
Print version information.
CGumbelParamsCalcVersion(void)
Wrapper for Gumbel parameter calculation.
static CRef< CGumbelParamsOptions > CreateStandard20AAOptions(CGeneralScoreMatrix::EScoreMatrixName smat=CGeneralScoreMatrix::eBlosum62)
Creates standard options with score matrix and residue frequenceis for 20 aa alphabet.
Options that control random values used in internal parts of Gumbel parameter calculation for gapped ...
Int4 GetTotalReNumber(void) const
Get total realizations number.
vector< Int4 > & SetPrelimReNumbers(void)
Set preliminary realizations numbers.
const vector< Int4 > & GetPrelimReNumbersKilling(void) const
Get perliminary realizations numbers killing array.
const vector< Int4 > & GetFirstStagePrelimReNumbers(void) const
Get first stage preliminary realizations numbers.
vector< Int4 > & SetFirstStagePrelimReNumbers(void)
Set first stage preliminary realizations numbers.
Int4 GetTotalReNumberKilling(void) const
Get total realizations number killing.
void SetTotalReNumber(Int4 num)
Set total realizations number.
void SetRandomSeed(Uint4 val)
Set random seed.
Uint4 GetRandomSeed(void) const
Get random seed.
void SetTotalReNumberKilling(Int4 num)
Set total realizations number killing.
const vector< Int4 > & GetPrelimReNumbers(void) const
Get preliminary realizations numbers.
vector< Int4 > & SetPrelimReNumbersKilling(void)
Set perliminary realizations numbers killing array.
const SGumbelParams & GetGumbelParams(void) const
Get Gubmel parameters.
double GetCalcTime(void) const
Get calculation time.
Wrapper for P-values calculation.
CRef< CScorePValues > Run(void)
Calculate P-values.
CRef< CScorePValues > GetResult(void)
Get results of P-values calculation.
Input parameters for P-values calculation.
const vector< TPValue > & GetPValues(void) const
Get p-values.
const vector< TPValue > & GetErrors(void) const
Get errors for p-values calculation.
const Uint2 kMinorVersion
const Uint2 kMajorVersion
void SetFullVersion(CRef< CVersionAPI > version)
Set version data for the program.
void HideStdArgs(THideStdArgs hide_mask)
Set the hide mask for the Hide Std Flags.
virtual const CArgs & GetArgs(void) const
Get parsed command line arguments.
int AppMain(int argc, const char *const *argv, const char *const *envp=0, EAppDiagStream diag=eDS_Default, const char *conf=NcbiEmptyCStr, const string &name=NcbiEmptyString)
Main function (entry point) for the NCBI application.
virtual void SetupArgDescriptions(CArgDescriptions *arg_desc)
Setup the command line argument descriptions.
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define NON_CONST_ITERATE(Type, Var, Cont)
Non constant version of ITERATE macro.
const CNcbiArguments & GetArguments(void) const
Get the application's cached unprocessed command-line arguments.
@ fHideXmlHelp
Hide XML help description.
@ fHideLogfile
Hide log file description.
@ fHideFullVersion
Hide full version description.
@ fHideDryRun
Hide dryrun description.
@ fHideConffile
Hide configuration file description.
@ eInputFile
Name of file (must exist and be readable)
@ eBoolean
{'true', 't', 'false', 'f'}, case-insensitive
@ eDouble
Convertible into a floating point number (double)
@ eString
An arbitrary string.
@ eOutputFile
Name of file (must be writable)
@ eInteger
Convertible into an integer number (int or Int8)
void SetDiagStream(CNcbiOstream *os, bool quick_flush=true, FDiagCleanup cleanup=0, void *cleanup_data=0, const string &stream_name="")
Set diagnostic stream.
void Reset(void)
Reset reference object.
int32_t Int4
4-byte (32-bit) signed integer
IO_PREFIX::ostream CNcbiOstream
Portable alias for ostream.
IO_PREFIX::istream CNcbiIstream
Portable alias for istream.
virtual string Print(void) const
Print version information.
unsigned int
A callback function used to compare two keys in a database.
int main(int argc, const char *argv[])
static void x_WriteRandParams(CNcbiOstream &fouttest, const CGumbelParamsRandDiagnostics &rand)
static bool x_ReadRandParams(CNcbiIstream &fintest, CGumbelParamsRandDiagnostics ¶ms)
static const int kPatchVersion
const string version
version string
const struct ncbi::grid::netcache::search::fields::SIZE size
Defines the CNcbiApplication and CAppException classes for creating NCBI applications.
Defines command line argument related classes.
Defines unified interface to application:
Defines classes: CDirEntry, CFile, CDir, CSymLink, CMemoryFile, CFileUtil, CFileLock,...
Gumbel parameters and estimation errors.
double gapless_alpha_error
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4