From: DeLano, W. <wa...@su...> - 2002-07-19 17:47:49
|
At first I thought this was a bug, but after Russel sent me the files, = it turns out that this reveals an important concept for movie-making = with PyMOL... In order to make movies which associate atom identities through a = trajectory , you must specify unique identifiers for each atom. Just = the atomic elements aren't usually good enough since how will PyMOL know = which carbon in one from is associated with which carbon in the next? = Instead, each atom must have a unique combination of = (segi,chain,resn,resi,name). =20 An easy solution with small molecular systems is to simple load the = movie into discrete objects, where PyMOL doesn't attempt to associate = atoms and bonds between states. This is done with an optional argument = "discrete=3D1" on the first state which is loaded... load subnoh00.pdb,mov,discrete=3D1 load subnoh01.pdb,mov load subnoh02.pdb,mov load subnoh03.pdb,mov With discrete objects, if you click on a atom in one state, then PyMOL = won't know which atom corresponds to what in the next state, and so = you'll have to manually setup representation within each state if you = want anything fancy. =20 Also note that with discrete objects, atom and bond information is = replicated for every state. In contrast, normal objects share one pool = of atom, bond, and connectivity information across all states (but not = every atom needs to appear in each state), and normal objects only store = unique coordinates for each state. So, if you're using PyMOL to view = 250 frames of a 50,000 atom MD simulation, discrete objects would be = memory inefficient. However, if bonds are made/broken between states, = then you'll need to use a discrete object, or split the trajectory = across multiple objects. Take home lessons: - For trajectories with abiguous atom names, use discrete objects - For trajectories where bonds are made/broken, use discrete objects - For trajectories with static connectivity and unique names, use = discrete objects. - For large MD-simulations, use normal objects - For view docking results, use discrete objects=20 Cheers, Warren > I am attempting to make a movie from a series of 50 pdb=20 > files. When I load=20 > the files individually they work fine, however when I load=20 > the files into a=20 > movie using a series of "load file.pdb,mov" commands only the=20 > first 2 frames=20 > are correct. In frames 3 and higher the connections between=20 > atoms are drawn=20 > apparently randomly so that the effect is that of a pile of=20 > "pixie sticks"=20 > rather than a molecule. >=20 > I get this effect on two different machines running redhat=20 > 7.3, one using=20 > pymol 0.78, and another using the "easy install" pymol 0.83=20 > package for=20 > linux. >=20 > I have though about adding CONNECT records to the pdb files=20 > to force proper=20 > bonding, or perhaps I can use babel to put them into some=20 > other format that=20 > will work. |