Crates.io | cppm-generator |
lib.rs | cppm-generator |
version | 0.2.0 |
source | src |
created_at | 2022-04-26 09:11:10.835981 |
updated_at | 2022-04-26 09:11:10.835981 |
description | Generates charged patchy particles by Monte Carlo sampling on a sphere |
homepage | https://github.com/mlund/cppm-generator |
repository | https://github.com/mlund/cppm-generator |
max_upload_size | |
id | 575228 |
size | 56,152 |
This is a single command-line tool that generates spherical Charged Patchy Particle Models (CPPM) which mimic bio-colloidal particles, e.g. globular proteins. The figure below shows examples of interacting CPPMs taken from https://doi.org/10.1063/1.4928077:
cppm-generator
generates CPPMs by placing neutral, positive, and negative particles
on the surface of a sphere, and minimise the (free) energy using
Metropolis-Hastings Monte Carlo sampling.
$ cargo install cppm-generator
The default parameters produce an isotropic, charged particle similar to P00
from Table 1 in
this publication.
It is also possible to impose a target molecular dipole moment using the --dipole
option.
$ cppm-generator --help
USAGE:
cppm-generator [OPTIONS] --file <FILE>
OPTIONS:
-b, --bjerrum-length <BJERRUM_LENGTH> Bjerrum length (Å) [default: 7.0]
-h, --help Print help information
-m, --minus <NUM_MINUS> Number of negative (-1e) particles [default: 37]
-N <NUM_TOTAL> Total number of particles [default: 643]
-o, --file <FILE> Output structure (.xyz or .pqr)
-p, --plus <NUM_PLUS> Number of positive (+1e) particles [default: 29]
-r, --radius <RADIUS> Sphere radius (Å) [default: 20.0]
-s, --steps <STEPS> Number of Monte Carlo iterations [default: 10000]
-u, --dipole <TARGET_DIPOLE_MOMENT> Target dipole moment (Debye)
-V, --version Print version information
.xyz
and .pqr
filesBesides some scientific use, this project is mainly a first dive into the Rust programming language.