Versions in this module Expand all Collapse all v1 v1.2.4 Dec 9, 2020 Changes in this version + func ApplyFullTruncationNoise(p *Population, envNoise float64, uniformRandom *rand.Rand) + func ApplyPartialTruncationNoise(p *Population, envNoise float64, uniformRandom *rand.Rand) + func ApplyProportProbNoise(p *Population, envNoise float64, uniformRandom *rand.Rand) + func ApplyUnrestrictProbNoise(p *Population, envNoise float64, uniformRandom *rand.Rand) + func CalcFitnessNumOffspring(ind *Individual, uniformRandom *rand.Rand) uint32 + func CalcPoissonNumMutations(uniformRandom *rand.Rand) uint32 + func CalcSemiFixedNumMutations(uniformRandom *rand.Rand) uint32 + func CalcSemiFixedNumOffspring(ind *Individual, uniformRandom *rand.Rand) uint32 + func CalcUniformNumOffspring(ind *Individual, uniformRandom *rand.Rand) uint32 + func CapacityPopulationGrowth(prevPop *Population, _ uint32) uint32 + func ExponentialPopulationGrowth(prevPop *Population, _ uint32) uint32 + func FoundersPopulationGrowth(prevPop *Population, genNum uint32) uint32 + func GenerateAllUniqueInitialAlleles(p *Population, uniformRandom *rand.Rand) + func GenerateVariableFreqInitialAlleles(p *Population, uniformRandom *rand.Rand) + func MultIndivFitness(_ *Individual) (fitness float64) + func MultiBottleneckPopulationGrowth(prevPop *Population, genNum uint32) uint32 + func NoPopulationGrowth(prevPop *Population, _ uint32) uint32 + func SetModels(c *config.Config) + func SumIndivFitness(ind *Individual) (fitness float64) + type ApplySelectionNoiseType func(p *Population, envNoise float64, uniformRandom *rand.Rand) + type Bottleneck struct + BottleneckGens uint32 + BottleneckPopSize uint32 + BottleneckStart uint32 + GrowthRate float64 + MaxPop uint32 + type Bottlenecks struct + Bottlenecks []Bottleneck + CurrentIndex uint32 + func ParseMultipleBottlenecks(bottlenecksStr string) *Bottlenecks + func (pb *Bottlenecks) CurrentBottleneck() Bottleneck + func (pb *Bottlenecks) NextBottleneck() Bottleneck + type Buckets struct + Bins []uint32 + DelInitialAlleles []uint32 + Deleterious []uint32 + FavInitialAlleles []uint32 + Favorable []uint32 + Generation uint32 + Neutral []uint32 + type ByFitness []IndivRef + func (a ByFitness) Len() int + func (a ByFitness) Less(i, j int) bool + func (a ByFitness) Swap(i, j int) + type CalcIndivFitnessType func(ind *Individual) float64 + type CalcNumMutationsType func(uniformRandom *rand.Rand) uint32 + type CalcNumOffspringType func(ind *Individual, uniformRandom *rand.Rand) uint32 + type DistributionBuckets struct + BinMidpointFitness []float64 + Dominant []float64 + Generation uint32 + Recessive []float64 + type FractionFrequency struct + func ParseInitialAllelesFrequencies(frequencies string) (freqList []FractionFrequency) + type GenerateInitialAllelesType func(p *Population, uniformRandom *rand.Rand) + type IndivRef struct + Indiv *Individual + type Individual struct + ChromosomesFromDad []dna.Chromosome + ChromosomesFromMom []dna.Chromosome + Dead bool + GenoFitness float64 + NumDelAllele uint32 + NumDeleterious uint32 + NumFavAllele uint32 + NumFavorable uint32 + NumMutations uint32 + NumNeutral uint32 + PhenoFitness float64 + func IndividualFactory(popPart *PopulationPart, _ bool) *Individual + func (child *Individual) AddMutations(lBsPerChromosome uint32, uniformRandom *rand.Rand) + func (dad *Individual) OneOffspring(mom *Individual, newPopPart *PopulationPart, uniformRandom *rand.Rand) *Individual + func (ind *Individual) AddInitialAllelePair(chromoIndex, lbIndexOnChr int, favMutn, delMutn dna.Mutation) + func (ind *Individual) AddInitialContrastingAlleles(numAlleles uint32, uniformRandom *rand.Rand) (uint32, uint32) + func (ind *Individual) CountAlleles(alleles *dna.AlleleCount) + func (ind *Individual) GetInitialAlleleStats() (uint32, uint32) + func (ind *Individual) GetMutationStats() (uint32, uint32, uint32) + func (ind *Individual) GetNumChromosomes() uint32 + func (ind *Individual) Mate(otherInd *Individual, newPopPart *PopulationPart, uniformRandom *rand.Rand) + func (ind *Individual) Reinitialize() *Individual + func (ind *Individual) Report(_ bool) + type InitialAlleleModelType string + const ALLUNIQUE_INITIAL_ALLELES + const VARIABLE_FREQ_INITIAL_ALLELES + type Models struct + ApplySelectionNoise ApplySelectionNoiseType + CalcIndivFitness CalcIndivFitnessType + CalcNumMutations CalcNumMutationsType + CalcNumOffspring CalcNumOffspringType + GenerateInitialAlleles GenerateInitialAllelesType + PopulationGrowth PopulationGrowthType + var Mdl *Models + type MutationRateModelType string + const FIXED_MUTN_RATE + const POISSON_MUTN_RATE + type NormalizedBuckets struct + Bins []uint32 + DelInitialAlleles []float64 + Deleterious []float64 + FavInitialAlleles []float64 + Favorable []float64 + Generation uint32 + Neutral []float64 + type NumOffSpringModelType string + const FITNESS_NUM_OFFSPRING + const FIXED_NUM_OFFSPRING + const UNIFORM_NUM_OFFSPRING + type Population struct + ActualAvgOffspring float64 + BottleNecks *Bottlenecks + Done bool + EnvironNoise float64 + IndivRefs []IndivRef + LBsPerChromosome uint32 + MaxFitness float64 + MeanFitness float64 + MeanNumDelAllele float64 + MeanNumDeleterious float64 + MeanNumFavAllele float64 + MeanNumFavorable float64 + MeanNumMutations float64 + MeanNumNeutral float64 + MinFitness float64 + Num_offspring float64 + Parts []*PopulationPart + PreSelGenoFitnessMean float64 + PreSelGenoFitnessStDev float64 + PreSelGenoFitnessVariance float64 + TargetSize uint32 + TotalNumMutations uint64 + TribeNum uint32 + func PopulationFactory(prevPop *Population, genNum, tribeNum, partsPerPop uint32) *Population + func (p *Population) CountAlleles(genNum uint32, lastGen bool) + func (p *Population) FreeParentRefs(dadIndex int, momIndex int) + func (p *Population) GetCurrentSize() uint32 + func (p *Population) GetFitnessStats() (float64, float64, float64, uint64, float64) + func (p *Population) GetInitialAlleleStats() (float64, float64) + func (p *Population) GetMutationStats() (float64, float64, float64) + func (p *Population) IsDone(doLog bool) bool + func (p *Population) Mate(newP *Population, uniformRandom *rand.Rand) + func (p *Population) PreSelectFitnessStats() (genoFitnessMean, genoFitnessVariance, genoFitnessStDev float64) + func (p *Population) Reinitialize(prevPop *Population, genNum uint32) *Population + func (p *Population) ReportDeadStats() + func (p *Population) ReportEachGen(genNum uint32, lastGen bool, totalInterimTime, genTime float64, ...) + func (p *Population) ReportInitial() + func (p *Population) Select(uniformRandom *rand.Rand) + type PopulationGrowthModelType string + const CAPACITY_POPULATON_GROWTH + const EXPONENTIAL_POPULATON_GROWTH + const FOUNDERS_POPULATON_GROWTH + const MULTI_BOTTLENECK_POPULATON_GROWTH + const NO_POPULATON_GROWTH + type PopulationGrowthType func(prevPop *Population, genNum uint32) uint32 + type PopulationPart struct + Indivs []*Individual + MyUniqueInt *utils.UniqueInt + NextIndivIndex int + Pop *Population + func PopulationPartFactory(numIndivs uint32, pop *Population) *PopulationPart + func (p *PopulationPart) FreeIndivs() + func (p *PopulationPart) GetCurrentSize() uint32 + func (p *PopulationPart) GetIndividual() (ind *Individual) + func (p *PopulationPart) Mate(parentPop *Population, parentIndices []int, uniqueInt *utils.UniqueInt, ...) + func (p *PopulationPart) Reinitialize() + func (p *PopulationPart) SetEstimatedNumIndivs(estimatedNumIndivs uint32) + type RecombinationType uint8 + const FULL_SEXUAL + type SelectionNoiseModelType string + const FULL_TRUNC_SELECTION + const PARTIAL_TRUNC_SELECTION + const PROPORT_PROB_SELECTION + const UNRESTRICT_PROB_SELECTION + type Species struct + PartsPerPop uint32 + Populations []*Population + func SpeciesFactory() *Species + func (parentS *Species) GetNextGeneration(gen uint32) (childrenS *Species) + func (parentS *Species) Mate(childrenS *Species, uniformRandom *rand.Rand) + func (s *Species) AllPopsDone() bool + func (s *Species) GetAverageFitness() (averageFitness float64) + func (s *Species) GetCurrentSize() (size uint32) + func (s *Species) GetFitnessStats() (meanFitness float64, minFitness float64, maxFitness float64, ...) + func (s *Species) GetMutationStats() (meanNumDeleterious float64, meanNumNeutral float64, meanNumFavorable float64) + func (s *Species) GetNumPopulations() uint32 + func (s *Species) Initialize(maxGenNum uint32, uniformRandom *rand.Rand) *Species + func (s *Species) MarkDonePops() + func (s *Species) ReportEachGen(genNum uint32, lastGen bool, totalInterimTime, genTime float64) + func (s *Species) ReportInitial() + func (s *Species) Select(uniformRandom *rand.Rand)