70 lines
2.1 KiB
C++
70 lines
2.1 KiB
C++
#pragma once
|
|
#include <string>
|
|
#include <QVector>
|
|
#include "DEC-0.0/population/Population.h"
|
|
|
|
class Settings {
|
|
public:
|
|
static bool WRITE_FULL_STATISTICS_TO_FILE;
|
|
|
|
static int Iterations;
|
|
static long int InitPopSize;
|
|
static float InitRatioBetweenPops;
|
|
|
|
// Common breeding strategies parameters
|
|
static double BirthRate;
|
|
static double NaturalDeathRate;
|
|
|
|
// Verhulst breeding strategy default parameters
|
|
static long int KMaxParameter; // r*X*(1 - X/KMax)
|
|
|
|
// Inbreeding/Outbreeding model parameters
|
|
static int OffspringsMean;
|
|
static float CoadaptiveThreshold;
|
|
static float CoadaptiveMinimumP;
|
|
static float CoadaptiveMaximumTrait;
|
|
static float DiseaseThreshold;
|
|
static std::string CoadaptiveGenesInteraction;
|
|
static std::string DiseaseGenesInteraction;
|
|
|
|
static std::string BreedingStrategy;
|
|
static std::string GenToPhenStrategy;
|
|
static std::string PhenToFitStrategy;
|
|
static std::string RecombinationStrategy;
|
|
|
|
static double ProbMtDNARecomb;
|
|
static int PopulationHomoInitSize;
|
|
static int PopulationAncientInitSize;
|
|
static double migrationPartHomoToAncient;
|
|
static double migrationPartAncientToHomo;
|
|
static int generationsPerMigration;
|
|
static int locusLength;
|
|
static double percentDiffLoci;
|
|
static int numLoci;
|
|
|
|
static QVector<double> generations;
|
|
static QVector<double> ancientCommonSize;
|
|
static QVector<double> homoCommonSize;
|
|
static QVector<double> ancientMaleSize;
|
|
static QVector<double> ancientFemaleSize;
|
|
static QVector<double> homoMaleSize;
|
|
static QVector<double> homoFemaleSize;
|
|
static int globalGenerations;
|
|
static int maxYval;
|
|
static int minYval;
|
|
|
|
static std::vector<std::string> initMtDNA;
|
|
static std::vector<std::string> initMtDNA_ancient;
|
|
static std::vector<std::string> calcScript;
|
|
|
|
static QVector<QVector<double> > malesGene;
|
|
static QVector<QVector<double> > femalesGene;
|
|
static QVector<std::string> geneName;
|
|
|
|
|
|
public:
|
|
static void initScript(std::string fileName);
|
|
static void initGUIvect();
|
|
static void fillVectors(BisexualPopulation* pop_Sapiens, BisexualPopulation* pop_Ancient);
|
|
};
|