Membrane Generating Plugin
Why the plugin? The increase in the computational power over the past
few years has allowed for all-atom molecular dynamics (MD) modeling of large
biological molecules. Many of these molecules are membrane proteins, which
need to be simulated in an appropriate membrane/solvent/ions environment.
Since the membrane structure may affect the protein-lipid interactions, which
are, in turn, critical for protein function, using the correct structure
is imperative. The membrane plugin described here allows to instantly
generate biological membrane structures for MD simulations of membrane proteins.
Generating algorithm. The membrane plugin builds a rectangular
matrix of the required size out of pre-built membrane square patches. Since
biological membranes are lipid bilayers, the patches included two lipid layers,
either layer being a 2-dimensional hexagonal lattice of lipids. The lipid
tails were (almost) fully extended, allowing for easy inserting proteins
(most of which have nearly cylindric shape) into the membrane and, therefore,
reducing the required equilibration time. The distance between the layers
was set to fit the actual membrane thickness, and the lattice period was
set to fit the actual surface density of lipid molecules. Both parameters
depended on the lipid type; for many commonly used lipids, these parameters
are availbale from experiments (see, e.g., P. R. Rand's page).
To make the generated structure closer to the actual ones, some disorder
was introduced into the patches: random orientation of each lipid in the
membrane plane, and truncated Gaussian spread in the perpendicular direction.
More disorder was caused by a short (1ps) equilibration in vacuum, which
eliminated steric collisions among the lipid atoms but left most of lipid
tails extended. These features do not complicate inserting proteins into
the membrane but additionally reduce the required equilibration time.
Proper head group hydration may be critical for membrane properties and,
therefore, for function of membrane proteins. To properly hydrate the lipid
head groups, water shells are built around the lipids one by one. Since the
solvate plugin can only make use of a pre-equilibrated water box,
solvating was done using the Solvate
program by H. Gruebmuller. Then water molecules outside the lipid
dimensions and inside the hydrophobic layer (there were only a few) were
deleted. Therefore, the final patch structure was a slightly disordered lipid
bilayer with the lipid head groups solvated.
Plugin usage. The command syntax is simple and consistent with the
solvate plugin syntax. Run the following commands in the VMD console:
package require membrane
Running membrane
with no arguments gives a short overview of
the syntax. For actually generating a membrane, run membrane
as
follows:
membrane -l <lipid_name> -x <size_in_X> -y <size_in_Y>
{-o <output_prefix>} {-top <topology_type>}
Replace the contents of the angular brackets with the corresponding parameters:
- lipid_name can only be POPC or POPE at the moment. Other lipid
structures will be generated too.
- size_in_X and size_in_Y are the required membrane dimensions
in A. (The membrane is built in the XY plane).
- output_prefix is an optional parameter, which is simple the
output file name. By default, the generated files are named membrane.psf
and membrane.pdb.
- topology_type is an optional parameter, which specifies whether
to use CHARMM27 ("c27") or updated CHARMM36 ("c36") lipids. See
Klauda et al. (2010)
J. Phys. Chem. B. 114:7830-7843. for more details.
By default, c27 is used.
It takes about 20 seconds to generate an about 100x100A size membrane on
a PIII 766MHz laptop. Finally, a caveat: when doing further structural work,
make sure your topology file is compatible with the top_all27_prot_lipid.inp
topology file included in the membrane plugin. The complete set
of the Charmm27 topology and parameter files is available from
Alexander MacKerrell's page.