simuPOP OperatorsΒΆ
simuPOP is large, consisting of more than 70 operators and various functions that covers all important aspects of genetic studies. These includes mutation (k-allele, stepwise, generalized stepwise), migration (arbitrary, can create new subpopulation), recombination (uniform or nonuniform), gene conversion, quantitative trait, selection, penetrance (single or multi-locus, hybrid), ascertainment (case-control, affected sibpairs, random), statistics calculation (allele, genotype, haplotype, heterozygote number and frequency; expected heterozygosity; bi-allelic and multi-allelic \(D\), \(D'\) and \(r^{2}\) linkage disequilibrium measures; \(F_{st}\), \(F_{it}\) and \(F_{is}\)); pedigree tracing, visualization (using R or other Python modules). This chapter covers the basic and some not-so-basic usages of these operators, organized roughly by genetic factors.
- Introduction to operators
- Initialization
- Expressions and statements
- Output a Python string (operator
PyOutput) - Execute Python statements (operator
PyExec) - Evaluate and output Python expressions (operator
PyEval) - Expression and statement involving individual information fields (operator
InfoEvalandInfoExec) * - Using functions in external modules in simuPOP expressions and statements
- Output a Python string (operator
- Demographic changes
- Genotype transmitters
- Generic genotype transmitters (operators
GenoTransmitter,CloneGenoTransmitter,MendelianGenoTransmitter,SelfingGenoTransmitter,HaplodiploidGenoTransmitter, andMitochondrialGenoTransmitter) * - Recombination (Operator
Recombinator) - Gene conversion (Operator
Recombinator) * - Tracking all recombination events **
- Generic genotype transmitters (operators
- Mutation
- Mutation models specified by rate matrixes (
MatrixMutator) - k-allele mutation model (
KAlleleMutator) - Diallelic mutation models (
SNPMutator) - Nucleotide mutation models (
AcgtMutator) - Mutation model for microsatellite markers (
StepwiseMutator) - Simulating arbitrary mutation models using a hybrid mutator (
PyMutator)* - Mixed mutation models (
MixedMutator) ** - Context-dependent mutation models (
ContextMutator)** - Manually-introduced mutations (
PointMutator) - Apply mutation to (virtual) subpopulations *
- Allele mapping **
- Mutation rate and transition matrix of a
MatrixMutator** - Infinite-sites model and other simulation techniques **
- Recording and tracing individual mutants **
- Mutation models specified by rate matrixes (
- Penetrance
- Quantitative trait
- Natural Selection
- Natural selection through the selection of parents
- Natural selection through the selection of offspring *
- Are two selection scenarios equivalent? **
- Map selector (operator
MapSelector) - Multi-allele selector (operator
MaSelector) - Multi-locus selection models (operator
MlSelector) - A hybrid selector (operator
PySelector) - Multi-locus random fitness effects (operator
PyMlSelector) - Alternative implementations of natural selection
- Frequency dependent or dynamic selection pressure *
- Support for virtual subpopulations *
- Natural selection in heterogeneous mating schemes **
- Tagging operators
- Inheritance tagger (operator
InheritTagger) - Summarize parental informatin fields (operator
SummaryTagger) - Tracking parents (operator
ParentsTagger) - Tracking index of offspring within families (operator
OffspringTagger) - Assign unique IDs to individuals (operator
IdTagger) - Tracking Pedigrees (operator
PedigreeTagger) - A hybrid tagger (operator
PyTagger) - Tagging that involves other parental information
- Inheritance tagger (operator
- Statistics calculation (operator
Stat)- How statistics calculation works
defdictdatatype- Support for virtual subpopulations
- Counting individuals by sex and affection status
- Number of segregating and fixed sites
- Allele count and frequency
- Genotype count and frequency
- Homozygote and heterozygote count and frequency
- Haplotype count and frequency
- Summary statistics of information fields
- Linkage disequilibrium
- Genetic association
- population structure
- Hardy-Weinberg equilibrium test
- Measure of Inbreeding
- Effective population size
- Other statistics
- Support for sex and customized chromosome types
- Conditional operators
- Miscellaneous operators
- Hybrid and Python operators