?? autotors.doc
字號:
Overall Structure of autotors consists of 4 phases: 1. Input Phase: a. Data about bonds in the molecule are used to constructa "TREE" -like structure. Each line of bond data consists of two integers corresponding to the line numbers (in the pdbq file) of the atoms involved. These integers are used as the 'id's of the atoms in the molecule. Once the new ids are read in, the pre-existing TREE is searched for ATOM_NODEs with either of these ids. If only one such node is found, an ATOM_NODE is created for the other id and linked to the already-entered node in the appropriate way. If the id of the pre-existing node was the first of the two integers on the line of bond data, one of the node's next links is set to the new node and one of the new node's prev links is set to the pre-existing node. In the other case, the opposite linking pattern is set. If neither id can be found in the member ids of ATOM_NODEs in the TREE, two new ATOM_NODEs are created, linked together in the appropriate way and held in a temporary data structure for later linking into the "TREE" in phase b. If both of the ids are already in the TREE, the two nodes with these ids are linked as appropriate. Moreover, this case signals the detection of a cycle and the existing TREE is processed to detect the members of this cycle and to store resulting information about the new cycle. The members of new cycle i are stored in two dimensional global array cycle[i].The number of members of cycle i is stored in cycle_size[i]. b. After all the bond data is entered, the program attempts to attachany pairs which had not been linked to pre-existing atoms. To do this, it searchsthrough the TREE AT MOST once for each id in input data, attempting to add eachunattached pair to the TREE. If any unattached pair remains after this process,the input data is flawed and the program exits early with an error message to that effect. 2. Root Specification Phase: After all the nodes are created and connected, in whatever order and direction the bond data specifies, the user interacts with the program to select the portion of the molecule to be considered the "ROOT." This is the section of the molecule which will remain rigid and NOT undergo any torsions. This phase has two parts: a. Cycles detected are listed on the screen. The user either selectsone of these cycles to be the root (by entering the appropriate number) OR selectsnone of them as the root (by entering "0"). b. The user can modify the list of root atoms at this point by adding atoms to the rootlist (by entering the atom "id."). The user leaves this phase by entering 'q' (to quit). If no root atoms are specified, a message to this effect is written tothe screen and the program will exit at this point. 3. TORSIONS Detection and Selection Phase: Once at least one root atom has been designated, the program nextprocesses the TREE, changing the direction of the links in the TREE as appropriate(so that all links previous to the root are previous and all nexts are nexts), andaccumulating a list of possible torsions which the user edits interactively. a. The TREE is "traverse"d in a depth-first order traversal at thispoint detecting possible torsions. Torsions cannot occur between root atoms NORbetween atoms in a cycle. Moreover, torsions are not permitted between atoms andtheir "leaves" (attached atoms which have no other connection). In the case of theuser-specified '-a' flag, amide bond torsions are not permitted. During thistraversal, a linked list of possible torsions is built. b. The user is given the list of the torsions detected in the moleculeand has an opportunity to modify this list. Torsions can be deleted OR selectedat this point.(Depending on whether only a few are to be deleted or if only a feware to be selected). The user leaves this phase by entering 'q' (for quit). 4. ROOT Expansion and Output Phase: The rest of program follows at this point with no further input fromthe user. The TREE is traversed again and the rootlist is expanded toinclude any atoms which are between the existing root section and "BRANCH"esas defined by active torsions. Next, the TREE is traversed and new_id numbers are assigned sequentially to the atoms in the TREE, starting with theroot. Finally, a last traversal through the TREE is made and output is writtento the file specified by the user on the command line. "REMARK" lines are written first describing each possible torsion and its status at the end of the program. Next, the expanded list of root atoms is output preceeded by a"ROOT" line and followed by an "ENDROOT" line. Last, the rest of atoms in the moleculeare output with appropriate "BRANCH", "TORS","ENDBRANCH" and "ENDTORS" lines inserted as dictated by active torsions. 2. The Command Line FLAGS: 1. -h This flag causes the program to detect non-polar hydrogens, that ishydrogen atoms bonded to carbon atoms, to merge the charge of each with the charge ofthe carbon to which it is bonded and to delete the line of output data pertainingto that hydrogen. At the end of the program, a count of the number of non-polarhydrogens which have been merged in this fashion is written to the screen. 2. -o This flag is used only in conjunction with the -h flag when the pdbq datais in the older format. It causes the program to obtain charge data from column 55instead of column 70. (Its use along with the -m flag is an error but is disregarded.) 3. -m This flag is used when the input file is of the "mol2" format (producedby SYBYL). When it is entered on the command line, the program uses only 1 file forboth kinds of input (the bond data input file and the pdbq data input file) anduses the second file specified for output. [If the user runs the program with the-m flag AND three file parameters on the command line, the first file will be openedfor reading the input needed by the program, the second opened for writing (andtherefore any information already in the file lost) and the third ignored.] 4. -a This flag causes the program to not allow torsions of amide bonds.
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -