<< Chapter < Page | Chapter >> Page > |
The cartesian coordinates you have just read will serve as a basis for performing rotations, according to what method you choose to represent and manipulate the protein, as discussed in class. The following guidelines should help you get started with either method:
trans_mat
with
backbone_chain(i, :)
as in
trans_mat * backbone_chain(i, :)'
. Note that the colon is very convenient as it gives an entire row or an entire column and that
backbone_chain(i, :)'
gives you the transpose that is necessary for the multiplication to be carried out.bonds, angles, dihedrals
). Once this is done, you have extracted a representation of the protein in its internal coordinates and can discard the cartesian coordinates, or keep the coordinates array to store the reconstructed protein after performing manipulations. The absolute position/orientation of the protein is not important and can be ignored by assuming the anchor atom rests at the origin and that the first bond angle and dihedral angle are both zero. Remember you can perform rotations now by simply adding/subtracting from the dihedral angles, but to recover the cartesian coordinates once the rotations are done you need to build a chain of homogeneous transformations as discussed in class.In any case, your transformation matrices need to have dimension 4x4 to work with homogeneous coordinates. You can initialize an empty 4x4 matrix by writing
trans_mat = zeros(4,4);
. Then you can set the elements of this matrix to what they should be for the particular method you use. You can evaluate all the cosines and sines that you need in Matlab. Matlab offers you built-in operations such as dot product or vector norm. Make sure that you understand these operations before you apply them. Recall that you can rotate any bond except the peptide bond, which is rigid.
If you wish to visualize the resulting conformations in VMD, you simply have to produce a file with the transformed coordinates. This file should be in ASCII (text) format and must have an empty/dummy first line, and all atom coordinates following (for example all in a single line, separated by spaces). You can save this file with ".crd" extension. Then, you can use the same "backbone_native.pdb" file, and use VMD's option "Load data into molecule" to load your new coordinates from the .crd file.
Notification Switch
Would you like to follow the 'Geometric methods in structural computational biology' conversation and receive update notifications?