-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathparam_input.h
96 lines (85 loc) · 3.93 KB
/
param_input.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
// This is the source code for BiFit version 0.2
// BiFit simulates secondary contacts between two taxa (or species,
// depending on your favorite species definition).
// The software outputs introgression statistics for autosomal,
// gonosomal and mitochondrial markers. Processes considered include
// spatial structure with isolation by distance, multi-locus local adaptation,
// reduced hybrid survival, recombination, mitochondrial selection,
// sex-specific dispersal, sex-specific hybrid survival,
// spatial invasion and many others.
//
// Copyright (C) 2012-2016 Timothée Bonnet - [email protected]
//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <http://www.gnu.org/licenses/>.
/////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////
#ifndef PARAM_INPUT_H_INCLUDED
#define PARAM_INPUT_H_INCLUDED
#include <vector>
//Cdemography demo;
extern unsigned int DemeSize;//demo.DemeSize;
extern double SexeRatio;//demo.SexeRatio; N'intervient pas pour le moment
extern double DemeSamplingRatio;//proportion de demes echantillonnes pour la coalescence
extern double IndMeanSample;//nombre moyen d'individus echantillonnes par demes echantillonnes
extern unsigned long GenerationNumber;//demo.GenerationNumber;
extern unsigned int DimX;//demo.DimX;
extern unsigned int DimY;//demo.DimY;
extern unsigned int Xlimit;
extern unsigned int HabitatSlideBegin; //
extern unsigned int HabitatSlideEnd; // si ==0, pas de changement d'habitat
extern int HabitatSlideDepth;
extern bool Swamping;
extern std::vector<long double> FitnessNormal;
extern std::vector<long double> FitnessMaladaptation;
extern std::vector<long double> FitnessHybridFemale;
extern std::vector<long double> FitnessHybridMale;
extern long double FitnessMt;
extern int HybridNb;
extern int DispMax;
extern std::vector<double> mFemale;//taux de migration sur une dimension pour les femelles
extern std::vector<double> geomFemale;//raison geometrique pour les femelles
extern std::vector<double> mMale;//taux de migration sur une dimension pour les males
extern std::vector<double> geomMale;//raison geometrique pour les males
extern bool HomogamyAllLoci;
extern double ChoosyFemale;
extern double MuRate;
extern double InterRecombiRate;
extern double IntraRecombiRate;
extern int AutLociNumber;
extern std::vector<double> AcceptRates;
extern long AllopatryLast;//temps entre la divergence et le contact secondaire, en nombre de generations
extern unsigned int RunNumber;
extern double LowHybridBound;
extern double HighHybridBound;
extern bool MigRatesCorrection;
extern bool WriteIdMatrix;
extern bool WriteIdentitiesProba;
extern bool WriteFstHe;
extern bool WriteGenepopFile;
extern bool WriteGenepopIntrog;
extern bool WriteGenepopOrigin;
extern bool WriteGenepopAlsoPreContact;
extern bool WriteIntrogProfile;
extern bool WriteIntrogStats;
extern int WritePeriod;
extern bool EdgeEffects;
extern unsigned long int _ptSamplingSeed;
extern bool pauseGP;
extern bool cinGetOnError;
int cmp_nocase(const std::string& s, const std::string& s2);
void rtrim(std::string *s);
int evaluateBool(bool &boolean, std::string buf);
int seeks_settings_file_name(const std::string cmdlinefilename,std::string& settingsfilename);
int read_settings_file(const std::string filename);
#endif // PARAM_INPUT_H_INCLUDED