Cosmetic changes to comments, format, and spacing.
authorDariusz Murakowski <murakdar@mit.edu>
Tue, 23 Jun 2015 03:32:12 +0000 (23:32 -0400)
committerDariusz Murakowski <murakdar@mit.edu>
Tue, 23 Jun 2015 03:32:12 +0000 (23:32 -0400)
Conflicts:
wf.cpp

1  2 
hamiltonian.cpp
population.cpp
population.h
wf.cpp

diff --cc hamiltonian.cpp
Simple merge
diff --cc population.cpp
Simple merge
diff --cc population.h
Simple merge
diff --cc wf.cpp
--- 1/wf.cpp
--- 2/wf.cpp
+++ b/wf.cpp
@@@ -57,154 -57,119 +57,156 @@@ void run(RunParameters &r, unsigned see
      fflush(stdout);
      
  
 -    // Run (with targeted epitope)
 -    
 -    if (r.useEpitope) {
 -    
 -        for (unsigned int n=0; n<r.num_runs; n++) {
 -        
 -            EpitopeHamiltonian H(r.couplingsInfile);
 -
 -            double penalty = 0.0;
 -            if (r.penaltyType == RunParameters::PenaltyEACH)
 -                penalty = r.penalty;
 -            else if (r.penaltyType == RunParameters::PenaltyTOTAL)
 -                penalty = r.penalty / (double)r.numEpitopes;
 -            for (unsigned ep=0; ep<r.numEpitopes; ++ep) {
 -                H.set_epitope(r.eWT[ep], r.eMut[ep], penalty);
 -            }
 +    if(r.useTwoSite) {
  
 -            H.set_temp(r.bh, r.bJ);
 +            fprintf(popout,"gen\tV00\tV10\tV01\tV11\n");
  
-             for (unsigned int n=0;n<r.num_runs;n++) {
 -            Population P(H, r.n, r.mu, r.initPop, r.initFrac);
++            for (unsigned int n=0; n<r.num_runs; n++) {
 +
 +                //fprintf(popout,"gen\tV00\tV10\tV01\tV11\n");
 +            
 +                TwoSiteHamiltonian H(r.h1,r.h2,r.J12);
 +                H.set_temp(r.bh, r.bJ);
 +                Population P(H, r.n, r.mu, r.initPop, r.initFrac);
 +                
 +                P.write_two_site_population(popout,H,0);
 +
 +                unsigned int i;
 +                for (i=0; i<r.g; ++i) {
 +                
 +                    //printf("%d\t%d\n",n,i);
 +                    P.next_generation(H, rnd, r.useRelative, r.useVerbose);
 +
 +                    if ((i+1) % r.write_mod == 0) {
 +                        P.write_two_site_population(popout,H,i+1);
 +                    }
 +
 +                    //if (r.runUntilEscape && P.escaped(H)) break;
  
 -            // print epitopes
 -            /*
 -            std::cout << "-----------\n";
 -            for (unsigned ep=0; ep<H.penalty.size(); ++ep) {
 -                for (unsigned i=0; i<H.epitopeWT[ep].size(); ++i) {
 -                    std::cout << H.epitopeWT[ep][i] << " ";
 -                }
 -                std::cout << "| ";
 -                for (unsigned i=0; i<H.epitopeMut[ep].size(); ++i) {
 -                    std::cout << H.epitopeMut[ep][i] << " ";
                  }
 -                std::cout << "\n";
 +                
              }
 -            fflush(stdout);
 -            */
 -            
 -            unsigned int i;
 -            for (i=0; i<r.g; ++i) {
 +
 +    }
 +
 +
 +    else {
 +        
 +        // Run (w/ targeted epitope)
 +        
 +        if (r.useEpitope) {
          
 -                P.next_generation(H, rnd, r.useRelative, r.useVerbose);
 +            for (unsigned int n=0; n<r.num_runs; n++) {
 +            
 +                EpitopeHamiltonian H(r.couplingsInfile);
 +
 +                double penalty = 0.0;
 +                if (r.penaltyType == RunParameters::PenaltyEACH)
 +                    penalty = r.penalty;
 +                else if (r.penaltyType == RunParameters::PenaltyTOTAL)
 +                    penalty = r.penalty / (double)r.numEpitopes;
 +                for (unsigned ep=0; ep<r.numEpitopes; ++ep) {
 +                    H.set_epitope(r.eWT[ep], r.eMut[ep], penalty);
 +                }
  
 -                if ((i+1) % r.write_mod == 0) {
 -                    P.write_population(popout,i+1);
 +                H.set_temp(r.bh, r.bJ);
 +
 +                Population P(H, r.n, r.mu, r.initPop, r.initFrac);
 +
 +                // print epitopes
 +                /*
 +                std::cout << "-----------\n";
 +                for (unsigned ep=0; ep<H.penalty.size(); ++ep) {
 +                    for (unsigned i=0; i<H.epitopeWT[ep].size(); ++i) {
 +                        std::cout << H.epitopeWT[ep][i] << " ";
 +                    }
 +                    std::cout << "| ";
 +                    for (unsigned i=0; i<H.epitopeMut[ep].size(); ++i) {
 +                        std::cout << H.epitopeMut[ep][i] << " ";
 +                    }
 +                    std::cout << "\n";
                  }
 +                fflush(stdout);
 +                */
 +                
 +                unsigned int i;
 +                for (i=0; i<r.g; ++i) {
              
 -                if (r.runUntilEscape && P.escaped(H)) break;
 +                    P.next_generation(H, rnd, r.useRelative, r.useVerbose);
  
 -                if (r.runUntilEscape_all && P.escaped_all(H)) break;
 -            
 -            }
 -            
 -            std::set<unsigned int> esc_var;
 -            unsigned int esc_num = 0;
 -            if (!r.runUntilEscape && !r.runUntilEscape_all) esc_num = P.escape_variant(H, esc_var);  // default behavior for backwards compatibility
 -            if (r.runUntilEscape_all) esc_num = P.escape_variant_all(H, esc_var);
 -            if (r.runUntilEscape) esc_num = P.escape_variant(H, esc_var);
 -            // should behave better if both are true
 -            // but more likely to escape one than all, so that one is output
 -            
 -            fprintf(supout,"%d\t%d",i,esc_num);
 +                    if ((i+1) % r.write_mod == 0) {
 +                        P.write_population(popout,i+1);
 +                    }
 +                
 +                    if (r.runUntilEscape && P.escaped(H)) break;
  
 -            //for (std::set<unsigned int>::iterator iter=esc_var.begin(); iter!=esc_var.end(); ++iter) fprintf(supout,"\t%d",*iter);
 +                    if (r.runUntilEscape_all && P.escaped_all(H)) break;
 +                
 +                }
 +                
 +                std::set<unsigned int> esc_var;
 +                unsigned int esc_num = 0;
 +                if (!r.runUntilEscape && !r.runUntilEscape_all) esc_num = P.escape_variant(H, esc_var);  // default behavior for backwards compatibility
 +                if (r.runUntilEscape_all) esc_num = P.escape_variant_all(H, esc_var);
 +                if (r.runUntilEscape) esc_num = P.escape_variant(H, esc_var);
 +                // should behave better if both are true
 +                // but more likely to escape one than all, so that one is output
 +                
 +                fprintf(supout,"%d\t%d",i,esc_num);
  
 -            // print sequence as CSV (comma-separated)
 -            fprintf(supout,"\t");
 -            std::set<unsigned int>::iterator ms_iter=esc_var.begin();
 -            if (ms_iter != esc_var.end()) {
 -                fprintf(supout,"%d",*ms_iter);
 -                ++ms_iter;
 -            }
 -            for (; ms_iter!=esc_var.end(); ++ms_iter)
 -                fprintf(supout,",%d",*ms_iter);
 +                //for (std::set<unsigned int>::iterator iter=esc_var.begin(); iter!=esc_var.end(); ++iter) fprintf(supout,"\t%d",*iter);
  
 -            fprintf(supout,"\n");
 +                // print sequence as CSV (comma-separated)
 +                fprintf(supout,"\t");
 +                std::set<unsigned int>::iterator ms_iter=esc_var.begin();
 +                if (ms_iter != esc_var.end()) {
 +                    fprintf(supout,"%d",*ms_iter);
 +                    ++ms_iter;
 +                }
 +                for (; ms_iter!=esc_var.end(); ++ms_iter)
 +                    fprintf(supout,",%d",*ms_iter);
 +
 +                fprintf(supout,"\n");
 +                
 +                fflush(supout);
 +            
 +            }
              
 -            fflush(supout);
 -        
          }
          
 -    }
 -    
 -    
 -    // Run (w/out targeted epitope)
 -    
 -    else {
 -
 -        for (unsigned int n=0; n<r.num_runs; n++) {
          
 -            Hamiltonian H(r.couplingsInfile);
 -            H.set_temp(r.bh, r.bJ);
 -            Population P(H, r.n, r.mu, r.initPop, r.initFrac);
 -            
 -            unsigned int i;
 -            for (i=0; i<r.g; ++i) {
 +        // Run (w/out targeted epitope)
 +        
 +        else {
 +
-             for (unsigned int n=0;n<r.num_runs;n++) {
++            for (unsigned int n=0; n<r.num_runs; n++) {
              
 -                P.next_generation(H, rnd, r.useRelative, r.useVerbose);
 -                P.write_population(popout,i+1);
 +                Hamiltonian H(r.couplingsInfile);
 +                H.set_temp(r.bh, r.bJ);
 +                Population P(H, r.n, r.mu, r.initPop, r.initFrac);
 +                
 +                unsigned int i;
 +                for (i=0; i<r.g; ++i) {
 +                
 +                    P.next_generation(H, rnd, r.useRelative, r.useVerbose);
 +                    P.write_population(popout,i+1);
  
 -                if (r.runUntilEscape && P.escaped(H)) break;
 +                    if (r.runUntilEscape && P.escaped(H)) break;
  
 +                }
 +                
              }
              
          }
 -        
 -    }
 -
  
 +    }
 +    
      gsl_rng_free(rnd);  //Free up memory from random number generator
  
-     fclose(popout);     // close file handles
-     if(!r.useTwoSite) fclose(supout);
+     // close file handles
+     fclose(popout);
 -    fclose(supout);
++    if(!r.useTwoSite)
++        fclose(supout);
  
  }