## biskit-general

 Re: [Biskit-general] Generation of protein conformers using BISKIT From: Raik Gruenberg - 2013-03-12 01:16:39 ```Hi Horacio, actually, for this problem, Biskit doesn't have a ready-made solution. The Biskit PDBModel is array-based. There is no built-in topology or connectivity information. So we don't have functions to turn around a certain bond. What you would have to do is something like this: 1) load PDB import Biskit as B m = B.PDBModel('your_file.pdb') 2) split the PDBModel into two, right at the bond you want to turn. E.g. if your bond is between atom 500 and atom 501 (first atom is 0) then: m1 = m.take( range(0,501) ) ## all from 0 .. (including) 500 m2 = m.take( range(501, len(m) ) ) ## all from 501 ... end 3) Now you have to calculate your rotation matrix yourself, sorry, can't help you with that. The coordinates of the first atom of m2 are: origin = m2.xyz[0] rotation = zeros( 3,3 ) .... now calculate your rotation matrix ... translation = numpy.array( [0.0, 0.0, 0.0]) # no translation 4) apply the rotation to second half of the PDB: m2 = m2.transform( rotation, translation ) 5) join the two models back together mfinal = m1.concat( m2 ) mfinal.writePdb( 'your_result.pdb') Actually, you can probably make things easier by centering your coordinates on the first atom after the bond (in step 1) m.xyz = m.xyz - m.xyz[501] If I am not messing this up, this should translate the coordinates such that atom 501 is (0,0,0) You still have to figure out how to create your rotation matrix. I am not mathematician enough for that. The nice thing is though that once you have a rotation matrix for a turn by 1 degree, you can just apply the same matrix in a loop 360 times. So yes, that's about as good as it gets with Biskit. UCSF Chimera has some model building options and is also python based. Perhaps you can find ready-to-go solution there. I didn't test the code I wrote up there, there might be typos or errors. Ah, and if you come up with a general solution, don't hesitate to send me your modification and I am happy to add a new method to PDBModel :-) Good luck! Greetings from Montreal, Raik On Mon, Mar 11, 2013 at 4:17 PM, Horacio Pérez-Sánchez wrote: > Good morning, > > I have recently read about BISKIT. For some publication that we have ready > to submit we need to add some calculations; for some PDB structures we need > to focus on a concrete dihedral angle and generate all conformations > (different pdb files for each new value of the angle) when we change that > angle by increments. I wonder where could I find just this exact information > (I do not need anything else), or if there is a tutorial that explains this > part. > > Thanks, > Horacio > > ============================================== > Horacio Pérez-Sánchez, PhD > Parallel Computer Architecture Group: http://www.um.es/gacop > School of Computer Science, University of Murcia (Spain) > Email: horacio@... > Tel: + 34 868 88 8509 > ============================================== > > > > -- -- ___________________________________ Raik Grünberg http://www.raiks.de/contact.html ___________________________________ ```