Template Function fwdpp::infsites_mutation

Function Documentation

template<typename MutationContainerType, typename lookup_table_t, typename position_function, typename effect_size_function, typename dominance_function>
std::size_t fwdpp::infsites_mutation(flagged_mutation_queue &recycling_bin, MutationContainerType &mutations, const gsl_rng *r, lookup_table_t &lookup, const uint_t &generation, const double pselected, const position_function &posmaker, const effect_size_function &esize_maker, const dominance_function &hmaker, const decltype(mutation::xtra) x = 0)

Mutation function to add a fwdpp::mutation to a population.

In order to use this function, it must be bound to a callable that is a valid mutation function. See examples for details.

Note

”Neutral” mutations get assigned a dominance of zero. The xtra field is not written to.

Version

0.6.0 Added to library

Parameters
  • recycling_bin: Recycling queue for mutations (fwdpp::flagged_mutation_queue).

  • mutations: Container of mutations

  • r: A random-number generator

  • lookup: Lookup table for mutation positions

  • generation: The generation that is being mutated

  • pselected: The probability that a new mutation affects fitness

  • posmaker: A function generating a mutation position. Must be convertible to std::function<double()>.

  • esize_maker: A function to generate an effect size, given that a mutation affects fitness. Must be convertible to std::function<double()>.

  • hmaker: A function to generate a dominance value, given that a mutation affects fitness. Must be convertible to std::function<double()>.

  • x: Value to pass as mutation::xtra