simgpm_rs

Wright-Fisher populations on arbitrary genotype spaces in a changing environment

https://github.com/kumawatb/simgpm_rs

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.6%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

Wright-Fisher populations on arbitrary genotype spaces in a changing environment

Basic Info
  • Host: GitHub
  • Owner: kumawatb
  • License: mit
  • Language: Rust
  • Default Branch: main
  • Homepage:
  • Size: 1.01 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 2
Created over 3 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

README.md

simgpm.rs

Wright-Fisher populations on arbitrary genotype spaces in a changing environment

Written by: Bhaskar Kumawat (https://kumawatb.com)

Installation

To get this package up and running on your machine, you will need the latest installation of rust (https://www.rust-lang.org/tools/install). To build the program,

  1. Clone the repository to your machine git clone https://github.com/kumawatb/simgpm_rs.git
  2. Switch to the root directory cd simgpm_rs
  3. Execute the following command cargo build -r The simgpm executable will be built in the target/release folder.

Simulation setup

Simulation setup requires three types of files in a config directory in the same location as the executable. 1. Environment file

The environment file specifies the different environments to be used during a simulation and how they change over evolutionary time. See env.cfg file in the config directory to learn how the environments are specified. A particular environment state essentially determines the phenotype-fitness map to be used in that state.

  1. Phenotype-Fitness file(s)

The environment file relies on paths to Phenotype-Fitness (pf) files to specify how a particular phenotype is rewarded in the environment. pf-files are specified as comma separated values with the first column denoting a phenotype-id and the second column denoting the relative fitness of that phenotype in an environment state. See pf_example1.csv and pf_example2.csv along with the header for env.cfg to learn how to specify different phenotype-fitness maps.

  1. Genotype-Phenotype file

The genotype-phenotype (gp) file specifies the 2D genotype-phenotype map to be used in a simulation as a comma separated file. The file contains X rows and Y columns, where X and Y are the width and height of the genotype space. Each (x,y) coordinate in the file is a phenotype-id that determines the phenotype of that genotype. The genotype space has periodic boundaries and loops around along both axes to form a toroid. To remove periodic boundaries, you can create a phenotype id with zero fitness around the entire genotype-phenotype map. See gpm.csv to learn how a gp-file is specified.

Running the simulation

The simulation can be run with different parameter values for population size, mutation rates etc. To check the available parameters, type the following in the command line:

./simgpm --help ``` SimGpm: A program to simulate evolution on arbitrary genotype-phenotype maps

Optional arguments: -h,--help Show this help message and exit -x,--gridx GRIDX Grid size in x -y,--gridy GRIDY Grid size in y -g,--gpfilepath GPFILEPATH Path to the genotype-phenotype map file -e,--envfilepath ENVFILEPATH Path to the environment file -p,--popsize POPSIZE Population size -m,--mutprob MUTPROB Mutation probability -t,--maxgens MAXGENS Maximum generations to run the simulation for -s,--saveevery SAVEEVERY Time interval duration to create population saves (in generations) -d,--outdom OUTDOM 0/1, output file containing dominant genotypes? -v,--outevol OUTEVOL 0/1, output file containing evolvabilities? -n,--outenv OUTENV 0/1, output file containing environments? -a,--outaltmut OUTALTMUT 0/1, output file containing alternate mutant probabilities? -o,--outpopsave OUTPOPSAVE 0/1, output file containing population saves? -h,--rndstrtpheno RNDSTRTPHENO Start simulation with all organisms having a random genotype from given phenotypes? -l,--replid REPLID If only one replicate, should this replicate be given an id?

```

Owner

  • Name: Bhaskar Kumawat
  • Login: kumawatb
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.1.0
message: "If you use this software, please cite it as below."
authors:
  - family-names: Kumawat
    given-names: Bhaskar
    orcid: https://orcid.org/0000-0002-6128-8971
title: kumawatb/simgpm_rs: A program to simulate Wright-Fisher evolutionary dynamics on an explicitly defined genotype-phenotype map. Preprint release (2022_12_27)
version: v1.0.1
date-released: 2022-12-27

GitHub Events

Total
  • Create event: 1
Last Year
  • Create event: 1

Issues and Pull Requests

Last synced: about 2 years ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

Cargo.lock cargo
  • approx 0.5.1
  • argparse 0.2.2
  • autocfg 1.1.0
  • bytemuck 1.12.1
  • cfg-if 1.0.0
  • getrandom 0.2.8
  • lazy_static 1.4.0
  • libc 0.2.135
  • libm 0.2.5
  • matrixmultiply 0.3.2
  • nalgebra 0.29.0
  • nalgebra-macros 0.1.0
  • num-complex 0.4.2
  • num-integer 0.1.45
  • num-rational 0.4.1
  • num-traits 0.2.15
  • paste 1.0.9
  • ppv-lite86 0.2.16
  • proc-macro2 1.0.47
  • quote 1.0.21
  • rand 0.8.5
  • rand_chacha 0.3.1
  • rand_core 0.6.4
  • rand_distr 0.4.3
  • rawpointer 0.2.1
  • safe_arch 0.6.0
  • simba 0.6.0
  • statrs 0.16.0
  • syn 1.0.103
  • typenum 1.15.0
  • unicode-ident 1.0.5
  • wasi 0.11.0+wasi-snapshot-preview1
  • wide 0.7.5
Cargo.toml cargo