Init version

This commit is contained in:
2024-10-03 18:43:04 +07:00
commit f80052961f
186 changed files with 71676 additions and 0 deletions

View File

@@ -0,0 +1,69 @@
#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);
};