Documentation for Genome class from SLiM

Details

This class represents one full genome of an individual (one of the two genomes contained by a diploid individual, that is, in the way that SLiM uses the term), composed of the mutations carried by that individual. Section 1.5.1 presents an overview of the conceptual role of this class. This class has the following methods (functions):

This class has the following properties:

genomePedigreeID

A property of type integer. It is of length one (a singleton). This property is a constant, so it is not modifiable. Property Description: If pedigree tracking is turned on with initializeSLiMOptions(keepPedigrees=T), genomePedigreeID is a unique non-negative identifier for each genome in a simulation, never reused throughout the duration of the simulation run. Furthermore, the genomePedigreeID of a given genome will be equal to either (2*pedigreeID) or (2*pedigreeID + 1) of the individual that the genome belongs to (the former for the first genome of the individual, the latter for the second genome of the individual); this invariant relationship is guaranteed. If pedigree tracking is not enabled, this property is unavailable.

genomeType

A property of type string. It is of length one (a singleton). This property is a constant, so it is not modifiable. Property Description: The type of chromosome represented by this genome; one of "A", "X", or "Y".

individual

A property of type Individual object. It is of length one (a singleton). This property is a constant, so it is not modifiable. Property Description: The Individual object to which this genome belongs.

isNullGenome

A property of type logical. It is of length one (a singleton). This property is a constant, so it is not modifiable. Property Description: T if the genome is a "null" genome, F if it is an ordinary genome object. When a sex chromosome (X or Y) is simulated, the other sex chromosome also exists in the simulation, but it is a "null" genome that does not carry any mutations. Instead, it is a placeholder, present to allow SLiM's code to operate in much the same way as it does when an autosome is simulated. Null genomes should not be accessed or manipulated.

mutations

A property of type Mutation object. This property is a constant, so it is not modifiable. Property Description: All of the Mutation objects present in this genome.

tag

A property of type integer. It is of length one (a singleton). This property is a variable, so it is modifiable. Property Description: A user-defined integer value. The value of tag is initially undefined, and it is an error to try to read it; if you wish it to have a defined value, you must arrange that yourself by explicitly setting its value prior to using it elsewhere in your code. The value of tag is not used by SLiM; it is free for you to use. Note that the Genome objects used by SLiM are new with every new individual, so the tag value of each new offspring generated in each tick will be initially undefined.