]> git.donarmstrong.com Git - mothur.git/blobdiff - distancecommand.cpp
added sequence name to error string in fastq.info. Changed np_shannon to npshannon.
[mothur.git] / distancecommand.cpp
index f7dff2e3cb3fb5e81cc8d17af0bcd8d303a5ab6a..65edcf75366d4096b1256266b05296146c30167b 100644 (file)
@@ -179,11 +179,11 @@ DistanceCommand::DistanceCommand(string option) {
                        convert(temp, countends); 
                        
                        temp = validParameter.validFile(parameters, "cutoff", false);           if(temp == "not found"){        temp = "1.0"; }
-                       convert(temp, cutoff); 
+                       m->mothurConvert(temp, cutoff); 
                        
                        temp = validParameter.validFile(parameters, "processors", false);       if (temp == "not found"){       temp = m->getProcessors();      }
                        m->setProcessors(temp);
-                       convert(temp, processors);
+                       m->mothurConvert(temp, processors);
                        
                        temp = validParameter.validFile(parameters, "compress", false);         if(temp == "not found"){  temp = "F"; }
                        convert(temp, compress);
@@ -289,11 +289,11 @@ int DistanceCommand::execute(){
                                
                                driverMPI(start, end, outMPI, cutoff); 
                                
-                               if (m->control_pressed) { outputTypes.clear(); MPI_File_close(&outMPI); delete distCalculator;  return 0; }
+                               if (m->control_pressed) { outputTypes.clear(); MPI_File_close(&outMPI);   return 0; }
                        
                                //wait on chidren
                                for(int i = 1; i < processors; i++) { 
-                                       if (m->control_pressed) { outputTypes.clear();  MPI_File_close(&outMPI);  delete distCalculator;  return 0; }
+                                       if (m->control_pressed) { outputTypes.clear();  MPI_File_close(&outMPI);    return 0; }
                                        
                                        char buf[5];
                                        MPI_Recv(buf, 5, MPI_CHAR, i, tag, MPI_COMM_WORLD, &status); 
@@ -302,7 +302,7 @@ int DistanceCommand::execute(){
                                //do your part
                                driverMPI(start, end, outMPI, cutoff); 
                                
-                               if (m->control_pressed) { outputTypes.clear();  MPI_File_close(&outMPI);  delete distCalculator;  return 0; }
+                               if (m->control_pressed) { outputTypes.clear();  MPI_File_close(&outMPI);   return 0; }
                        
                                char buf[5];
                                strcpy(buf, "done"); 
@@ -317,12 +317,12 @@ int DistanceCommand::execute(){
                        
                                //do your part
                                string outputMyPart;
-                               unsigned long int mySize;
+                               unsigned long long mySize;
                                
                                if (output != "square"){ driverMPI(start, end, outputFile, mySize); }
                                else { driverMPI(start, end, outputFile, mySize, output); }
        
-                               if (m->control_pressed) {  outputTypes.clear();  delete distCalculator;  return 0; }
+                               if (m->control_pressed) {  outputTypes.clear();   return 0; }
                                
                                int amode=MPI_MODE_APPEND|MPI_MODE_WRONLY|MPI_MODE_CREATE; //
                                MPI_File outMPI;
@@ -339,9 +339,9 @@ int DistanceCommand::execute(){
 
                                //wait on chidren
                                for(int b = 1; b < processors; b++) { 
-                                       unsigned long int fileSize;
+                                       unsigned long long fileSize;
                                        
-                                       if (m->control_pressed) { outputTypes.clear();  MPI_File_close(&outMPI);  delete distCalculator;  return 0; }
+                                       if (m->control_pressed) { outputTypes.clear();  MPI_File_close(&outMPI);   return 0; }
                                        
                                        MPI_Recv(&fileSize, 1, MPI_LONG, b, tag, MPI_COMM_WORLD, &status); 
                                        
@@ -367,11 +367,11 @@ int DistanceCommand::execute(){
                                MPI_File_close(&outMPI);
                        }else { //you are a child process
                                //do your part
-                               unsigned long int size;
+                               unsigned long long size;
                                if (output != "square"){ driverMPI(start, end, (outputFile + toString(pid) + ".temp"), size); }
                                else { driverMPI(start, end, (outputFile + toString(pid) + ".temp"), size, output); }
                                
-                               if (m->control_pressed) { delete distCalculator;  return 0; }
+                               if (m->control_pressed) {  return 0; }
                        
                                //tell parent you are done.
                                MPI_Send(&size, 1, MPI_LONG, 0, tag, MPI_COMM_WORLD);
@@ -387,7 +387,7 @@ int DistanceCommand::execute(){
                        else { driver(0, numSeqs, outputFile, "square");  }
                }else{ //you have multiple processors
                        
-                       unsigned long int numDists = 0;
+                       unsigned long long numDists = 0;
                        
                        if (output == "square") {
                                 numDists = numSeqs * numSeqs;
@@ -817,7 +817,7 @@ int DistanceCommand::driverMPI(int startLine, int endLine, MPI_File& outMPI, flo
 }
 /**************************************************************************************************/
 /////// need to fix to work with calcs and sequencedb
-int DistanceCommand::driverMPI(int startLine, int endLine, string file, unsigned long int& size){
+int DistanceCommand::driverMPI(int startLine, int endLine, string file, unsigned long long& size){
        try {
                ValidCalculators validCalculator;
                Dist* distCalculator;
@@ -913,7 +913,7 @@ int DistanceCommand::driverMPI(int startLine, int endLine, string file, unsigned
 }
 /**************************************************************************************************/
 /////// need to fix to work with calcs and sequencedb
-int DistanceCommand::driverMPI(int startLine, int endLine, string file, unsigned long int& size, string square){
+int DistanceCommand::driverMPI(int startLine, int endLine, string file, unsigned long long& size, string square){
        try {
                ValidCalculators validCalculator;
                Dist* distCalculator;