Documentation for SLiM function containsMarkerMutation, which is a method of the SLiM class Genome. Note that the R function is a stub, it does not do anything in R (except bring up this documentation). It will only do anything useful when used inside a slim_block function further nested in a slim_script function call, where it will be translated into valid SLiM code as part of a full SLiM script.

containsMarkerMutation(mutType, position, returnMutation)

Arguments

mutType

An object of type integer or MutationType object. Must be of length 1 (a singleton). See details for description.

position

An object of type integer. Must be of length 1 (a singleton). See details for description.

returnMutation

An object of type logical. Must be of length 1 (a singleton). The default value is F. See details for description.

Value

An object of type null or logical or Mutation object. Return will be of length 1 (a singleton)

Details

Documentation for this function can be found in the official SLiM manual: page 672.

Returns T if the genome contains a mutation of type mutType at position, F otherwise (if returnMutation has its default value of F; see below). This method is, as its name suggests, intended for checking for "marker mutations": mutations of a special mutation type that are not literally mutations in the usual sense, but instead are added in to particular genomes to mark them as possessing some property. Marker mutations are not typically added by SLiM's mutation-generating machinery; instead they are added explicitly with addNewMutation() or addNewDrawnMutation() at a known, constant position in the genome. This method provides a check for whether a marker mutation of a given type exists in a particular genome; because the position to check is known in advance, that check can be done much faster than the equivalent check with containsMutations() or countOfMutationsOfType(), using a binary search of the genome. See section 14.4 for one example of a model that uses marker mutations - in that case, to mark chromosomes that possess an inversion. If returnMutation is T (an option added in SLiM 3), this method returns the actual mutation found, rather than just T or F. More specifically, the first mutation found of mutType at position will be returned; if more than one such mutation exists in the target genome, which one is returned is not defined. If returnMutation is T and no mutation of mutType is found at position, NULL will be returned.

Author

Benjamin C Haller (bhaller@benhaller.com) and Philipp W Messer (messer@cornell.edu)