Pestifer
Automatic NAMD System Input Builder
Pestifer is a fully automated system builder, requiring as inputs only biomolecular structures (e.g., PDB IDs, PDB files, mmCIF files, alphafold IDs) and a handful of customization parameters, to generate NAMD-compatible input files (PSF, PDB). It is basically a front end for VMD's psfgen
utility.
Installation
pip install pestifer
Once installed, the user has access to the main pestifer
command.
Pestifer also requires access to the following executables:
namd2
and charmrun
vmd
packmol
By default, pestifer looks for these in /usr/local/bin
. Specific paths for these can be stipulated in the paths
directive of your input file.
Pestifer includes the July 2024 Charmm36 force field.
Release History
- 1.5.4
- bugfix: incorrect deletion of image seqmods
- 1.5.3
- bugfix:
custom_pdb_path
bug in bilayer
fixed
- 1.5.2
- glycan graph mistake fixed
- python dependency updated to >=3.12
ycleptic
dependency updated to 1.0.7
- 1.4.8
- updated CHARMM lipid PDB files
- updated
ycleptic
to 1.0.6 to enable interactive help and automatic config documentation
- 1.4.7
ambertools
dependency removedpackmol-memgen
integration removed; now use native bilayer
taskmake-resi-database
command added- CHARMM force field files updated to July 2024
salt_con
, anion
, and cation
specs for solvate now availablepidibble
dependency updated to 1.1.9
- 1.4.6:
- pierced ring detection and remediation via the
ring_check
task restart
task added- automatic detection of SLURM environment for multi-node MD runs
--config-updates
option for fetch-example
and run-example
subcommands implemented- progress bars enabled for NAMD, psfgen, and packmol
--kick-ass-banner
option implemented -- check it out!pidibble
dependency updated to 1.1.8- expanded integration of
packmol-memgen
- 1.4.5:
- added
fetch-example
subcommand that just copies the respective example YAML file to the CWD - bugfixes:
- since packmol-memgen sometimes translates the insert, cannot use packmol's input coordinates to psfgen the resulting embedded system
- 1.4.4:
- now includes Tcllib 2.0
- bugfixes:
- fixed incorrect charges on the C-terminal CA and HB in the
HEAL
patch
- 1.4.3:
- update ambertools version requirement to 23.6; no more packmol-memgen/pdbremix error
- bugfixes:
- change packmol-memgen's weird ion names to be CHARMM-compatible
- allow for N-atom position calculation for residues added to a C-terminus (atom name OT1 vs O)
- 1.4.2:
- explicit chain mapping in config file
- 1.4.1:
- support for empty TER records
- 1.4.0:
- initial
packmol-memgen
integration
- 1.3.9:
- added
include_C_termini
boolean to declash
directives; set to False
to prevent C-terminal insertions from undergoing automatic declashing
- 1.3.8
- bugfix: spurious code in
pestifer-vmd.tcl
- 1.3.7
- bugfix: fixed a spurious hard-coded path in
macros.tcl
- 1.3.6
- bugfix:
runscript
sources TcL proc files with dependencies in proc files that aren't yet sourced; fixed that
alphafold
source directive added to permit download of models from the AlphaFold database by accession code
- 1.3.5
- bugfix:
- renumbering of author resids in non-protein segments if user adds protein residues by insertion that may conflict
- transferance of atomselect macros from YAML input to any VMD script
inittcl
subcommand makes this transfer; needs only to be run one time post-installation
- 1.3.4
- new TcL procs for asymmetric unit generation from non-symmetric assemblies
pestifer_init
TcL proc provided in docs for user VMD startup scriptscript
subcommand removed- syntax of
wheretcl
subcommand expanded
- 1.3.3
NAMDLog
class introduced for parsing NAMD2-generated log filesmdplot
task for generating plots of various energy-like quantities vs timestep
- 1.3.2
- allow for user-defined links in the config file
- all example builds now have tests in the test suite
- 1.3.1
- 1.3.0
- Support for reading from already-build PSF/PDB systems
- 1.2.9
- improved declashing and domain-swapping
- 1.2.8
grafts
for adding glycans
- 1.2.7
cleave
task and CleavageMod
- 1.2.6
ModManager
replaces ModContainer
- 1.2.5
insertion
mod; corrected bug in brot
tcl procedure
- 1.2.3
- script subcommand handles local scripts
- 1.2.2
- added
wheretcl
subcommand
- 1.2.1
- 1.2.0
- split all namd subtasks out; now they are level-1 tasks
- 1.1.3
- 1.1.2
- more control over production NAMD2 config generated by the package directive
- 1.1.1
- position restraints control in minimization and relaxation
- 1.1.0
other_parameters
for any NAMD2 relaxation task
- 1.0.9
- alternate coordinate files and Cfusions
- 1.0.8
- chain-specific control over building in zero-occupancy residues at N and C termini
- 1.0.7
alpha
crotation for folding a span of residues into an alpha helix
- 1.0.6
cif_residue_map_file
generated to report mapping between CIF-residue numbering and author residue numbering
- 1.0.5
- enhancements to packaging task
- 1.0.4
- support for topogromacs added
- 1.0.1
Meta
Cameron F. Abrams
Distributed under the MIT license. See LICENSE
for more information.
https://github.com/cameronabrams
Contributing
- Fork it (https://github.com/cameronabrams/pestifer/fork)
- Create your feature branch (
git checkout -b feature/fooBar
) - Commit your changes (
git commit -am 'Add some fooBar'
) - Push to the branch (
git push origin feature/fooBar
) - Create a new Pull Request