Download

Home
Research
Lab members
Publications
Links
Download

Software (HISTAN, PDBAN, GELAN) | Custom syntax files | Files for GETAREA | Scripts for VMD | Scripts for NAMD | Structures | Other 

Please address comments or questions to Andriy Anishkin (anishkin@icqmail.com).

General note: Some of these programs and scripts are documented in a minimalistic fashion since they were originally developed with an "indoor" use in mind. Nevertheless we decided to make them available to scientific community since they may be of use or interest to researchers working on similar problems. Better documented versions are on their way. We will be happy to help with their installation and usage as much as we can, but potential users should realize that certain difficulties and risks might be associated with using the programs which are in the process of development.

Software written in Matlab

bullet

HISTAN - program package for histogram-based analysis of patch-clamp recordings (|||image). It was used for 3D histogram creation, activation curve computations, and multi-distributional fitting in Anishkin et al., 2003, Chiang et al., 2004, Akitake et al., 2005, and Anishkin et al., 2005.

General program features:
bullet

Batch processing of patch-clamp recordings   (|||image)
bullet

Input and output in the Axon ATF format (|||image). Piecewise file processing - handles ~unlimitedly large files (~4 Gb). Files can be zipped to reduce file disk size. 

bullet

Batch processing of the list of files.

bullet

Scaling of the current or pressure amplitudes

bullet

Fusion of current and pressure recording channels into one trace

bullet

Connection of several traces into one long trace

bullet

Reconstruction of the pressure channel using external approximated data

bullet

Removing a piece from the middle of the trace

bullet

Automated correction of the baseline

bullet

Batch creation of 2D all-point histograms   (|||image)
bullet

Probability over current-pressure or current-time dimensions  (|||image)

bullet

Arbitrary ranges of histograms. Arbitrary predefined number, width or explicit boundaries of bins.

bullet

Output saved as a readable plain text file

bullet

Both discrete steps and continuous ramps of pressure can be treated equally well. 

bullet

Conditional 2D histograms creation   (|||image)
bullet

Traces may be automatically processed so that only selected fragments or points will be counted. E.g. only channel transitions, pikes or substates will be included  (|||image)

bullet

Flexible set of conditions (23 condition types x 8 range types) allows to describe practically any pattern of channel activity or specific points of interest. Combination of 3 conditions can be used  (|||image). 

bullet

The selected points are marked in a control output ATF file, so all the included fragments can be visually inspected in Clampfit.

bullet

Batch processing of the created 2D histograms (|||image)
bullet

2D histograms crated in the previous steps can be reloaded for additional processing

bullet

Rebinning of the histograms into smaller or larger number of bins, automatically calculated, defined by bin width, or explicitly specified.

bullet

Histograms can be automatically rebinned according to pressure steps. by mi

bullet

When number of points increases after rebinning or in case of the missing data points 2D histograms can be interpolated with 1 of 6 functions  (|||image)

bullet

Histograms can be rebinned automatically according to steps in pressure in order to maximize data reliability

bullet

Data can be properly normalized thus compensating for nonuniform pressure steps or ramps

bullet

Histograms can be neighbor-averaged in either direction to reduce the noise and compensate for bins undersampling (if necessary)

bullet

Any range of histogram can be zeroed. Any bins can be removed or added.

bullet

Current and pressure axis can be normalized, e.g. to produce relative current from 0 to 1, or pressure normalization relative some benchmark (like MscL relative to MscS channel)

bullet

Batch creation and processing of 1D histograms (|||image) on the basis of 2D histograms  (|||image, image)
bullet

Selected range of 2D histogram can be traced into one or several 1D histograms. Tracing along the current axis produces conventional all-point occupancy histogram (|||image), whereas tracing along the pressure axis (with proper conversion and weighting (|||image)) leads directly to dose-response and activation curves (|||image).

bullet

Values in 1D histograms can be interpolated and tracked with the cursor, so that numeric values can be extracted (|||image)

bullet

Explicit histogram bins boundaries can be shown (|||image)

bullet

1D histograms can be saved in plain tab-separated text files importable into Excel

bullet

Automated or manual fitting of 1D histograms with a set of normal distributions for substates decomposition (|||image, image)
bullet

1D histogram from the file or from memory can be fitted with arbitrary number of normal distributions  (|||image)

bullet

Position, width and height (i.e. amplitude or substate occupancy) of normal distributions are independent tuning parameters

bullet

Fully automated (global optimization of all the parameters for all the selected distributions), semi-automated (automated optimization of one parameter of one distribution), or manual modes are available

bullet

Dual control of the fitting quality - visual  (|||image) and by the numeric estimation (|||image) of fit-target deviation. Several weighting functions for deviation estimation are available

bullet

All the results and tuned parameters are saved in text files and snapshots, and can be loaded as a preset for the next histogram fitting

bullet

Batch plotting of 2D and 1D histograms (|||image, image)
bullet

Either individual or set of 2D or 1D histograms can be plotted directly from the program. Zoom, cursor (|||image) and 3D rotation features of Matlab are available.

bullet

For 2D histogram a wide range of representations and coloring is available (|||image, image, image, image)

 

 

bullet

PDBAN - package for handling and analysis of PDB structures. It was used in molecular structures and MD trajectories analysis, hydration energy and crossectional area profiles calculations in Anishkin and Sukharev, 2004, Chiang et al., 2004, Sukharev and Anishkin, 2005.

General program features:
bullet

Batch processing of files (|||image)
bullet

Expandable two-window interface (|||image). PDB mainboard window is permanent and allows consistent file browsing and processing mode selection (|||image). Options window is different for every selected mode.

bullet

List of PDB, volumetric data or other files can be processed at once as a batch

bullet

For regularly numbered files (e.g. file000031.pdb ... file125672.pdb) the list can be generated automatically (|||image). Length of file list is unlimited, that allows to overcome Windows limitation of using file dialog for browsing more than ~1000 files at a time (you can have much more as PDBs of simulation time frames).

bullet

File list can be loaded from the text file (for complex and long file selections)

bullet

All data input files (PDB, volumetric, VRML, txt) and most of output files can be in ZIP format, allowing to reduce file size dramatically (5 to 200 times)

bullet

Property profiles creation (|||image, image)
bullet

For PDB structures containing some values in beta or charge (or other) column (|||image, MscL colored by the atom hydration energy contained in the beta column), the molecule can be divided into slices normal to some axis and sum of the values within every slice can be calculated. In this manner profile of hydration energy or net charge along the channel axis can be calculated (|||image) (profile can be smoothed using PDBAN, see below)

bullet

Optionally only atoms marked by some value in another column can be considered, e.g. only atoms facing the pore interior, as marked by -1 value in the occupancy column, will be added to the pore hydration energy profile (|||image)

bullet

Both linear (along the axis) and circular (around the axis) profiles can be computed, so that distribution of hydrophobicity around the channel can be estimated.

bullet

Property profiles averaging (|||image)
bullet

Original property profiles are usually rough with 1-Angstrom resolution (|||image). They can be smoothed to imitate atoms thermal motion and reveal general features (|||image)

bullet

Running average, triangular-shaped average, normal distribution or arbitrary neighbor coefficients algorithms can be used for profile averaging.

bullet

Arbitrary degree of averaging can be used

bullet

Averaging for circular profiles is available

bullet

PDB column replacement (|||image)
bullet

External data (from the text file or GetArea output file) can be introduced into PDB file. It can be used to combine calculated hydration energy per atom GetArea with the atomic coordinates contained in PDB

bullet

Arbitrary column can be copied from one PDB file to another.

bullet

Batch processing for file lists is available

bullet

Data per individual atom or per whole residue can be used and spread over all residue atoms. Data per one monomer can be spread per whole homooligomer. E.g. In this way evolutionary conservancy data per residue per monomer can be properly spread per every atom (for future visualization and calculations)

bullet

PDB residues renumbering (|||image)
bullet

Sometimes during model building in external programs the same block of atoms (e.g. water cube) is duplicated several times over the system, thus leading to duplicate residue numbers for the same segment name. It presents a problem for PSFGEN program. It can be solved by using this renumbering mode of PDBAN

bullet

Batch renumbering is available

bullet

Property profiles combining (|||image)
bullet

Different property profiles can be computed with the previous options of HISTAN (e.g. hydration energy profile and slice surface area profile). They can be combined in certain manner to estimate some derived property profile (e.g. energy divided by area to estimate HE density profile) 

bullet

Profiles can be added, subtracted, multiplied, divided, rebinned (to produce the same number and location of bins in two profiles) or rebinned with spline interpolation

bullet

Batch combining is available

bullet

PDB structure reorientation (|||image)
bullet

PDB structure can be automatically reoriented by the combination of criteria. E.g. bundle of alpha-helices can be aligned along the z axis using the rings of selected alpha carbons as a criterion

bullet

Directed random search algorithm compatible with arbitrary atoms combinations is used

bullet

PDB property 3D averaging (|||image)
bullet

Some properties, like atomic hydration energies, are distributed quite non-homogeneously on the protein surface. This makes it difficult to grasp visually. With this option the properties of individual atoms can be averaged among them and reintroduced into arbitrary columns of PDB file, so in can be used in external visualization programs

bullet

Optional inclusion of only desired atoms (marked by certain values in the indicated column), so hydration energy or charge can be averaged only among pore-facing atoms)  (|||image)

bullet

Optional usage of some column as a multiplying coefficient, so that property can be distributed proportional to the exposed area of the atom

bullet

Additive, averaging and weighted averaging methods are available

bullet

Volumetric data creation (|||image, image)
bullet

PDB coordinates can be used to create 3D volumetric density arrays. These volumetric data can be used later in other PDBAN modes for pore crossectional area calculations (|||image, image), surface (|||image), or density (|||image) visualizations.

bullet

Volumetric data can be created as an average of multiple input files, reproducing time-averaged density

bullet

Volumetric data can be smoothed in space reproducing thermal motion of atoms (using normal distribution or multistep nearest neighbor averaging). It can be used to enhance principal structure geometry in visualization purposes (|||image) and for virtual 'reconstruction' of low-resolution AFM images  (|||image)

bullet

Arbitrary sets of VDW radii can be supplied for volumetric data creation

bullet

VDW surface, surface created by the spherical probe center or probe surface can be used. Probe radius can be arbitrary

bullet

Automatic or predefined size and step of volumetric greed

bullet

Batch processing and ZIPped input/output of the files

bullet

Optional output in the Matlab binary or plain text formats

bullet

Crossection area calculation by volumetric/PDB/VRML data (|||image, image, image)
bullet

Volumetric (preferable), PDB, and externally created VRML surfaces (|||image) can be used to compute channel crossectional areas profiles

bullet

Choice of 5 methods of crossectional area calculations (some are specific to certain input file formats)

bullet

The surface is created (|||image), then divided into slices (|||image) and crossection areas (|||image), effective radii (|||image), and perimeter lengths are computed (|||image)

bullet

Three methods of crossection areas sorting are available - it facilitates postprocessing of the output in the external spreadsheet programs

bullet

Arbitrary orientation and step of crossection planes set

bullet

Batch processing is available

bullet

Option to plot results on screen, automatically save text files and images, or send them to printer

bullet

Optional output of the triangulated channel surface in plain text format (e.g. for the import of calculated averaged surface into VMD)

bullet

Channel conductance calculation by radius profile (|||image, image)
bullet

Provided the channel pore crossectional area profile or crossectional radius profile was computed, and conductivity of the medium is indicated, the pore resistance profile can be computed in Hille's approximation (|||image). The method works fine for the large nonselective pores (like MscL, MscS or hemolysin)

bullet

Ion radius size and hydration shell thickness can be taken into account and subtracted from the effective pore radii

bullet

Pore access resistances are taken into account, and the total channel resistance is estimated

bullet

Output results can be saved as a plain text files

bullet

Batch processing is available

bullet

Option to plot results on screen, automatically save text files and images, or send them to printer

bullet

Volumetric data visualization (|||image, image)
bullet

Volumetric data calculated in PDBAN can be visualized with a broad set of representations (|||image)

bullet

Surfaces can be created at the given levels of density. Can be used for channel surface visualizations (|||image) and for representations of 3D distributions of water density in the channel (|||image, image).

bullet

2D density maps can be computed as an average or sum between 2 parallel planes. Similar maps can be created for the angular sector created by two intersecting planes. Map (|||image) or landscape (|||image) representations are available

bullet

3D data can be averaged with arbitrary degree of rotational symmetry (|||image, image)

bullet

Linear profile can be created as a crossection of 2D map (|||image), both linear and circular variants are available, as well as contours at the desired probability level. Optional averaging over 2D region.

bullet

Volumetric data combining (|||image)
bullet

Different 3D volumetric datasets can be computed with the previous options of HISTAN (e.g. total number of hydrogen bonds in some volume and water density there). They can be combined in certain manner to estimate some derived property profile (e.g. number of hydrogen bonds in space divided by the water density will produce the degree of water H-bonding when it occupies the selected area (excluding time moments of dewetting)  (|||image)) 

bullet

Profiles can be averaged, added, or divided

bullet

Profiles can be scaled by arbitrary weight coefficients (e.g. to compensate for the different simulation times over which hydrogen bonds were counted)

bullet

Batch combining is available

 

 

bullet

GELAN - program for quantification of protein bands on the gel electrophoresis images . It was used for open MscL crosslinking analysis in Betanzos et al., 2002.

General program features:
bullet

Reads gel images in the BMP or TIFF formats (|||image). Images should be prepared to indicate columns (see included ReadMe.txt file) (|||image).

bullet

Output consists of text files containing band width, total amount of darkness, and protein concentration

bullet

When imported into any spreadsheet program they produce digitized profile of gel darkness (|||image)

bullet

After proper baseline correction (|||image) protein content profiles (|||image) and histograms (|||image) can be computed.

Custom syntax files for Crimson Editor

A couple of snapshots of VMD script () and NAMD output () with highlighted syntax. 
You can find instructions how to make and use custom syntax highlight files with Crimson Editor here.
Archives with the custom syntax files we have prepared:

bulletVMD script (Tcl/Tk + custom VMD commands)
bulletVMD vmd.rc file (the same syntax as previous)
bulletNAMD configuration and Tcl scripting
bulletNAMD simulation output file
bulletPSFGEN input script
bulletPDB

 

Files for GETAREA program

bullet

Expanded GETAREA library of atom types - it is compatible with wider range of PDB structures, including PDBs created by PSFGEN with CHARMM22 topology settings.

bullet

Atomic solvation parameters by Wesson and Eisenberg 
bullet

in kcal/mol/angstrom2

bullet

in dacal/mol/angstrom2  - for higher precision per-atom output 

bullet

Script for MS WORD (written in MS Visual Basic) for correction long (4-letter) atom names in PDBs produced by PSFGEN or VMD to make them readable by GETAREA. The script can be inserted into MS Word template (e.g. through Tools->Macro->Macros->Edit)

 

Scripts for VMD

bulletStartup file for VMD (replacement for vmd.rc file under Windows, and vmdrc. under Linux)
VMD reads and executes this file on startup. Our startup file contains big set of predefined graphical presets, views, utilities and small scripts, that may be convenient to have ready to use right away - with single key press (from the OpenGL window with graphics) or as a short text command issued from the Tk console. Some of these scripts a written by Andriy Anishkin, and other are selected scripts from the VMD Script Library - either in the original form or modified. Although this startup is a somewhat bulky, it is easy to transfer between different computers and does not require installation of any additional components (except for the 'orient' script). Here are the main features of the startup file (full list of features with screenshots is also available).
bullet3D on-screen grid facilitating visual estimation of molecule dimensions (|||screenshot)
bulletSet of predefined (on keys) views from  x, y, and z directions etc.
bulletColoring the protein (using the beta parameter) by several different hydrophobicity and amino acid property scales (58 in total) (|||screenshot)
bulletSingle-command creation of protein mutant structures (using PSFGEN embedded into VMD) (|||screenshot)
bulletSingle-command symmetrization of the thermally-disordered protein structure  (|||screenshot)
bulletEmbedded morph script (by Andrew Dalke), modified to make linear interpolation between multiple frames
bulletEmbedded sscache, orient and vmdcollab scripts (See acknowledgements in the startup file comments)

Other VMD scripts:

bullet

coordinates2dcd - Script reading coordinate files (in any VMD-readable format - NAMDBIN, PDB, DCD, etc.), adding them all as frames in trajectory and saving the trajectory in peaces (to avoid extremely big DCD files). Inspired by John Stone's 'animatepdbs' script. Expanded to handle file masks (similar to 'ls' command) without specification of the first and last files in sequence (autodetect). For big file sequences can automatically wrap them into trajectory pieces by 'outFrames' frames number.
Usage: coordinates2dcd <filesPath> <fileNameFormat> <|fileType> <|outFrames> <|start> <|end>

bullet

COORs2DCDs - Similar to the previous script. This script finds all the files fitting into the filemask, e.g. "*.vel *.coor *.pdb" (search may be recursive into subfolders). Then it converts them individually into DCD format (one single-frame DCD per one file). It can (optionally) delete originals. Useful when you want in one step to free up some space, since DCD takes 2 time less space than the *coor or *.vel, and about 6 times less that PDB. Be careful with PDBs since DCD will retain only coordinates and will discard all other information (atom names, beta and occupancy fields etc.).

bullet

count_atoms_in_selection_of_trajectory_for_filelist - This script counts atoms within selection for all the frames of the trajectory and records results as a separate text files corresponding to the files in the filelist. Also script extracts 1 parameter value (e.g. Z coordinate) for every atom in selection for every timestep

bullet

count_h-bonded_water_bridges - This script counts water molecules which is binded with more than one other residue (i.e. functions like a bridge) within selection for all the frames of trajectory and records results as separate text files corresponding to the files in the filelist.

bullet

create_trajectory_from_residues - Script to align all the residues in the selection (suggesting all the residues have the same atoms number), sort by RMSD, and save them as a trajectory (one residue - one time frame. It imitates dynamics of the single residue based on the single multiresidue snapshot. For multiple timesteps it repeats the operation for every timestep and appends them all in one long DCD trajectory.

bullet

draw_channel_cylindrical_surface - Script to draw rotational (along z axis) surface, e.g. surface approximating average channel radius. It reads text file with 2 columns of data, separated by single spaces (z and radius), or 3 columns (z, radius, color). Color, if specified, should be integer from 17 to 1040. File should have 1st line with column headers (it is ignored). (|||screenshot), It was used in Sukharev and Anishkin, 2005

bullet

draw_triangulated_surface_from_file - Script to read and draw triangulated surface. It reads text file with 9 columns of data, containing coordinates of a triangle, separated by single spaces (x1 y1 z1 x2 y2 z2 x3 y3 z3). Useful when you have some surface calculated in the external program, e.g. Matlab, and want to overlap it exactly with the structure in VMD. (|||screenshot)

bullet

extract_all_frames_as_PDBs_for_filelist - This script extracts the selection of atoms for all the frames of trajectory as separate PDB files (one file per frame). Updates the selection every frame (in can have different number of atoms every timestep). Useful when you want to analyze the selections later in some external program, like Matlab.

bullet

extract_all_frames_H-bonds_as_XYZs_for_filelist - This script extracts coordinates of atoms forming an H-bond within selection for all the frames of the trajectory as separate XYZ (donor line, acceptor line, etc) files (one file for each entrance in the filelist). Useful for creation of hydrogen bonding maps (see Anishkin and Sukharev, 2004).

bullet

mark_non-channel_atoms_by_1_and_channel_by_-1__filelistScript for autodetection of the protein atoms on the outside-facing surface (lipid-facing surface of the membrane channel; atoms will be marked by 1 in occupancy field) and inside-facing surface (pore-facing surface of the channel or protein core; marked by -1). Channel is supposed to be oriented such that the direction normal to membrane plane will be along z axis. Can be used as one of the steps of hydration energy profile calculation. (|||screenshot)

bullet

radial_distribution_for_atoms_in_selections_of_trajectory_for_filelist - This script calculates the distance distribution for atoms within selections for all the frames of trajectory and records results as separate text files corresponding to the input files in filelist. Can be used for ion-'water oxygen' or water 'oxygen-hydrogen' etc. correlation function.

bullet

reposition_atoms_along_radius_and_average_multiple_selections - Script to reposition all the atoms in specified selections, rotating them around z axis so that they all align along the y axis, i.e. from {x y z} to {0 r z}, where r - radial distance from the atom to the z axis. Then a <smoothed> average is calculated and plotted as semitransparent spheres. (|||screenshot)

bullet

show_forces_as_arrowsScript to estimate forces acting on harmonically restrained atoms in simulation. Supposing that one frame has coordinates of restraint targets, script compares these two frames of trajectory, calculates force acting on restrained atoms (according spring constants in the BETA field), puts the value into OCCUPANCY field and draws the color-coded force arrows. (|||screenshot)

bullet

summarize_namd_logs - Script to find files fitting into filemask, then find in every file lines with certain beginning, and extract patterned information from those lines.

Scripts for use with NAMD

bulletTcl script for starting long recursive NAMD simulation under Windows or Linux platforms
bulletNAMD configuration file for long simulations 
(for use with the Tcl start script above, automatically performs a long simulation (e.g. 10 ns) as a numbered set of shorter simulations (e.g. 200 ps, to reduce file size and facilitate trajectory management), and autoresumes a stopped simulation in case of crash)

bulletTcl script for performing set of NAMD simulations with gradually changing restrains
bulletNAMD configuration file for NAMD simulations with gradually changing restraints
bulletVMD script for creating constant force or harmonic spring constant and target files to implement gradually changing restraints simulations.
bulletConfiguration file for the above VMD script. All 4 above files are required to perform simulations with gradually changing harmonic restraints.
As an example one can think of gradually increasing radial stretching force applied to the channel external surface, combined with twisting motion and simultaneous expansion of the internal part of the protein, imitating a set of membrane- and hydration-derived forces with conformational distortions developing in the protein.
bulletVMD script for automated consolidation of the output fines (fuse all the coordinates into DCD trajectories,  
bulletVMD script for consolidation of the output files after simulation was completed. It can be started with this startup file

bulletVMD script automatically adjusting (scaling down) charges in PSF topology file according to the degree of exposure of atoms in the PDB file and dielectric permeability profiles for the medium. 
Can be used in vacuum simulations to imitate screening effect of phospholipid membrane near the protein, and water around and inside the channel.
bulletDielectric permeability profiles for the membrane and water along z axis for use with the script above.

Structures

bullet

Models  of E. Coli MscL in the closed, expanded and open states 
(based on the Dr. H. Robert Guy models (Sukharev et al., 2001) with N-terminal domain in the open state modified according to (Anishkin et al., 2003); PDB format)

bullet

PSF topology and DCD trajectory files of targeted energy minimization in vacuo between the closed and open states of MscL. It resembles the modeled trajectory of MscL gating and the gating pathways observed in all-atom molecular dynamics MscL simulations.

bullet

Resting MscS

bullet

Model of inactivated MscS

 

 

 

Other

Movie - Model of MscL opening