Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 4ac06a66 authored by LUISELLI Juliette's avatar LUISELLI Juliette
Browse files

Changing the data we record in eukaryote mode

parent 514ba9b3
No related branches found
No related tags found
No related merge requests found
...@@ -99,9 +99,10 @@ Stats_7::Stats_7(ExpManager_7* simd_individual, int64_t generation, bool best_or ...@@ -99,9 +99,10 @@ Stats_7::Stats_7(ExpManager_7* simd_individual, int64_t generation, bool best_or
if (is_indiv_) { if (is_indiv_) {
#ifdef __EUKARYOTE #ifdef __EUKARYOTE
statfile_best_ << "Generation" << "," <<"pop_size"<<"," << "fitness" << "," << "metabolic_error" << "," << statfile_best_ << "Generation" << "," <<"pop_size"<<"," << "fitness" << "," << "metabolic_error" << "," <<
"amount_of_dna" << "," << "nb_coding_rnas" << "," << "nb_non_coding_rnas" << "," <<
"nb_functional_genes" << "," << "nb_non_functional_genes" << "," << "nb_mut_total";
#else #else
statfile_best_ << "Generation" << "," <<"pop_size"<<","<<"nb_clones"<<"," << "fitness" << "," << "metabolic_error" << "," << statfile_best_ << "Generation" << "," <<"pop_size"<<","<<"nb_clones"<<"," << "fitness" << "," << "metabolic_error" << "," <<
#endif
"amount_of_dna" << "," << "nb_coding_rnas" << "," << "nb_non_coding_rnas" << "," << "amount_of_dna" << "," << "nb_coding_rnas" << "," << "nb_non_coding_rnas" << "," <<
"nb_functional_genes" << "," << "nb_non_functional_genes" << "," << "nb_mut" "nb_functional_genes" << "," << "nb_non_functional_genes" << "," << "nb_mut"
<< "," << "nb_switch" << "," << "nb_indels" << "," << "nb_rear" << "," << "nb_dupl" << "," << << "," << "nb_switch" << "," << "nb_indels" << "," << "nb_rear" << "," << "nb_dupl" << "," <<
...@@ -113,8 +114,12 @@ Stats_7::Stats_7(ExpManager_7* simd_individual, int64_t generation, bool best_or ...@@ -113,8 +114,12 @@ Stats_7::Stats_7(ExpManager_7* simd_individual, int64_t generation, bool best_or
<< "," << "nb_TF" << "," << "nb_pure_TF" << "," << "nb_TF" << "," << "nb_pure_TF"
#endif #endif
; ;
#endif
if (non_coding) { if (non_coding) {
#ifdef __EUKARYOTE
statfile_best_<<","<<"nb_bp_not_essential_incl_non_func_genes";
#else
statfile_best_<< ","<< "nb_bp_not_incl_cds" << "," << statfile_best_<< ","<< "nb_bp_not_incl_cds" << "," <<
"nb_bp_not_incl_func_cds" << "," << "nb_bp_not_incl_func_cds" << "," <<
"nb_bp_not_incl_non_func_cds" << "," << "nb_bp_not_incl_non_func_cds" << "," <<
...@@ -123,15 +128,18 @@ Stats_7::Stats_7(ExpManager_7* simd_individual, int64_t generation, bool best_or ...@@ -123,15 +128,18 @@ Stats_7::Stats_7(ExpManager_7* simd_individual, int64_t generation, bool best_or
"nb_bp_not_incl_non_coding_rna" << "," << "nb_bp_not_incl_non_coding_rna" << "," <<
"nb_bp_not_essential" << "," << "nb_bp_not_essential" << "," <<
"nb_bp_not_essential_incl_non_func_genes"; "nb_bp_not_essential_incl_non_func_genes";
#endif
} }
statfile_best_<< std::endl; statfile_best_<< std::endl;
statfile_best_.flush(); statfile_best_.flush();
} else { } else {
#ifdef __EUKARYOTE #ifdef __EUKARYOTE
statfile_mean_ << "Generation" << "," <<"pop_size"<<","<< "fitness" << "," << "metabolic_error" << "," << statfile_mean_ << "Generation" << "," <<"pop_size"<<","<< "fitness" << "," << "metabolic_error" << "," <<
"amount_of_dna" << "," << "nb_coding_rnas" << "," << "nb_non_coding_rnas" << "," <<
"nb_functional_genes" << "," << "nb_non_functional_genes" << "," << "nb_mut" << ","
<< "nb_bp_not_essential_incl_non_func_genes"
#else #else
statfile_mean_ << "Generation" << "," <<"pop_size"<<","<<"nb_clones"<< "," << "fitness" << "," << "metabolic_error" << "," << statfile_mean_ << "Generation" << "," <<"pop_size"<<","<<"nb_clones"<< "," << "fitness" << "," << "metabolic_error" << "," <<
#endif
"amount_of_dna" << "," << "nb_coding_rnas" << "," << "nb_non_coding_rnas" << "," << "amount_of_dna" << "," << "nb_coding_rnas" << "," << "nb_non_coding_rnas" << "," <<
"nb_functional_genes" << "," << "nb_non_functional_genes" << "," << "nb_mut" "nb_functional_genes" << "," << "nb_non_functional_genes" << "," << "nb_mut"
<< "," << "nb_switch" << "," << "nb_indels" << "," << "nb_rear" << "," << "nb_dupl" << "," << << "," << "nb_switch" << "," << "nb_indels" << "," << "nb_rear" << "," << "nb_dupl" << "," <<
...@@ -142,6 +150,7 @@ Stats_7::Stats_7(ExpManager_7* simd_individual, int64_t generation, bool best_or ...@@ -142,6 +150,7 @@ Stats_7::Stats_7(ExpManager_7* simd_individual, int64_t generation, bool best_or
<< "," << "avg_influence" << "," << "avg_pos_influence" << "," << "avg_neg_influence" << "," << "avg_influence" << "," << "avg_pos_influence" << "," << "avg_neg_influence"
<< "," << "nb_TF" << "," << "nb_pure_TF" << "," << "nb_TF" << "," << "nb_pure_TF"
#endif #endif
#endif
<< std::endl; << std::endl;
statfile_mean_.flush(); statfile_mean_.flush();
} }
...@@ -266,6 +275,10 @@ void Stats_7::compute(Individual_7* indiv, bool non_coding) { ...@@ -266,6 +275,10 @@ void Stats_7::compute(Individual_7* indiv, bool non_coding) {
nb_mut_ = indiv->annotated_chromosome_[A]->dna_->nb_mut_; nb_mut_ = indiv->annotated_chromosome_[A]->dna_->nb_mut_;
#ifndef __EUKARYOTE
double parent_length = indiv->annotated_chromosome_[A]->dna_->parent_length();
nb_rear_ = indiv->annotated_chromosome_[A]->dna_->nb_rear_; nb_rear_ = indiv->annotated_chromosome_[A]->dna_->nb_rear_;
nb_switch_ = indiv->annotated_chromosome_[A]->dna_->nb_swi_; nb_switch_ = indiv->annotated_chromosome_[A]->dna_->nb_swi_;
nb_indels_ = indiv->annotated_chromosome_[A]->dna_->nb_indels_; nb_indels_ = indiv->annotated_chromosome_[A]->dna_->nb_indels_;
...@@ -273,10 +286,12 @@ void Stats_7::compute(Individual_7* indiv, bool non_coding) { ...@@ -273,10 +286,12 @@ void Stats_7::compute(Individual_7* indiv, bool non_coding) {
nb_del_ = indiv->annotated_chromosome_[A]->dna_->nb_large_del_; nb_del_ = indiv->annotated_chromosome_[A]->dna_->nb_large_del_;
nb_trans_ = indiv->annotated_chromosome_[A]->dna_->nb_large_trans_; nb_trans_ = indiv->annotated_chromosome_[A]->dna_->nb_large_trans_;
nb_inv_ = indiv->annotated_chromosome_[A]->dna_->nb_large_inv_; nb_inv_ = indiv->annotated_chromosome_[A]->dna_->nb_large_inv_;
dupl_rate_ = nb_dupl_ / parent_length;
del_rate_ = nb_del_ / parent_length;
trans_rate_ = nb_trans_ / parent_length;
inv_rate_ = nb_inv_ / parent_length;
double parent_length = indiv->annotated_chromosome_[A]->dna_->parent_length(); #else
#ifdef __EUKARYOTE
amount_of_dna_ += indiv->annotated_chromosome_[B]->dna_->length(); amount_of_dna_ += indiv->annotated_chromosome_[B]->dna_->length();
nb_coding_rnas_ += indiv->annotated_chromosome_[B]->nb_coding_RNAs; nb_coding_rnas_ += indiv->annotated_chromosome_[B]->nb_coding_RNAs;
...@@ -286,21 +301,8 @@ void Stats_7::compute(Individual_7* indiv, bool non_coding) { ...@@ -286,21 +301,8 @@ void Stats_7::compute(Individual_7* indiv, bool non_coding) {
nb_non_functional_genes_ += indiv->annotated_chromosome_[B]->nb_non_func_genes; nb_non_functional_genes_ += indiv->annotated_chromosome_[B]->nb_non_func_genes;
nb_mut_ += indiv->annotated_chromosome_[B]->dna_->nb_mut_; nb_mut_ += indiv->annotated_chromosome_[B]->dna_->nb_mut_;
nb_rear_ += indiv->annotated_chromosome_[B]->dna_->nb_rear_;
nb_switch_ += indiv->annotated_chromosome_[B]->dna_->nb_swi_;
nb_indels_ += indiv->annotated_chromosome_[B]->dna_->nb_indels_;
nb_dupl_ += indiv->annotated_chromosome_[B]->dna_->nb_large_dupl_;
nb_del_ += indiv->annotated_chromosome_[B]->dna_->nb_large_del_;
nb_trans_ += indiv->annotated_chromosome_[B]->dna_->nb_large_trans_;
nb_inv_ += indiv->annotated_chromosome_[B]->dna_->nb_large_inv_;
parent_length += indiv->annotated_chromosome_[B]->dna_->parent_length();
#endif #endif
dupl_rate_ = nb_dupl_ / parent_length;
del_rate_ = nb_del_ / parent_length;
trans_rate_ = nb_trans_ / parent_length;
inv_rate_ = nb_inv_ / parent_length;
#ifdef __REGUL #ifdef __REGUL
int32_t nb_activators = 0; int32_t nb_activators = 0;
...@@ -379,6 +381,8 @@ void Stats_7::compute_average(bool non_coding) { ...@@ -379,6 +381,8 @@ void Stats_7::compute_average(bool non_coding) {
for (int indiv_id = 0; indiv_id < pop_size_; indiv_id++) { for (int indiv_id = 0; indiv_id < pop_size_; indiv_id++) {
// simd_individual_->previous_individuals[indiv_id]->compute_phenotype();
if (non_coding) simd_individual_->previous_individuals[indiv_id]->compute_non_coding(); if (non_coding) simd_individual_->previous_individuals[indiv_id]->compute_non_coding();
fitness_ += simd_individual_->previous_individuals[indiv_id]->fitness_; fitness_ += simd_individual_->previous_individuals[indiv_id]->fitness_;
...@@ -393,6 +397,21 @@ void Stats_7::compute_average(bool non_coding) { ...@@ -393,6 +397,21 @@ void Stats_7::compute_average(bool non_coding) {
nb_non_functional_genes_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->nb_non_func_genes; nb_non_functional_genes_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->nb_non_func_genes;
nb_mut_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->nb_mut_; nb_mut_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->nb_mut_;
#ifdef __EUKARYOTE
nb_bases_non_essential_including_nf_genes_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->nb_bases_non_essential_including_nf_genes_;
amount_of_dna_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[B]->dna_->length();
nb_coding_rnas_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[B]->nb_coding_RNAs;
nb_non_coding_rnas_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[B]->nb_non_coding_RNAs;
nb_functional_genes_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[B]->nb_func_genes;
nb_non_functional_genes_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[B]->nb_non_func_genes;
nb_mut_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[B]->dna_->nb_mut_;
nb_bases_non_essential_including_nf_genes_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[B]->nb_bases_non_essential_including_nf_genes_;
#else
nb_rear_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->nb_rear_; nb_rear_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->nb_rear_;
nb_switch_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->nb_swi_; nb_switch_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->nb_swi_;
nb_indels_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->nb_indels_; nb_indels_ += simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->nb_indels_;
...@@ -406,7 +425,7 @@ void Stats_7::compute_average(bool non_coding) { ...@@ -406,7 +425,7 @@ void Stats_7::compute_average(bool non_coding) {
trans_rate_ += trans_rate_ +=
nb_trans_ / simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->parent_length(); nb_trans_ / simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->parent_length();
inv_rate_ += nb_inv_ / simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->parent_length(); inv_rate_ += nb_inv_ / simd_individual_->previous_individuals[indiv_id]->annotated_chromosome_[A]->dna_->parent_length();
#endif
} }
fitness_ /= pop_size_; fitness_ /= pop_size_;
...@@ -419,6 +438,8 @@ void Stats_7::compute_average(bool non_coding) { ...@@ -419,6 +438,8 @@ void Stats_7::compute_average(bool non_coding) {
nb_functional_genes_ /= pop_size_; nb_functional_genes_ /= pop_size_;
nb_non_functional_genes_ /= pop_size_; nb_non_functional_genes_ /= pop_size_;
nb_bases_non_essential_including_nf_genes_ /= pop_size_;
#ifndef __EUKARYOTE
nb_mut_ /= pop_size_; nb_mut_ /= pop_size_;
nb_rear_ /= pop_size_; nb_rear_ /= pop_size_;
nb_switch_ /= pop_size_; nb_switch_ /= pop_size_;
...@@ -432,8 +453,10 @@ void Stats_7::compute_average(bool non_coding) { ...@@ -432,8 +453,10 @@ void Stats_7::compute_average(bool non_coding) {
del_rate_ /= pop_size_; del_rate_ /= pop_size_;
trans_rate_ /= pop_size_; trans_rate_ /= pop_size_;
inv_rate_ /= pop_size_; inv_rate_ /= pop_size_;
#endif
is_computed_ = true; is_computed_ = true;
is_indiv_ = false;
} }
void Stats_7::write_best(bool non_coding) { void Stats_7::write_best(bool non_coding) {
...@@ -462,6 +485,7 @@ void Stats_7::write(Individual_7* indiv,bool non_coding) { ...@@ -462,6 +485,7 @@ void Stats_7::write(Individual_7* indiv,bool non_coding) {
statfile_best_<<","<<nb_functional_genes_; statfile_best_<<","<<nb_functional_genes_;
statfile_best_<<","<<nb_non_functional_genes_; statfile_best_<<","<<nb_non_functional_genes_;
statfile_best_<<","<<nb_mut_; statfile_best_<<","<<nb_mut_;
#ifndef __EUKARYOTE
statfile_best_<<","<<nb_switch_; statfile_best_<<","<<nb_switch_;
statfile_best_<<","<<nb_indels_; statfile_best_<<","<<nb_indels_;
statfile_best_<<","<<nb_rear_; statfile_best_<<","<<nb_rear_;
...@@ -473,6 +497,7 @@ void Stats_7::write(Individual_7* indiv,bool non_coding) { ...@@ -473,6 +497,7 @@ void Stats_7::write(Individual_7* indiv,bool non_coding) {
statfile_best_<<","<<del_rate_; statfile_best_<<","<<del_rate_;
statfile_best_<<","<<trans_rate_; statfile_best_<<","<<trans_rate_;
statfile_best_<<","<<inv_rate_; statfile_best_<<","<<inv_rate_;
#endif
#ifdef __REGUL #ifdef __REGUL
statfile_best_<< "," << nb_influences_; statfile_best_<< "," << nb_influences_;
statfile_best_<< "," << nb_enhancing_influences_; statfile_best_<< "," << nb_enhancing_influences_;
...@@ -484,6 +509,11 @@ void Stats_7::write(Individual_7* indiv,bool non_coding) { ...@@ -484,6 +509,11 @@ void Stats_7::write(Individual_7* indiv,bool non_coding) {
statfile_best_<< "," << nb_pure_TF_; statfile_best_<< "," << nb_pure_TF_;
#endif #endif
if (non_coding) { if (non_coding) {
#ifdef __EUKARYOTE
statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_non_essential_including_nf_genes_ +
indiv->annotated_chromosome_[B]->nb_bases_non_essential_including_nf_genes_;
#else
statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_in_0_CDS_; statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_in_0_CDS_;
statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_in_0_functional_CDS_; statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_in_0_functional_CDS_;
statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_in_0_non_functional_CDS_; statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_in_0_non_functional_CDS_;
...@@ -492,6 +522,7 @@ void Stats_7::write(Individual_7* indiv,bool non_coding) { ...@@ -492,6 +522,7 @@ void Stats_7::write(Individual_7* indiv,bool non_coding) {
statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_in_0_non_coding_RNA_; statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_in_0_non_coding_RNA_;
statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_non_essential_; statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_non_essential_;
statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_non_essential_including_nf_genes_; statfile_best_<< "," << indiv->annotated_chromosome_[A]->nb_bases_non_essential_including_nf_genes_;
#endif
} }
statfile_best_<<std::endl; statfile_best_<<std::endl;
statfile_best_.flush(); statfile_best_.flush();
...@@ -506,15 +537,19 @@ void Stats_7::write_average() { ...@@ -506,15 +537,19 @@ void Stats_7::write_average() {
// Write average stats // Write average stats
#ifdef __EUKARYOTE #ifdef __EUKARYOTE
statfile_mean_<<generation_<<","<<pop_size_<<","<<fitness_<<","<<metabolic_error_<<","<< statfile_mean_<<generation_<<","<<pop_size_<<","<<fitness_<<","<<metabolic_error_<<","<<
amount_of_dna_ << "," << nb_coding_rnas_ << "," << nb_non_coding_rnas_ << "," <<
nb_functional_genes_ << "," << nb_non_functional_genes_ << ","
<< nb_mut_ << "," <<
nb_bases_non_essential_including_nf_genes_ << std::endl;
#else #else
statfile_mean_<<generation_<<","<<pop_size_<<","<<nb_clones_<<","<<fitness_<<","<<metabolic_error_<<","<< statfile_mean_<<generation_<<","<<pop_size_<<","<<nb_clones_<<","<<fitness_<<","<<metabolic_error_<<","<<
#endif
amount_of_dna_<<","<<nb_coding_rnas_<<","<<nb_non_coding_rnas_<<","<< amount_of_dna_<<","<<nb_coding_rnas_<<","<<nb_non_coding_rnas_<<","<<
nb_functional_genes_<<","<<nb_non_functional_genes_<<","<<nb_mut_ nb_functional_genes_<<","<<nb_non_functional_genes_<<","<<nb_mut_
<<","<<nb_switch_<<","<<nb_indels_<<","<<nb_rear_<<","<<nb_dupl_<<","<< <<","<<nb_switch_<<","<<nb_indels_<<","<<nb_rear_<<","<<nb_dupl_<<","<<
nb_del_<<","<<nb_trans_<<","<<nb_inv_<<","<<dupl_rate_<<","<<del_rate_ nb_del_<<","<<nb_trans_<<","<<nb_inv_<<","<<dupl_rate_<<","<<del_rate_
<<","<<trans_rate_<<","<<inv_rate_ <<","<<trans_rate_<<","<<inv_rate_
<<std::endl; <<std::endl;
#endif
statfile_mean_.flush(); statfile_mean_.flush();
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment