pub struct Mutate {
pub reference: ReferenceOptions,
pub bed: BedOptions,
pub seed: SeedOptions,
pub output: PathBuf,
pub snp_rate: f64,
pub indel_rate: f64,
pub mnp_rate: f64,
pub indel_length_param: f64,
pub het_hom_ratio: f64,
pub ploidy: u8,
pub ploidy_override: Vec<String>,
}Expand description
Generate a VCF of random mutations from a reference genome.
Produces a standard VCF with proper GT fields that can be fed directly to
holodeck simulate. Supports independent control of SNP, indel, and MNP
rates, with configurable ploidy including per-contig and per-region
overrides for handling sex chromosomes and pseudo-autosomal regions.
Fields§
§reference: ReferenceOptions§bed: BedOptions§seed: SeedOptions§output: PathBufOutput VCF file path.
snp_rate: f64Rate of SNP mutations per base.
indel_rate: f64Rate of indel mutations per base.
mnp_rate: f64Rate of MNP (multi-nucleotide polymorphism) mutations per base.
indel_length_param: f64Parameter for the geometric distribution of indel lengths. Larger values produce shorter indels on average.
het_hom_ratio: f64Ratio of heterozygous to homozygous variants. A value of 2.0 means twice as many het as hom variants.
ploidy: u8Default ploidy for all contigs.
ploidy_override: Vec<String>Per-contig or per-region ploidy override. Format: CONTIG=PLOIDY or
CONTIG:START-END=PLOIDY (1-based coordinates). Later values override
earlier ones for the same positions (last-writer-wins).
Example: --ploidy-override chrX=1 --ploidy-override chrX:10001-2781479=2
Trait Implementations§
Source§impl Args for Mutate
impl Args for Mutate
Source§fn augment_args<'b>(__clap_app: Command) -> Command
fn augment_args<'b>(__clap_app: Command) -> Command
Source§fn augment_args_for_update<'b>(__clap_app: Command) -> Command
fn augment_args_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§impl CommandFactory for Mutate
impl CommandFactory for Mutate
Source§impl FromArgMatches for Mutate
impl FromArgMatches for Mutate
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.