Esempio n. 1
0
/*///////////////////////////////////////////////////////////////*/
void        stats_print_table_n     (KConfig_n KN)
/*
** Print all fields in the KStats_n structure, as a table
*/
{
    const char* thisfunction = "stats_print_table_n";
    IF_DEBUG(DEBUG_TRACE1) fprintf(stderr, "%s\n", thisfunction);
    /* stats_print_table_heading_n(KN); */
    fprintf(stdout, "%s %d\t%lg\t%lg\t%lg\t\
%lg\t%s\t%lg\t%lg\t\
%lg\t%s\t%lg\t%lg\t\
%lg\t%lg\t%lg\t\
%lg\t%lg\t%lg\t\
%lg\t%lg\t%lg\t%lg\t%lg\t%lg\n",
           (KN->generation > GENERATION_CUTOFF) ? "*" : " ",
           KN->generation,
           KN->S,
           KN->A,
           KN->O,  
           /* */
           KN->U[0],
           get_fitness_function_name(KN->fitness_function[0]),
           KN->fit_s[0],
           KN->fit_h[0],
           /* */
           KN->U[1],
           get_fitness_function_name(KN->fitness_function[1]),
           KN->fit_s[1],
           KN->fit_h[1],
           /* */
           KStats_n.mean_hetloci[0],
           KStats_n.var_hetloci[0],
           KStats_n.mean_homloci[0],
           KStats_n.var_homloci[0],
           KStats_n.mean_totmuts[0],
           KStats_n.var_totmuts[0],
           KStats_n.var_to_mean_totmuts_ratio[0],
           /* */
           KStats_n.mean_hetloci[1],
           KStats_n.var_hetloci[1],
           KStats_n.mean_homloci[1],
           KStats_n.var_homloci[1],
           KStats_n.mean_totmuts[1],
           KStats_n.var_totmuts[1],
           KStats_n.var_to_mean_totmuts_ratio[1],
           /* */
           KStats_n.mean_fitness_self_progeny,
           KStats_n.mean_fitness_apomixis_progeny,
           KStats_n.mean_fitness_outcross_progeny,
           KStats_n.population_mean_fitness,
           KStats_n.inbreeding_depression,
           KStats_n.secondary_selfing_rate
           );
}
Esempio n. 2
0
void        stats_print_table       (KConfig K)

// Print all fields in the KStats structure, as a table

{
    /* stats_print_table_heading(K); */
    cout << (K->generation > GENERATION_CUTOFF) ? "x" : "+";
    cout << sep << K->generation;
    cout << sep << K->U;
    cout << sep << K->S[0];
    cout << sep << K->A[0];
    cout << sep << K->O[0];
    cout << sep << get_fitness_function_name(K->fitness_function);
    cout << sep << K->fit_s;
    cout << sep << K->fit_h;
    cout << sep << KStats.mean_hetloci;
    cout << sep << KStats.var_hetloci;
    cout << sep << KStats.mean_homloci;
    cout << sep << KStats.var_homloci;
    cout << sep << KStats.mean_totmuts;
    cout << sep << KStats.var_totmuts;
    cout << sep << KStats.var_to_mean_totmuts_ratio;
    cout << sep << KStats.mean_fitness_self_progeny;
    cout << sep << KStats.mean_fitness_apomixis_progeny;
    cout << sep << KStats.mean_fitness_outcross_progeny;
    cout << sep << KStats.population_mean_fitness;
    cout << sep << KStats.inbreeding_depression;
    cout << sep << KStats.secondary_selfing_rate;
    cout << endl;
}
Esempio n. 3
0
/*///////////////////////////////////////////////////////////////*/
void        stats_print_verbose_n   (KConfig_n KN)
/*
** Print all fields in the KStats_n structure, verbosely
*/
{
    const char* thisfunction = "stats_print_verbose_n";
    KMutClass m;
    IF_DEBUG(DEBUG_TRACE1) fprintf(stderr, "%s\n", thisfunction);
    fprintf(stdout, "stats begin ========================================\n");
    fprintf(stdout, "generations = %d (out of %d max)\n", KN->generation, 
           GENERATION_CUTOFF);
    fprintf(stdout, "S = %lg\n", KN->S);
    fprintf(stdout, "A = %lg\n", KN->A);
    fprintf(stdout, "O = %lg\n", KN->O);
    fprintf(stdout, "option_truncate = %d\n", KN->option_truncate);
    fprintf(stdout, "option_nolethal = %d\n", KN->option_nolethal);
    fprintf(stdout, "mutation classes = %d\n", KN->mutclasses);
    for (m=0; m < KN->mutclasses; m++) {
        fprintf(stdout, "U[%d] = %lg\n", m, KN->U[m]);
        fprintf(stdout, "fitness function[%d] = %s\n", m,
               get_fitness_function_name(KN->fitness_function[m]));
        fprintf(stdout, "fit_s[%d] = %lg\n", m, KN->fit_s[m]);
        fprintf(stdout, "fit_h[%d] = %lg\n", m, KN->fit_h[m]);
    }
    for (m=0; m < KN->mutclasses; m++) {
        fprintf(stdout, "mean_hetloci[%d] = %lg\n", m,
               KStats_n.mean_hetloci[m]);
        fprintf(stdout, "var_hetloci[%d] = %lg\n", m,
               KStats_n.var_hetloci[m]);
        fprintf(stdout, "mean_homloci[%d] = %lg\n", m,
               KStats_n.mean_homloci[m]);
        fprintf(stdout, "var_homloci[%d] = %lg\n", m,
               KStats_n.var_homloci[m]);
        fprintf(stdout, "mean_totmuts[%d] = %lg\n", m,
               KStats_n.mean_totmuts[m]);
        fprintf(stdout, "var_totmuts[%d] = %lg\n", m,
               KStats_n.var_totmuts[m]);
        fprintf(stdout, "var/mean totmuts[%d] = %lg\n", m,
               KStats_n.var_to_mean_totmuts_ratio[m]);
    }
    fprintf(stdout, "mean_fitness_self_progeny = %lg\n", 
           KStats_n.mean_fitness_self_progeny);
    fprintf(stdout, "mean_fitness_apomixis_progeny = %lg\n", 
           KStats_n.mean_fitness_apomixis_progeny);
    fprintf(stdout, "mean_fitness_outcross_progeny = %lg\n", 
           KStats_n.mean_fitness_outcross_progeny);
    fprintf(stdout, "population_mean_fitness = %lg\n", 
           KStats_n.population_mean_fitness);
    fprintf(stdout, "inbreeding_depression = %lg\n", 
           KStats_n.inbreeding_depression);
    fprintf(stdout, "secondary_selfing_rate = %lg\n", 
           KStats_n.secondary_selfing_rate);
    fprintf(stdout, "stats end ========================================\n");
}
Esempio n. 4
0
void        stats_print_verbose     (KConfig K)

// Print all fields in the KStats structure, verbosely

{
    cout << "stats begin ========================================" << endl;
    cout << "generations = " << K->generation << " (out of " << GENERATION_CUTOFF << " max)" << endl;
    cout << "fitness function = " << get_fitness_function_name(K->fitness_function) 
        << "  option_truncate = " << K->option_truncate << "  option_nolethal = " << K->option_nolethal
        << endl;
    cout << "U = " << K->U << "  S[0] = " << K->S[0] << "  A[0] = " << K->A[0] << "  O[0] = " << K->O[0] << endl;
    cout << "fit_s = " << K->fit_s << "  fit_h = " << K->fit_h << endl;
    cout << "hetloci mean = " << KStats.mean_hetloci << "  var = " << KStats.var_hetloci << endl;
    cout << "homloci mean = " << KStats.mean_homloci << "  var = " << KStats.var_homloci << endl;
    cout << "totmuts mean = " << KStats.mean_totmuts << "  var = " << KStats.var_totmuts << "  var / mean totmuts = " << KStats.var_to_mean_totmuts_ratio << endl;
    cout << "mean_fitness self_progeny = " << KStats.mean_fitness_self_progeny << "  apomixis_progeny = " << KStats.mean_fitness_apomixis_progeny << "  outcross_progeny = " << KStats.mean_fitness_outcross_progeny << endl;
    cout << "population_mean_fitness = " << KStats.population_mean_fitness << "  inbreeding_depression = " << KStats.inbreeding_depression << "  secondary_selfing_rate = " << KStats.secondary_selfing_rate << endl;
    cout << "stats end ========================================" << endl;
}