diff --git a/6rqs.pdb b/6rqs.pdb new file mode 100644 index 0000000..94491f9 --- /dev/null +++ b/6rqs.pdb @@ -0,0 +1,4004 @@ +HEADER MEMBRANE PROTEIN 16-MAY-19 6RQS +TITLE RW16 PEPTIDE +COMPND MOL_ID: 1; +COMPND 2 MOLECULE: ARG-ARG-TRP-ARG-ARG-TRP-TRP-ARG-ARG-TRP-TRP-ARG-ARG-TRP- +COMPND 3 ARG-ARG; +COMPND 4 CHAIN: A; +COMPND 5 ENGINEERED: YES +SOURCE MOL_ID: 1; +SOURCE 2 SYNTHETIC: YES; +SOURCE 3 ORGANISM_SCIENTIFIC: SYNTHETIC CONSTRUCT; +SOURCE 4 ORGANISM_TAXID: 32630 +KEYWDS ARGININE, TRYPTOPHAN, MEMBRANE, CELL-PENETRATING, MEMBRANE PROTEIN +EXPDTA SOLUTION NMR +NUMMDL 10 +AUTHOR M.-L.JOBIN,A.GRELARD,I.ALVES,C.D.MACKERETH +REVDAT 1 23-OCT-19 6RQS 0 +JRNL AUTH M.L.JOBIN,L.VAMPARYS,R.DENIAU,A.GRELARD,C.D.MACKERETH, +JRNL AUTH 2 P.F.J.FUCHS,I.D.ALVES +JRNL TITL BIOPHYSICAL INSIGHT ON THE MEMBRANE INSERTION OF AN +JRNL TITL 2 ARGININE-RICH CELL-PENETRATING PEPTIDE. +JRNL REF INT J MOL SCI V. 20 2019 +JRNL REFN ESSN 1422-0067 +JRNL PMID 31505894 +JRNL DOI 10.3390/IJMS20184441 +REMARK 2 +REMARK 2 RESOLUTION. NOT APPLICABLE. +REMARK 3 +REMARK 3 REFINEMENT. +REMARK 3 PROGRAM : CNS 1.1, ARIA 1.2 +REMARK 3 AUTHORS : BRUNGER, ADAMS, CLORE, GROS, NILGES AND READ +REMARK 3 (CNS), LINGE, O'DONOGHUE AND NILGES (ARIA) +REMARK 3 +REMARK 3 OTHER REFINEMENT REMARKS: NULL +REMARK 4 +REMARK 4 6RQS COMPLIES WITH FORMAT V. 3.30, 13-JUL-11 +REMARK 100 +REMARK 100 THIS ENTRY HAS BEEN PROCESSED BY PDBE ON 16-MAY-19. +REMARK 100 THE DEPOSITION ID IS D_1292102412. +REMARK 210 +REMARK 210 EXPERIMENTAL DETAILS +REMARK 210 EXPERIMENT TYPE : NMR +REMARK 210 TEMPERATURE (KELVIN) : 310 +REMARK 210 PH : 5.5 +REMARK 210 IONIC STRENGTH : 50 +REMARK 210 PRESSURE : 1 ATM +REMARK 210 SAMPLE CONTENTS : 1 MM RW16 PEPTIDE, 60 MM [U-100% +REMARK 210 2H] DPC, 50 MM SODIUM PHOSPHATE, +REMARK 210 90% H2O/10% D2O +REMARK 210 +REMARK 210 NMR EXPERIMENTS CONDUCTED : 2D 1H-1H NOESY; 2D 1H-1H TOCSY; +REMARK 210 2D 1H-13C HSQC +REMARK 210 SPECTROMETER FIELD STRENGTH : 800 MHZ +REMARK 210 SPECTROMETER MODEL : AVANCE III +REMARK 210 SPECTROMETER MANUFACTURER : BRUKER +REMARK 210 +REMARK 210 STRUCTURE DETERMINATION. +REMARK 210 SOFTWARE USED : TOPSPIN 3.2, NMRPIPE, SPARKY +REMARK 210 3.113 +REMARK 210 METHOD USED : SIMULATED ANNEALING +REMARK 210 +REMARK 210 CONFORMERS, NUMBER CALCULATED : 50 +REMARK 210 CONFORMERS, NUMBER SUBMITTED : 10 +REMARK 210 CONFORMERS, SELECTION CRITERIA : STRUCTURES WITH THE LOWEST +REMARK 210 ENERGY +REMARK 210 +REMARK 210 BEST REPRESENTATIVE CONFORMER IN THIS ENSEMBLE : 1 +REMARK 210 +REMARK 210 REMARK: NULL +REMARK 215 +REMARK 215 NMR STUDY +REMARK 215 THE COORDINATES IN THIS ENTRY WERE GENERATED FROM SOLUTION +REMARK 215 NMR DATA. PROTEIN DATA BANK CONVENTIONS REQUIRE THAT +REMARK 215 CRYST1 AND SCALE RECORDS BE INCLUDED, BUT THE VALUES ON +REMARK 215 THESE RECORDS ARE MEANINGLESS. +REMARK 300 +REMARK 300 BIOMOLECULE: 1 +REMARK 300 SEE REMARK 350 FOR THE AUTHOR PROVIDED AND/OR PROGRAM +REMARK 300 GENERATED ASSEMBLY INFORMATION FOR THE STRUCTURE IN +REMARK 300 THIS ENTRY. THE REMARK MAY ALSO PROVIDE INFORMATION ON +REMARK 300 BURIED SURFACE AREA. +REMARK 350 +REMARK 350 COORDINATES FOR A COMPLETE MULTIMER REPRESENTING THE KNOWN +REMARK 350 BIOLOGICALLY SIGNIFICANT OLIGOMERIZATION STATE OF THE +REMARK 350 MOLECULE CAN BE GENERATED BY APPLYING BIOMT TRANSFORMATIONS +REMARK 350 GIVEN BELOW. BOTH NON-CRYSTALLOGRAPHIC AND +REMARK 350 CRYSTALLOGRAPHIC OPERATIONS ARE GIVEN. +REMARK 350 +REMARK 350 BIOMOLECULE: 1 +REMARK 350 AUTHOR DETERMINED BIOLOGICAL UNIT: MONOMERIC +REMARK 350 SOFTWARE DETERMINED QUATERNARY STRUCTURE: MONOMERIC +REMARK 350 SOFTWARE USED: PISA +REMARK 350 TOTAL BURIED SURFACE AREA: 0 ANGSTROM**2 +REMARK 350 SURFACE AREA OF THE COMPLEX: 2410 ANGSTROM**2 +REMARK 350 CHANGE IN SOLVENT FREE ENERGY: 0.0 KCAL/MOL +REMARK 350 APPLY THE FOLLOWING TO CHAINS: A +REMARK 350 BIOMT1 1 1.000000 0.000000 0.000000 0.00000 +REMARK 350 BIOMT2 1 0.000000 1.000000 0.000000 0.00000 +REMARK 350 BIOMT3 1 0.000000 0.000000 1.000000 0.00000 +REMARK 465 +REMARK 465 MISSING RESIDUES +REMARK 465 THE FOLLOWING RESIDUES WERE NOT LOCATED IN THE +REMARK 465 EXPERIMENT. (RES=RESIDUE NAME; C=CHAIN IDENTIFIER; +REMARK 465 SSSEQ=SEQUENCE NUMBER; I=INSERTION CODE.) +REMARK 465 MODELS 1-10 +REMARK 465 RES C SSSEQI +REMARK 465 BTN A -1 +REMARK 465 KFB A 0 +REMARK 900 +REMARK 900 RELATED ENTRIES +REMARK 900 RELATED ID: 34400 RELATED DB: BMRB +REMARK 900 RW16 PEPTIDE +DBREF 6RQS A -1 16 PDB 6RQS 6RQS -1 16 +SEQRES 1 A 18 BTN KFB ARG ARG TRP ARG ARG TRP TRP ARG ARG TRP TRP +SEQRES 2 A 18 ARG ARG TRP ARG ARG +HELIX 1 AA1 ARG A 1 ARG A 15 1 15 +CRYST1 1.000 1.000 1.000 90.00 90.00 90.00 P 1 1 +ORIGX1 1.000000 0.000000 0.000000 0.00000 +ORIGX2 0.000000 1.000000 0.000000 0.00000 +ORIGX3 0.000000 0.000000 1.000000 0.00000 +SCALE1 1.000000 0.000000 0.000000 0.00000 +SCALE2 0.000000 1.000000 0.000000 0.00000 +SCALE3 0.000000 0.000000 1.000000 0.00000 +MODEL 1 +ATOM 1 N ARG A 1 -11.625 -0.599 2.390 1.00 0.94 N +ATOM 2 CA ARG A 1 -10.947 0.351 1.517 1.00 0.72 C +ATOM 3 C ARG A 1 -10.064 -0.410 0.538 1.00 0.60 C +ATOM 4 O ARG A 1 -8.936 -0.781 0.870 1.00 0.64 O +ATOM 5 CB ARG A 1 -10.107 1.337 2.336 1.00 1.24 C +ATOM 6 CG ARG A 1 -10.891 2.049 3.424 1.00 1.81 C +ATOM 7 CD ARG A 1 -12.049 2.842 2.849 1.00 2.42 C +ATOM 8 NE ARG A 1 -12.883 3.420 3.893 1.00 3.29 N +ATOM 9 CZ ARG A 1 -13.510 4.586 3.779 1.00 4.10 C +ATOM 10 NH1 ARG A 1 -13.344 5.324 2.687 1.00 4.22 N +ATOM 11 NH2 ARG A 1 -14.285 5.019 4.762 1.00 5.01 N +ATOM 12 H ARG A 1 -11.118 -1.042 3.101 1.00 1.36 H +ATOM 13 HA ARG A 1 -11.702 0.895 0.964 1.00 0.90 H +ATOM 14 HB2 ARG A 1 -9.295 0.800 2.805 1.00 1.52 H +ATOM 15 HB3 ARG A 1 -9.699 2.082 1.671 1.00 1.64 H +ATOM 16 HG2 ARG A 1 -11.279 1.315 4.114 1.00 2.17 H +ATOM 17 HG3 ARG A 1 -10.230 2.726 3.948 1.00 2.13 H +ATOM 18 HD2 ARG A 1 -11.653 3.636 2.236 1.00 2.35 H +ATOM 19 HD3 ARG A 1 -12.653 2.184 2.240 1.00 2.78 H +ATOM 20 HE ARG A 1 -12.990 2.896 4.726 1.00 3.48 H +ATOM 21 HH11 ARG A 1 -12.748 5.005 1.951 1.00 3.76 H +ATOM 22 HH12 ARG A 1 -13.819 6.204 2.594 1.00 4.94 H +ATOM 23 HH21 ARG A 1 -14.408 4.465 5.594 1.00 5.16 H +ATOM 24 HH22 ARG A 1 -14.754 5.909 4.684 1.00 5.67 H +ATOM 25 N ARG A 2 -10.590 -0.661 -0.657 1.00 0.54 N +ATOM 26 CA ARG A 2 -9.906 -1.495 -1.645 1.00 0.51 C +ATOM 27 C ARG A 2 -8.531 -0.942 -2.021 1.00 0.39 C +ATOM 28 O ARG A 2 -7.599 -1.700 -2.277 1.00 0.41 O +ATOM 29 CB ARG A 2 -10.770 -1.682 -2.903 1.00 0.59 C +ATOM 30 CG ARG A 2 -10.828 -0.483 -3.849 1.00 1.27 C +ATOM 31 CD ARG A 2 -11.654 0.665 -3.295 1.00 2.13 C +ATOM 32 NE ARG A 2 -11.756 1.764 -4.249 1.00 2.80 N +ATOM 33 CZ ARG A 2 -12.760 2.638 -4.279 1.00 3.73 C +ATOM 34 NH1 ARG A 2 -13.766 2.542 -3.414 1.00 4.17 N +ATOM 35 NH2 ARG A 2 -12.754 3.608 -5.178 1.00 4.44 N +ATOM 36 H ARG A 2 -11.478 -0.297 -0.873 1.00 0.59 H +ATOM 37 HA ARG A 2 -9.761 -2.459 -1.191 1.00 0.60 H +ATOM 38 HB2 ARG A 2 -10.384 -2.518 -3.464 1.00 0.87 H +ATOM 39 HB3 ARG A 2 -11.778 -1.908 -2.589 1.00 1.05 H +ATOM 40 HG2 ARG A 2 -9.825 -0.130 -4.023 1.00 1.80 H +ATOM 41 HG3 ARG A 2 -11.261 -0.803 -4.786 1.00 1.44 H +ATOM 42 HD2 ARG A 2 -12.644 0.301 -3.069 1.00 2.58 H +ATOM 43 HD3 ARG A 2 -11.187 1.029 -2.392 1.00 2.36 H +ATOM 44 HE ARG A 2 -11.030 1.854 -4.917 1.00 2.78 H +ATOM 45 HH11 ARG A 2 -13.777 1.807 -2.733 1.00 3.85 H +ATOM 46 HH12 ARG A 2 -14.519 3.209 -3.437 1.00 4.97 H +ATOM 47 HH21 ARG A 2 -11.995 3.686 -5.828 1.00 4.37 H +ATOM 48 HH22 ARG A 2 -13.517 4.264 -5.221 1.00 5.17 H +ATOM 49 N TRP A 3 -8.400 0.373 -2.039 1.00 0.34 N +ATOM 50 CA TRP A 3 -7.143 0.996 -2.437 1.00 0.29 C +ATOM 51 C TRP A 3 -6.071 0.832 -1.361 1.00 0.22 C +ATOM 52 O TRP A 3 -4.887 0.732 -1.666 1.00 0.20 O +ATOM 53 CB TRP A 3 -7.345 2.472 -2.801 1.00 0.42 C +ATOM 54 CG TRP A 3 -7.972 3.301 -1.722 1.00 0.53 C +ATOM 55 CD1 TRP A 3 -9.302 3.404 -1.438 1.00 0.60 C +ATOM 56 CD2 TRP A 3 -7.297 4.167 -0.805 1.00 0.65 C +ATOM 57 NE1 TRP A 3 -9.495 4.274 -0.395 1.00 0.75 N +ATOM 58 CE2 TRP A 3 -8.279 4.755 0.013 1.00 0.79 C +ATOM 59 CE3 TRP A 3 -5.956 4.498 -0.592 1.00 0.67 C +ATOM 60 CZ2 TRP A 3 -7.962 5.658 1.026 1.00 0.95 C +ATOM 61 CZ3 TRP A 3 -5.642 5.393 0.413 1.00 0.83 C +ATOM 62 CH2 TRP A 3 -6.641 5.964 1.213 1.00 0.96 C +ATOM 63 H TRP A 3 -9.159 0.932 -1.782 1.00 0.39 H +ATOM 64 HA TRP A 3 -6.806 0.472 -3.320 1.00 0.31 H +ATOM 65 HB2 TRP A 3 -6.385 2.910 -3.033 1.00 0.44 H +ATOM 66 HB3 TRP A 3 -7.978 2.531 -3.675 1.00 0.48 H +ATOM 67 HD1 TRP A 3 -10.079 2.871 -1.964 1.00 0.57 H +ATOM 68 HE1 TRP A 3 -10.364 4.519 -0.007 1.00 0.84 H +ATOM 69 HE3 TRP A 3 -5.169 4.068 -1.195 1.00 0.59 H +ATOM 70 HZ2 TRP A 3 -8.718 6.105 1.653 1.00 1.06 H +ATOM 71 HZ3 TRP A 3 -4.610 5.657 0.591 1.00 0.86 H +ATOM 72 HH2 TRP A 3 -6.348 6.657 1.989 1.00 1.10 H +ATOM 73 N ARG A 4 -6.494 0.784 -0.101 1.00 0.25 N +ATOM 74 CA ARG A 4 -5.575 0.577 1.016 1.00 0.26 C +ATOM 75 C ARG A 4 -4.880 -0.775 0.910 1.00 0.20 C +ATOM 76 O ARG A 4 -3.756 -0.949 1.390 1.00 0.22 O +ATOM 77 CB ARG A 4 -6.299 0.715 2.354 1.00 0.39 C +ATOM 78 CG ARG A 4 -6.657 2.155 2.701 1.00 0.93 C +ATOM 79 CD ARG A 4 -5.414 3.012 2.937 1.00 0.78 C +ATOM 80 NE ARG A 4 -4.633 2.550 4.088 1.00 0.93 N +ATOM 81 CZ ARG A 4 -4.748 3.054 5.316 1.00 1.11 C +ATOM 82 NH1 ARG A 4 -5.661 3.982 5.575 1.00 1.09 N +ATOM 83 NH2 ARG A 4 -3.966 2.604 6.292 1.00 1.91 N +ATOM 84 H ARG A 4 -7.449 0.884 0.081 1.00 0.33 H +ATOM 85 HA ARG A 4 -4.823 1.344 0.956 1.00 0.29 H +ATOM 86 HB2 ARG A 4 -7.212 0.137 2.321 1.00 0.67 H +ATOM 87 HB3 ARG A 4 -5.663 0.326 3.133 1.00 0.82 H +ATOM 88 HG2 ARG A 4 -7.221 2.581 1.884 1.00 1.41 H +ATOM 89 HG3 ARG A 4 -7.261 2.162 3.596 1.00 1.45 H +ATOM 90 HD2 ARG A 4 -4.792 2.974 2.052 1.00 1.29 H +ATOM 91 HD3 ARG A 4 -5.723 4.034 3.110 1.00 1.06 H +ATOM 92 HE ARG A 4 -3.975 1.835 3.930 1.00 1.46 H +ATOM 93 HH11 ARG A 4 -6.278 4.306 4.847 1.00 1.34 H +ATOM 94 HH12 ARG A 4 -5.743 4.373 6.499 1.00 1.35 H +ATOM 95 HH21 ARG A 4 -3.286 1.881 6.103 1.00 2.46 H +ATOM 96 HH22 ARG A 4 -4.050 2.976 7.224 1.00 2.10 H +ATOM 97 N ARG A 5 -5.560 -1.729 0.294 1.00 0.22 N +ATOM 98 CA ARG A 5 -4.985 -3.041 0.041 1.00 0.29 C +ATOM 99 C ARG A 5 -3.695 -2.905 -0.772 1.00 0.25 C +ATOM 100 O ARG A 5 -2.658 -3.463 -0.410 1.00 0.32 O +ATOM 101 CB ARG A 5 -5.992 -3.922 -0.703 1.00 0.37 C +ATOM 102 CG ARG A 5 -5.468 -5.303 -1.055 1.00 0.90 C +ATOM 103 CD ARG A 5 -6.516 -6.113 -1.809 1.00 0.89 C +ATOM 104 NE ARG A 5 -6.013 -7.430 -2.207 1.00 1.49 N +ATOM 105 CZ ARG A 5 -6.451 -8.108 -3.273 1.00 1.77 C +ATOM 106 NH1 ARG A 5 -7.443 -7.625 -4.014 1.00 1.45 N +ATOM 107 NH2 ARG A 5 -5.911 -9.279 -3.581 1.00 2.70 N +ATOM 108 H ARG A 5 -6.475 -1.538 -0.008 1.00 0.24 H +ATOM 109 HA ARG A 5 -4.751 -3.491 0.993 1.00 0.37 H +ATOM 110 HB2 ARG A 5 -6.869 -4.043 -0.086 1.00 0.92 H +ATOM 111 HB3 ARG A 5 -6.275 -3.426 -1.621 1.00 0.72 H +ATOM 112 HG2 ARG A 5 -4.591 -5.196 -1.675 1.00 1.29 H +ATOM 113 HG3 ARG A 5 -5.207 -5.821 -0.143 1.00 1.42 H +ATOM 114 HD2 ARG A 5 -7.377 -6.246 -1.173 1.00 1.52 H +ATOM 115 HD3 ARG A 5 -6.805 -5.569 -2.696 1.00 0.93 H +ATOM 116 HE ARG A 5 -5.304 -7.825 -1.652 1.00 2.03 H +ATOM 117 HH11 ARG A 5 -7.873 -6.756 -3.777 1.00 1.37 H +ATOM 118 HH12 ARG A 5 -7.761 -8.132 -4.829 1.00 1.73 H +ATOM 119 HH21 ARG A 5 -5.171 -9.660 -3.011 1.00 3.26 H +ATOM 120 HH22 ARG A 5 -6.239 -9.795 -4.383 1.00 2.93 H +ATOM 121 N TRP A 6 -3.768 -2.157 -1.868 1.00 0.21 N +ATOM 122 CA TRP A 6 -2.602 -1.902 -2.710 1.00 0.27 C +ATOM 123 C TRP A 6 -1.654 -0.918 -2.024 1.00 0.22 C +ATOM 124 O TRP A 6 -0.439 -0.984 -2.197 1.00 0.26 O +ATOM 125 CB TRP A 6 -3.036 -1.339 -4.066 1.00 0.34 C +ATOM 126 CG TRP A 6 -4.150 -2.111 -4.710 1.00 0.35 C +ATOM 127 CD1 TRP A 6 -4.188 -3.451 -4.958 1.00 0.43 C +ATOM 128 CD2 TRP A 6 -5.388 -1.579 -5.190 1.00 0.34 C +ATOM 129 NE1 TRP A 6 -5.372 -3.782 -5.564 1.00 0.49 N +ATOM 130 CE2 TRP A 6 -6.126 -2.652 -5.718 1.00 0.43 C +ATOM 131 CE3 TRP A 6 -5.943 -0.296 -5.226 1.00 0.32 C +ATOM 132 CZ2 TRP A 6 -7.393 -2.482 -6.274 1.00 0.48 C +ATOM 133 CZ3 TRP A 6 -7.199 -0.128 -5.776 1.00 0.37 C +ATOM 134 CH2 TRP A 6 -7.913 -1.216 -6.294 1.00 0.44 C +ATOM 135 H TRP A 6 -4.629 -1.761 -2.117 1.00 0.19 H +ATOM 136 HA TRP A 6 -2.087 -2.839 -2.865 1.00 0.34 H +ATOM 137 HB2 TRP A 6 -3.373 -0.322 -3.933 1.00 0.34 H +ATOM 138 HB3 TRP A 6 -2.191 -1.346 -4.740 1.00 0.47 H +ATOM 139 HD1 TRP A 6 -3.396 -4.139 -4.712 1.00 0.48 H +ATOM 140 HE1 TRP A 6 -5.632 -4.678 -5.840 1.00 0.58 H +ATOM 141 HE3 TRP A 6 -5.408 0.556 -4.829 1.00 0.32 H +ATOM 142 HZ2 TRP A 6 -7.955 -3.309 -6.674 1.00 0.57 H +ATOM 143 HZ3 TRP A 6 -7.645 0.856 -5.808 1.00 0.39 H +ATOM 144 HH2 TRP A 6 -8.893 -1.040 -6.713 1.00 0.50 H +ATOM 145 N TRP A 7 -2.242 -0.005 -1.259 1.00 0.17 N +ATOM 146 CA TRP A 7 -1.507 1.011 -0.503 1.00 0.18 C +ATOM 147 C TRP A 7 -0.410 0.385 0.355 1.00 0.16 C +ATOM 148 O TRP A 7 0.756 0.770 0.262 1.00 0.19 O +ATOM 149 CB TRP A 7 -2.496 1.780 0.382 1.00 0.20 C +ATOM 150 CG TRP A 7 -1.906 2.906 1.171 1.00 0.34 C +ATOM 151 CD1 TRP A 7 -1.329 2.832 2.406 1.00 0.44 C +ATOM 152 CD2 TRP A 7 -1.870 4.282 0.790 1.00 0.51 C +ATOM 153 NE1 TRP A 7 -0.927 4.081 2.809 1.00 0.62 N +ATOM 154 CE2 TRP A 7 -1.251 4.986 1.836 1.00 0.65 C +ATOM 155 CE3 TRP A 7 -2.299 4.988 -0.340 1.00 0.62 C +ATOM 156 CZ2 TRP A 7 -1.054 6.362 1.790 1.00 0.85 C +ATOM 157 CZ3 TRP A 7 -2.102 6.352 -0.385 1.00 0.81 C +ATOM 158 CH2 TRP A 7 -1.485 7.028 0.676 1.00 0.91 C +ATOM 159 H TRP A 7 -3.224 -0.002 -1.213 1.00 0.17 H +ATOM 160 HA TRP A 7 -1.055 1.698 -1.204 1.00 0.25 H +ATOM 161 HB2 TRP A 7 -3.269 2.198 -0.245 1.00 0.28 H +ATOM 162 HB3 TRP A 7 -2.949 1.089 1.080 1.00 0.20 H +ATOM 163 HD1 TRP A 7 -1.208 1.919 2.969 1.00 0.45 H +ATOM 164 HE1 TRP A 7 -0.482 4.290 3.655 1.00 0.74 H +ATOM 165 HE3 TRP A 7 -2.776 4.484 -1.167 1.00 0.59 H +ATOM 166 HZ2 TRP A 7 -0.585 6.897 2.600 1.00 0.97 H +ATOM 167 HZ3 TRP A 7 -2.431 6.916 -1.249 1.00 0.92 H +ATOM 168 HH2 TRP A 7 -1.354 8.095 0.600 1.00 1.07 H +ATOM 169 N ARG A 8 -0.776 -0.584 1.186 1.00 0.16 N +ATOM 170 CA ARG A 8 0.201 -1.226 2.052 1.00 0.22 C +ATOM 171 C ARG A 8 1.162 -2.101 1.239 1.00 0.20 C +ATOM 172 O ARG A 8 2.326 -2.261 1.612 1.00 0.23 O +ATOM 173 CB ARG A 8 -0.472 -2.025 3.178 1.00 0.36 C +ATOM 174 CG ARG A 8 -1.285 -3.223 2.723 1.00 0.93 C +ATOM 175 CD ARG A 8 -1.737 -4.047 3.917 1.00 1.11 C +ATOM 176 NE ARG A 8 -2.484 -5.243 3.530 1.00 1.71 N +ATOM 177 CZ ARG A 8 -2.072 -6.484 3.789 1.00 2.38 C +ATOM 178 NH1 ARG A 8 -0.893 -6.678 4.366 1.00 2.43 N +ATOM 179 NH2 ARG A 8 -2.829 -7.530 3.466 1.00 3.45 N +ATOM 180 H ARG A 8 -1.716 -0.865 1.223 1.00 0.16 H +ATOM 181 HA ARG A 8 0.783 -0.432 2.501 1.00 0.28 H +ATOM 182 HB2 ARG A 8 0.294 -2.379 3.850 1.00 1.17 H +ATOM 183 HB3 ARG A 8 -1.129 -1.360 3.723 1.00 1.04 H +ATOM 184 HG2 ARG A 8 -2.154 -2.878 2.183 1.00 1.48 H +ATOM 185 HG3 ARG A 8 -0.675 -3.840 2.077 1.00 1.64 H +ATOM 186 HD2 ARG A 8 -0.865 -4.352 4.476 1.00 1.70 H +ATOM 187 HD3 ARG A 8 -2.366 -3.431 4.545 1.00 1.56 H +ATOM 188 HE ARG A 8 -3.346 -5.110 3.081 1.00 2.17 H +ATOM 189 HH11 ARG A 8 -0.315 -5.898 4.606 1.00 2.23 H +ATOM 190 HH12 ARG A 8 -0.573 -7.613 4.570 1.00 3.07 H +ATOM 191 HH21 ARG A 8 -3.717 -7.395 3.024 1.00 3.87 H +ATOM 192 HH22 ARG A 8 -2.513 -8.459 3.672 1.00 4.01 H +ATOM 193 N ARG A 9 0.672 -2.654 0.126 1.00 0.21 N +ATOM 194 CA ARG A 9 1.523 -3.398 -0.803 1.00 0.25 C +ATOM 195 C ARG A 9 2.660 -2.510 -1.293 1.00 0.21 C +ATOM 196 O ARG A 9 3.836 -2.859 -1.187 1.00 0.26 O +ATOM 197 CB ARG A 9 0.711 -3.878 -2.007 1.00 0.33 C +ATOM 198 CG ARG A 9 -0.107 -5.131 -1.771 1.00 1.21 C +ATOM 199 CD ARG A 9 -0.878 -5.498 -3.031 1.00 1.46 C +ATOM 200 NE ARG A 9 -1.415 -6.857 -2.991 1.00 2.08 N +ATOM 201 CZ ARG A 9 -1.818 -7.523 -4.072 1.00 2.69 C +ATOM 202 NH1 ARG A 9 -1.816 -6.936 -5.262 1.00 2.94 N +ATOM 203 NH2 ARG A 9 -2.224 -8.779 -3.967 1.00 3.48 N +ATOM 204 H ARG A 9 -0.280 -2.543 -0.083 1.00 0.22 H +ATOM 205 HA ARG A 9 1.931 -4.251 -0.288 1.00 0.30 H +ATOM 206 HB2 ARG A 9 0.033 -3.092 -2.289 1.00 0.74 H +ATOM 207 HB3 ARG A 9 1.386 -4.067 -2.829 1.00 0.93 H +ATOM 208 HG2 ARG A 9 0.555 -5.943 -1.512 1.00 1.80 H +ATOM 209 HG3 ARG A 9 -0.806 -4.954 -0.967 1.00 1.91 H +ATOM 210 HD2 ARG A 9 -1.695 -4.803 -3.150 1.00 1.70 H +ATOM 211 HD3 ARG A 9 -0.212 -5.413 -3.876 1.00 1.90 H +ATOM 212 HE ARG A 9 -1.446 -7.308 -2.110 1.00 2.43 H +ATOM 213 HH11 ARG A 9 -1.516 -5.979 -5.361 1.00 2.79 H +ATOM 214 HH12 ARG A 9 -2.107 -7.456 -6.081 1.00 3.57 H +ATOM 215 HH21 ARG A 9 -2.230 -9.236 -3.073 1.00 3.76 H +ATOM 216 HH22 ARG A 9 -2.527 -9.279 -4.785 1.00 3.99 H +ATOM 217 N TRP A 10 2.282 -1.352 -1.820 1.00 0.18 N +ATOM 218 CA TRP A 10 3.237 -0.365 -2.301 1.00 0.18 C +ATOM 219 C TRP A 10 4.218 0.031 -1.205 1.00 0.15 C +ATOM 220 O TRP A 10 5.432 0.069 -1.431 1.00 0.15 O +ATOM 221 CB TRP A 10 2.483 0.870 -2.813 1.00 0.24 C +ATOM 222 CG TRP A 10 3.249 2.151 -2.673 1.00 0.27 C +ATOM 223 CD1 TRP A 10 3.111 3.074 -1.678 1.00 0.32 C +ATOM 224 CD2 TRP A 10 4.269 2.650 -3.543 1.00 0.33 C +ATOM 225 NE1 TRP A 10 3.986 4.109 -1.869 1.00 0.39 N +ATOM 226 CE2 TRP A 10 4.706 3.876 -3.010 1.00 0.39 C +ATOM 227 CE3 TRP A 10 4.852 2.181 -4.715 1.00 0.39 C +ATOM 228 CZ2 TRP A 10 5.703 4.636 -3.608 1.00 0.48 C +ATOM 229 CZ3 TRP A 10 5.841 2.936 -5.313 1.00 0.49 C +ATOM 230 CH2 TRP A 10 6.258 4.152 -4.758 1.00 0.53 C +ATOM 231 H TRP A 10 1.320 -1.149 -1.881 1.00 0.20 H +ATOM 232 HA TRP A 10 3.787 -0.803 -3.118 1.00 0.19 H +ATOM 233 HB2 TRP A 10 2.256 0.733 -3.860 1.00 0.29 H +ATOM 234 HB3 TRP A 10 1.560 0.971 -2.260 1.00 0.27 H +ATOM 235 HD1 TRP A 10 2.418 2.982 -0.857 1.00 0.36 H +ATOM 236 HE1 TRP A 10 4.075 4.892 -1.287 1.00 0.45 H +ATOM 237 HE3 TRP A 10 4.545 1.246 -5.151 1.00 0.39 H +ATOM 238 HZ2 TRP A 10 6.039 5.572 -3.186 1.00 0.54 H +ATOM 239 HZ3 TRP A 10 6.303 2.588 -6.223 1.00 0.57 H +ATOM 240 HH2 TRP A 10 7.031 4.709 -5.260 1.00 0.62 H +ATOM 241 N TRP A 11 3.682 0.316 -0.025 1.00 0.16 N +ATOM 242 CA TRP A 11 4.484 0.751 1.107 1.00 0.17 C +ATOM 243 C TRP A 11 5.551 -0.285 1.429 1.00 0.14 C +ATOM 244 O TRP A 11 6.747 0.022 1.423 1.00 0.18 O +ATOM 245 CB TRP A 11 3.576 0.968 2.323 1.00 0.23 C +ATOM 246 CG TRP A 11 4.078 1.996 3.288 1.00 0.36 C +ATOM 247 CD1 TRP A 11 3.483 3.185 3.602 1.00 0.48 C +ATOM 248 CD2 TRP A 11 5.278 1.931 4.066 1.00 0.43 C +ATOM 249 NE1 TRP A 11 4.248 3.864 4.524 1.00 0.61 N +ATOM 250 CE2 TRP A 11 5.353 3.109 4.829 1.00 0.58 C +ATOM 251 CE3 TRP A 11 6.292 0.987 4.189 1.00 0.44 C +ATOM 252 CZ2 TRP A 11 6.409 3.362 5.703 1.00 0.71 C +ATOM 253 CZ3 TRP A 11 7.339 1.235 5.053 1.00 0.57 C +ATOM 254 CH2 TRP A 11 7.391 2.411 5.801 1.00 0.69 C +ATOM 255 H TRP A 11 2.708 0.229 0.088 1.00 0.19 H +ATOM 256 HA TRP A 11 4.967 1.679 0.854 1.00 0.20 H +ATOM 257 HB2 TRP A 11 2.599 1.280 1.984 1.00 0.28 H +ATOM 258 HB3 TRP A 11 3.481 0.032 2.855 1.00 0.24 H +ATOM 259 HD1 TRP A 11 2.552 3.531 3.174 1.00 0.51 H +ATOM 260 HE1 TRP A 11 4.032 4.741 4.907 1.00 0.72 H +ATOM 261 HE3 TRP A 11 6.268 0.074 3.612 1.00 0.37 H +ATOM 262 HZ2 TRP A 11 6.462 4.265 6.287 1.00 0.83 H +ATOM 263 HZ3 TRP A 11 8.134 0.512 5.160 1.00 0.61 H +ATOM 264 HH2 TRP A 11 8.233 2.563 6.458 1.00 0.80 H +ATOM 265 N ARG A 12 5.106 -1.512 1.680 1.00 0.16 N +ATOM 266 CA ARG A 12 5.989 -2.595 2.092 1.00 0.22 C +ATOM 267 C ARG A 12 7.020 -2.912 1.004 1.00 0.21 C +ATOM 268 O ARG A 12 8.138 -3.340 1.291 1.00 0.27 O +ATOM 269 CB ARG A 12 5.150 -3.835 2.415 1.00 0.33 C +ATOM 270 CG ARG A 12 5.887 -4.902 3.207 1.00 1.49 C +ATOM 271 CD ARG A 12 6.456 -4.344 4.502 1.00 1.87 C +ATOM 272 NE ARG A 12 5.432 -3.709 5.336 1.00 2.29 N +ATOM 273 CZ ARG A 12 5.673 -2.688 6.153 1.00 2.74 C +ATOM 274 NH1 ARG A 12 6.867 -2.119 6.173 1.00 3.00 N +ATOM 275 NH2 ARG A 12 4.708 -2.206 6.925 1.00 3.27 N +ATOM 276 H ARG A 12 4.144 -1.699 1.583 1.00 0.19 H +ATOM 277 HA ARG A 12 6.508 -2.283 2.984 1.00 0.27 H +ATOM 278 HB2 ARG A 12 4.289 -3.529 2.988 1.00 0.95 H +ATOM 279 HB3 ARG A 12 4.813 -4.278 1.487 1.00 0.86 H +ATOM 280 HG2 ARG A 12 5.198 -5.698 3.442 1.00 2.00 H +ATOM 281 HG3 ARG A 12 6.696 -5.290 2.606 1.00 2.03 H +ATOM 282 HD2 ARG A 12 6.903 -5.154 5.060 1.00 2.25 H +ATOM 283 HD3 ARG A 12 7.215 -3.613 4.261 1.00 1.95 H +ATOM 284 HE ARG A 12 4.517 -4.080 5.297 1.00 2.50 H +ATOM 285 HH11 ARG A 12 7.602 -2.452 5.562 1.00 2.91 H +ATOM 286 HH12 ARG A 12 7.053 -1.355 6.795 1.00 3.51 H +ATOM 287 HH21 ARG A 12 3.787 -2.608 6.895 1.00 3.44 H +ATOM 288 HH22 ARG A 12 4.897 -1.436 7.544 1.00 3.66 H +ATOM 289 N ARG A 13 6.627 -2.724 -0.247 1.00 0.18 N +ATOM 290 CA ARG A 13 7.524 -2.946 -1.375 1.00 0.22 C +ATOM 291 C ARG A 13 8.579 -1.852 -1.498 1.00 0.21 C +ATOM 292 O ARG A 13 9.779 -2.120 -1.400 1.00 0.25 O +ATOM 293 CB ARG A 13 6.737 -3.037 -2.685 1.00 0.28 C +ATOM 294 CG ARG A 13 6.249 -4.435 -3.025 1.00 0.93 C +ATOM 295 CD ARG A 13 7.415 -5.401 -3.194 1.00 1.38 C +ATOM 296 NE ARG A 13 8.414 -4.893 -4.138 1.00 1.86 N +ATOM 297 CZ ARG A 13 9.704 -5.232 -4.113 1.00 2.76 C +ATOM 298 NH1 ARG A 13 10.144 -6.115 -3.229 1.00 3.47 N +ATOM 299 NH2 ARG A 13 10.554 -4.702 -4.989 1.00 3.35 N +ATOM 300 H ARG A 13 5.707 -2.429 -0.419 1.00 0.17 H +ATOM 301 HA ARG A 13 8.028 -3.884 -1.216 1.00 0.28 H +ATOM 302 HB2 ARG A 13 5.880 -2.387 -2.624 1.00 0.66 H +ATOM 303 HB3 ARG A 13 7.376 -2.702 -3.485 1.00 0.82 H +ATOM 304 HG2 ARG A 13 5.612 -4.789 -2.229 1.00 1.57 H +ATOM 305 HG3 ARG A 13 5.688 -4.397 -3.949 1.00 1.64 H +ATOM 306 HD2 ARG A 13 7.885 -5.552 -2.233 1.00 2.01 H +ATOM 307 HD3 ARG A 13 7.036 -6.345 -3.559 1.00 1.74 H +ATOM 308 HE ARG A 13 8.104 -4.255 -4.819 1.00 1.99 H +ATOM 309 HH11 ARG A 13 9.505 -6.541 -2.572 1.00 3.38 H +ATOM 310 HH12 ARG A 13 11.120 -6.357 -3.197 1.00 4.31 H +ATOM 311 HH21 ARG A 13 10.232 -4.043 -5.676 1.00 3.32 H +ATOM 312 HH22 ARG A 13 11.527 -4.953 -4.963 1.00 4.06 H +ATOM 313 N TRP A 14 8.130 -0.630 -1.743 1.00 0.20 N +ATOM 314 CA TRP A 14 9.034 0.456 -2.087 1.00 0.24 C +ATOM 315 C TRP A 14 9.805 0.986 -0.879 1.00 0.21 C +ATOM 316 O TRP A 14 11.036 1.020 -0.889 1.00 0.27 O +ATOM 317 CB TRP A 14 8.267 1.591 -2.760 1.00 0.31 C +ATOM 318 CG TRP A 14 9.160 2.550 -3.493 1.00 0.42 C +ATOM 319 CD1 TRP A 14 9.546 2.468 -4.801 1.00 0.54 C +ATOM 320 CD2 TRP A 14 9.776 3.735 -2.967 1.00 0.48 C +ATOM 321 NE1 TRP A 14 10.374 3.517 -5.115 1.00 0.64 N +ATOM 322 CE2 TRP A 14 10.523 4.312 -4.010 1.00 0.60 C +ATOM 323 CE3 TRP A 14 9.768 4.364 -1.718 1.00 0.49 C +ATOM 324 CZ2 TRP A 14 11.252 5.484 -3.842 1.00 0.70 C +ATOM 325 CZ3 TRP A 14 10.491 5.529 -1.555 1.00 0.62 C +ATOM 326 CH2 TRP A 14 11.222 6.077 -2.611 1.00 0.71 C +ATOM 327 H TRP A 14 7.165 -0.450 -1.679 1.00 0.19 H +ATOM 328 HA TRP A 14 9.748 0.067 -2.792 1.00 0.30 H +ATOM 329 HB2 TRP A 14 7.567 1.174 -3.471 1.00 0.37 H +ATOM 330 HB3 TRP A 14 7.722 2.147 -2.010 1.00 0.26 H +ATOM 331 HD1 TRP A 14 9.248 1.679 -5.476 1.00 0.59 H +ATOM 332 HE1 TRP A 14 10.787 3.674 -5.992 1.00 0.74 H +ATOM 333 HE3 TRP A 14 9.208 3.953 -0.885 1.00 0.44 H +ATOM 334 HZ2 TRP A 14 11.823 5.921 -4.645 1.00 0.80 H +ATOM 335 HZ3 TRP A 14 10.493 6.032 -0.602 1.00 0.67 H +ATOM 336 HH2 TRP A 14 11.770 6.989 -2.436 1.00 0.80 H +ATOM 337 N ARG A 15 9.081 1.413 0.150 1.00 0.20 N +ATOM 338 CA ARG A 15 9.699 2.114 1.270 1.00 0.22 C +ATOM 339 C ARG A 15 10.512 1.155 2.136 1.00 0.26 C +ATOM 340 O ARG A 15 11.738 1.272 2.198 1.00 0.44 O +ATOM 341 CB ARG A 15 8.637 2.836 2.105 1.00 0.41 C +ATOM 342 CG ARG A 15 8.130 4.129 1.479 1.00 0.57 C +ATOM 343 CD ARG A 15 7.175 3.873 0.321 1.00 0.40 C +ATOM 344 NE ARG A 15 6.826 5.109 -0.383 1.00 0.46 N +ATOM 345 CZ ARG A 15 5.970 6.019 0.083 1.00 0.82 C +ATOM 346 NH1 ARG A 15 5.319 5.810 1.222 1.00 1.35 N +ATOM 347 NH2 ARG A 15 5.754 7.133 -0.602 1.00 0.88 N +ATOM 348 H ARG A 15 8.125 1.220 0.173 1.00 0.25 H +ATOM 349 HA ARG A 15 10.368 2.850 0.857 1.00 0.28 H +ATOM 350 HB2 ARG A 15 7.792 2.175 2.230 1.00 0.94 H +ATOM 351 HB3 ARG A 15 9.051 3.067 3.074 1.00 1.01 H +ATOM 352 HG2 ARG A 15 7.612 4.701 2.232 1.00 1.12 H +ATOM 353 HG3 ARG A 15 8.975 4.694 1.119 1.00 1.13 H +ATOM 354 HD2 ARG A 15 7.646 3.193 -0.373 1.00 0.45 H +ATOM 355 HD3 ARG A 15 6.274 3.425 0.709 1.00 0.45 H +ATOM 356 HE ARG A 15 7.266 5.276 -1.253 1.00 0.63 H +ATOM 357 HH11 ARG A 15 5.464 4.967 1.737 1.00 1.40 H +ATOM 358 HH12 ARG A 15 4.676 6.510 1.577 1.00 1.76 H +ATOM 359 HH21 ARG A 15 6.236 7.290 -1.477 1.00 0.77 H +ATOM 360 HH22 ARG A 15 5.115 7.825 -0.254 1.00 1.22 H +ATOM 361 N ARG A 16 9.812 0.212 2.780 1.00 0.40 N +ATOM 362 CA ARG A 16 10.426 -0.903 3.499 1.00 0.55 C +ATOM 363 C ARG A 16 9.445 -1.514 4.487 1.00 1.46 C +ATOM 364 O ARG A 16 8.808 -2.523 4.143 1.00 2.20 O +ATOM 365 CB ARG A 16 11.692 -0.520 4.256 1.00 1.14 C +ATOM 366 CG ARG A 16 12.419 -1.746 4.749 1.00 2.07 C +ATOM 367 CD ARG A 16 12.742 -2.670 3.586 1.00 2.76 C +ATOM 368 NE ARG A 16 13.005 -4.042 4.015 1.00 3.02 N +ATOM 369 CZ ARG A 16 12.078 -5.008 4.019 1.00 3.81 C +ATOM 370 NH1 ARG A 16 10.808 -4.734 3.721 1.00 4.43 N +ATOM 371 NH2 ARG A 16 12.421 -6.246 4.337 1.00 4.37 N +ATOM 372 OXT ARG A 16 9.332 -0.991 5.612 1.00 2.24 O +ATOM 373 H ARG A 16 8.841 0.264 2.774 1.00 0.55 H +ATOM 374 HA ARG A 16 10.674 -1.654 2.769 1.00 1.33 H +ATOM 375 HB2 ARG A 16 12.348 0.034 3.599 1.00 1.66 H +ATOM 376 HB3 ARG A 16 11.432 0.090 5.106 1.00 1.64 H +ATOM 377 HG2 ARG A 16 13.333 -1.449 5.235 1.00 2.52 H +ATOM 378 HG3 ARG A 16 11.780 -2.265 5.443 1.00 2.56 H +ATOM 379 HD2 ARG A 16 11.902 -2.674 2.909 1.00 3.30 H +ATOM 380 HD3 ARG A 16 13.614 -2.287 3.075 1.00 3.15 H +ATOM 381 HE ARG A 16 13.924 -4.265 4.282 1.00 2.98 H +ATOM 382 HH11 ARG A 16 10.526 -3.796 3.492 1.00 4.37 H +ATOM 383 HH12 ARG A 16 10.116 -5.470 3.723 1.00 5.17 H +ATOM 384 HH21 ARG A 16 13.377 -6.464 4.575 1.00 4.32 H +ATOM 385 HH22 ARG A 16 11.730 -6.979 4.337 1.00 5.07 H +TER 386 ARG A 16 +ENDMDL +MODEL 2 +ATOM 1 N ARG A 1 -12.164 1.476 2.607 1.00 0.94 N +ATOM 2 CA ARG A 1 -11.006 1.954 1.865 1.00 0.72 C +ATOM 3 C ARG A 1 -10.285 0.779 1.203 1.00 0.60 C +ATOM 4 O ARG A 1 -9.259 0.311 1.694 1.00 0.64 O +ATOM 5 CB ARG A 1 -10.041 2.699 2.796 1.00 1.24 C +ATOM 6 CG ARG A 1 -10.657 3.891 3.511 1.00 1.81 C +ATOM 7 CD ARG A 1 -9.698 4.466 4.544 1.00 2.42 C +ATOM 8 NE ARG A 1 -10.254 5.630 5.232 1.00 3.29 N +ATOM 9 CZ ARG A 1 -9.541 6.452 5.998 1.00 4.10 C +ATOM 10 NH1 ARG A 1 -8.260 6.216 6.228 1.00 4.22 N +ATOM 11 NH2 ARG A 1 -10.121 7.500 6.560 1.00 5.01 N +ATOM 12 H ARG A 1 -12.059 1.256 3.560 1.00 1.36 H +ATOM 13 HA ARG A 1 -11.354 2.632 1.098 1.00 0.90 H +ATOM 14 HB2 ARG A 1 -9.684 2.006 3.543 1.00 1.52 H +ATOM 15 HB3 ARG A 1 -9.200 3.051 2.218 1.00 1.64 H +ATOM 16 HG2 ARG A 1 -10.894 4.655 2.786 1.00 2.17 H +ATOM 17 HG3 ARG A 1 -11.560 3.568 4.009 1.00 2.13 H +ATOM 18 HD2 ARG A 1 -9.482 3.703 5.277 1.00 2.35 H +ATOM 19 HD3 ARG A 1 -8.781 4.755 4.047 1.00 2.78 H +ATOM 20 HE ARG A 1 -11.211 5.811 5.108 1.00 3.48 H +ATOM 21 HH11 ARG A 1 -7.813 5.403 5.834 1.00 3.76 H +ATOM 22 HH12 ARG A 1 -7.724 6.853 6.793 1.00 4.94 H +ATOM 23 HH21 ARG A 1 -11.101 7.678 6.409 1.00 5.16 H +ATOM 24 HH22 ARG A 1 -9.589 8.122 7.143 1.00 5.67 H +ATOM 25 N ARG A 2 -10.844 0.290 0.099 1.00 0.54 N +ATOM 26 CA ARG A 2 -10.276 -0.864 -0.600 1.00 0.51 C +ATOM 27 C ARG A 2 -8.915 -0.552 -1.214 1.00 0.39 C +ATOM 28 O ARG A 2 -8.076 -1.436 -1.350 1.00 0.41 O +ATOM 29 CB ARG A 2 -11.252 -1.430 -1.647 1.00 0.59 C +ATOM 30 CG ARG A 2 -11.995 -0.396 -2.482 1.00 1.27 C +ATOM 31 CD ARG A 2 -11.096 0.304 -3.486 1.00 2.13 C +ATOM 32 NE ARG A 2 -11.875 1.070 -4.457 1.00 2.80 N +ATOM 33 CZ ARG A 2 -11.447 2.171 -5.069 1.00 3.73 C +ATOM 34 NH1 ARG A 2 -10.225 2.632 -4.835 1.00 4.17 N +ATOM 35 NH2 ARG A 2 -12.242 2.799 -5.928 1.00 4.44 N +ATOM 36 H ARG A 2 -11.666 0.703 -0.243 1.00 0.59 H +ATOM 37 HA ARG A 2 -10.122 -1.624 0.149 1.00 0.60 H +ATOM 38 HB2 ARG A 2 -10.698 -2.060 -2.322 1.00 0.87 H +ATOM 39 HB3 ARG A 2 -11.987 -2.034 -1.137 1.00 1.05 H +ATOM 40 HG2 ARG A 2 -12.787 -0.894 -3.022 1.00 1.80 H +ATOM 41 HG3 ARG A 2 -12.421 0.342 -1.820 1.00 1.44 H +ATOM 42 HD2 ARG A 2 -10.439 0.977 -2.951 1.00 2.58 H +ATOM 43 HD3 ARG A 2 -10.508 -0.436 -4.008 1.00 2.36 H +ATOM 44 HE ARG A 2 -12.789 0.736 -4.667 1.00 2.78 H +ATOM 45 HH11 ARG A 2 -9.621 2.155 -4.202 1.00 3.85 H +ATOM 46 HH12 ARG A 2 -9.900 3.469 -5.295 1.00 4.97 H +ATOM 47 HH21 ARG A 2 -13.162 2.445 -6.112 1.00 4.37 H +ATOM 48 HH22 ARG A 2 -11.934 3.637 -6.388 1.00 5.17 H +ATOM 49 N TRP A 3 -8.701 0.705 -1.577 1.00 0.34 N +ATOM 50 CA TRP A 3 -7.432 1.131 -2.161 1.00 0.29 C +ATOM 51 C TRP A 3 -6.274 0.896 -1.191 1.00 0.22 C +ATOM 52 O TRP A 3 -5.140 0.667 -1.608 1.00 0.20 O +ATOM 53 CB TRP A 3 -7.490 2.600 -2.595 1.00 0.42 C +ATOM 54 CG TRP A 3 -8.076 3.522 -1.569 1.00 0.53 C +ATOM 55 CD1 TRP A 3 -9.400 3.790 -1.372 1.00 0.60 C +ATOM 56 CD2 TRP A 3 -7.358 4.313 -0.613 1.00 0.65 C +ATOM 57 NE1 TRP A 3 -9.553 4.680 -0.344 1.00 0.75 N +ATOM 58 CE2 TRP A 3 -8.316 5.020 0.137 1.00 0.79 C +ATOM 59 CE3 TRP A 3 -6.001 4.484 -0.314 1.00 0.67 C +ATOM 60 CZ2 TRP A 3 -7.960 5.890 1.165 1.00 0.95 C +ATOM 61 CZ3 TRP A 3 -5.650 5.352 0.707 1.00 0.83 C +ATOM 62 CH2 TRP A 3 -6.626 6.042 1.435 1.00 0.96 C +ATOM 63 H TRP A 3 -9.406 1.364 -1.436 1.00 0.39 H +ATOM 64 HA TRP A 3 -7.267 0.522 -3.038 1.00 0.31 H +ATOM 65 HB2 TRP A 3 -6.487 2.943 -2.809 1.00 0.44 H +ATOM 66 HB3 TRP A 3 -8.087 2.677 -3.492 1.00 0.48 H +ATOM 67 HD1 TRP A 3 -10.202 3.346 -1.944 1.00 0.57 H +ATOM 68 HE1 TRP A 3 -10.417 5.026 -0.009 1.00 0.84 H +ATOM 69 HE3 TRP A 3 -5.233 3.959 -0.868 1.00 0.59 H +ATOM 70 HZ2 TRP A 3 -8.700 6.429 1.739 1.00 1.06 H +ATOM 71 HZ3 TRP A 3 -4.607 5.501 0.951 1.00 0.86 H +ATOM 72 HH2 TRP A 3 -6.307 6.709 2.224 1.00 1.10 H +ATOM 73 N ARG A 4 -6.573 0.951 0.107 1.00 0.25 N +ATOM 74 CA ARG A 4 -5.576 0.705 1.146 1.00 0.26 C +ATOM 75 C ARG A 4 -4.928 -0.675 0.996 1.00 0.20 C +ATOM 76 O ARG A 4 -3.783 -0.880 1.402 1.00 0.22 O +ATOM 77 CB ARG A 4 -6.197 0.864 2.532 1.00 0.39 C +ATOM 78 CG ARG A 4 -6.527 2.311 2.878 1.00 0.93 C +ATOM 79 CD ARG A 4 -5.276 3.113 3.229 1.00 0.78 C +ATOM 80 NE ARG A 4 -4.769 2.780 4.558 1.00 0.93 N +ATOM 81 CZ ARG A 4 -4.031 3.602 5.310 1.00 1.11 C +ATOM 82 NH1 ARG A 4 -3.652 4.788 4.843 1.00 1.09 N +ATOM 83 NH2 ARG A 4 -3.669 3.234 6.530 1.00 1.91 N +ATOM 84 H ARG A 4 -7.495 1.153 0.372 1.00 0.33 H +ATOM 85 HA ARG A 4 -4.806 1.447 1.027 1.00 0.29 H +ATOM 86 HB2 ARG A 4 -7.111 0.287 2.574 1.00 0.67 H +ATOM 87 HB3 ARG A 4 -5.506 0.487 3.269 1.00 0.82 H +ATOM 88 HG2 ARG A 4 -7.008 2.768 2.028 1.00 1.41 H +ATOM 89 HG3 ARG A 4 -7.201 2.322 3.724 1.00 1.45 H +ATOM 90 HD2 ARG A 4 -4.507 2.902 2.498 1.00 1.29 H +ATOM 91 HD3 ARG A 4 -5.516 4.165 3.200 1.00 1.06 H +ATOM 92 HE ARG A 4 -5.008 1.888 4.924 1.00 1.46 H +ATOM 93 HH11 ARG A 4 -3.919 5.080 3.924 1.00 1.34 H +ATOM 94 HH12 ARG A 4 -3.093 5.400 5.416 1.00 1.35 H +ATOM 95 HH21 ARG A 4 -3.950 2.337 6.896 1.00 2.46 H +ATOM 96 HH22 ARG A 4 -3.117 3.851 7.106 1.00 2.10 H +ATOM 97 N ARG A 5 -5.674 -1.618 0.436 1.00 0.22 N +ATOM 98 CA ARG A 5 -5.147 -2.950 0.157 1.00 0.29 C +ATOM 99 C ARG A 5 -3.876 -2.856 -0.690 1.00 0.25 C +ATOM 100 O ARG A 5 -2.830 -3.409 -0.333 1.00 0.32 O +ATOM 101 CB ARG A 5 -6.197 -3.799 -0.575 1.00 0.37 C +ATOM 102 CG ARG A 5 -5.694 -5.170 -1.002 1.00 0.90 C +ATOM 103 CD ARG A 5 -6.691 -5.892 -1.898 1.00 0.89 C +ATOM 104 NE ARG A 5 -7.936 -6.231 -1.208 1.00 1.49 N +ATOM 105 CZ ARG A 5 -8.974 -6.843 -1.790 1.00 1.77 C +ATOM 106 NH1 ARG A 5 -8.943 -7.149 -3.086 1.00 1.45 N +ATOM 107 NH2 ARG A 5 -10.042 -7.139 -1.068 1.00 2.70 N +ATOM 108 H ARG A 5 -6.604 -1.409 0.193 1.00 0.24 H +ATOM 109 HA ARG A 5 -4.908 -3.419 1.100 1.00 0.37 H +ATOM 110 HB2 ARG A 5 -7.044 -3.939 0.078 1.00 0.92 H +ATOM 111 HB3 ARG A 5 -6.519 -3.265 -1.459 1.00 0.72 H +ATOM 112 HG2 ARG A 5 -4.769 -5.047 -1.542 1.00 1.29 H +ATOM 113 HG3 ARG A 5 -5.517 -5.768 -0.119 1.00 1.42 H +ATOM 114 HD2 ARG A 5 -6.923 -5.254 -2.735 1.00 1.52 H +ATOM 115 HD3 ARG A 5 -6.233 -6.802 -2.258 1.00 0.93 H +ATOM 116 HE ARG A 5 -7.998 -6.001 -0.254 1.00 2.03 H +ATOM 117 HH11 ARG A 5 -8.137 -6.922 -3.642 1.00 1.37 H +ATOM 118 HH12 ARG A 5 -9.729 -7.606 -3.516 1.00 1.73 H +ATOM 119 HH21 ARG A 5 -10.065 -6.906 -0.089 1.00 3.26 H +ATOM 120 HH22 ARG A 5 -10.834 -7.602 -1.491 1.00 2.93 H +ATOM 121 N TRP A 6 -3.975 -2.153 -1.808 1.00 0.21 N +ATOM 122 CA TRP A 6 -2.845 -1.972 -2.710 1.00 0.27 C +ATOM 123 C TRP A 6 -1.838 -1.000 -2.105 1.00 0.22 C +ATOM 124 O TRP A 6 -0.635 -1.104 -2.342 1.00 0.26 O +ATOM 125 CB TRP A 6 -3.335 -1.459 -4.065 1.00 0.34 C +ATOM 126 CG TRP A 6 -4.547 -2.186 -4.565 1.00 0.35 C +ATOM 127 CD1 TRP A 6 -4.694 -3.534 -4.731 1.00 0.43 C +ATOM 128 CD2 TRP A 6 -5.789 -1.595 -4.966 1.00 0.34 C +ATOM 129 NE1 TRP A 6 -5.950 -3.816 -5.202 1.00 0.49 N +ATOM 130 CE2 TRP A 6 -6.641 -2.642 -5.362 1.00 0.43 C +ATOM 131 CE3 TRP A 6 -6.261 -0.282 -5.031 1.00 0.32 C +ATOM 132 CZ2 TRP A 6 -7.940 -2.417 -5.811 1.00 0.48 C +ATOM 133 CZ3 TRP A 6 -7.550 -0.057 -5.479 1.00 0.37 C +ATOM 134 CH2 TRP A 6 -8.376 -1.121 -5.863 1.00 0.44 C +ATOM 135 H TRP A 6 -4.833 -1.733 -2.031 1.00 0.19 H +ATOM 136 HA TRP A 6 -2.366 -2.932 -2.846 1.00 0.34 H +ATOM 137 HB2 TRP A 6 -3.586 -0.411 -3.978 1.00 0.34 H +ATOM 138 HB3 TRP A 6 -2.548 -1.577 -4.794 1.00 0.47 H +ATOM 139 HD1 TRP A 6 -3.930 -4.263 -4.512 1.00 0.48 H +ATOM 140 HE1 TRP A 6 -6.297 -4.718 -5.396 1.00 0.58 H +ATOM 141 HE3 TRP A 6 -5.637 0.553 -4.735 1.00 0.32 H +ATOM 142 HZ2 TRP A 6 -8.589 -3.228 -6.114 1.00 0.57 H +ATOM 143 HZ3 TRP A 6 -7.935 0.953 -5.532 1.00 0.39 H +ATOM 144 HH2 TRP A 6 -9.375 -0.900 -6.206 1.00 0.50 H +ATOM 145 N TRP A 7 -2.358 -0.056 -1.327 1.00 0.17 N +ATOM 146 CA TRP A 7 -1.549 0.925 -0.605 1.00 0.18 C +ATOM 147 C TRP A 7 -0.439 0.239 0.200 1.00 0.16 C +ATOM 148 O TRP A 7 0.727 0.632 0.130 1.00 0.19 O +ATOM 149 CB TRP A 7 -2.475 1.727 0.316 1.00 0.20 C +ATOM 150 CG TRP A 7 -1.819 2.818 1.105 1.00 0.34 C +ATOM 151 CD1 TRP A 7 -1.219 2.700 2.324 1.00 0.44 C +ATOM 152 CD2 TRP A 7 -1.737 4.202 0.745 1.00 0.51 C +ATOM 153 NE1 TRP A 7 -0.772 3.927 2.747 1.00 0.62 N +ATOM 154 CE2 TRP A 7 -1.072 4.864 1.791 1.00 0.65 C +ATOM 155 CE3 TRP A 7 -2.159 4.942 -0.366 1.00 0.62 C +ATOM 156 CZ2 TRP A 7 -0.825 6.232 1.766 1.00 0.85 C +ATOM 157 CZ3 TRP A 7 -1.909 6.301 -0.391 1.00 0.81 C +ATOM 158 CH2 TRP A 7 -1.248 6.932 0.669 1.00 0.91 C +ATOM 159 H TRP A 7 -3.335 -0.006 -1.245 1.00 0.17 H +ATOM 160 HA TRP A 7 -1.102 1.591 -1.326 1.00 0.25 H +ATOM 161 HB2 TRP A 7 -3.245 2.186 -0.286 1.00 0.28 H +ATOM 162 HB3 TRP A 7 -2.945 1.047 1.014 1.00 0.20 H +ATOM 163 HD1 TRP A 7 -1.124 1.771 2.870 1.00 0.45 H +ATOM 164 HE1 TRP A 7 -0.308 4.103 3.598 1.00 0.74 H +ATOM 165 HE3 TRP A 7 -2.669 4.470 -1.194 1.00 0.59 H +ATOM 166 HZ2 TRP A 7 -0.318 6.732 2.572 1.00 0.97 H +ATOM 167 HZ3 TRP A 7 -2.225 6.889 -1.237 1.00 0.92 H +ATOM 168 HH2 TRP A 7 -1.074 7.995 0.606 1.00 1.07 H +ATOM 169 N ARG A 8 -0.811 -0.799 0.945 1.00 0.16 N +ATOM 170 CA ARG A 8 0.146 -1.553 1.757 1.00 0.22 C +ATOM 171 C ARG A 8 1.194 -2.229 0.878 1.00 0.20 C +ATOM 172 O ARG A 8 2.365 -2.335 1.250 1.00 0.23 O +ATOM 173 CB ARG A 8 -0.566 -2.630 2.574 1.00 0.36 C +ATOM 174 CG ARG A 8 -1.721 -2.117 3.411 1.00 0.93 C +ATOM 175 CD ARG A 8 -2.384 -3.251 4.171 1.00 1.11 C +ATOM 176 NE ARG A 8 -2.740 -4.367 3.289 1.00 1.71 N +ATOM 177 CZ ARG A 8 -3.698 -5.256 3.550 1.00 2.38 C +ATOM 178 NH1 ARG A 8 -4.425 -5.157 4.656 1.00 2.43 N +ATOM 179 NH2 ARG A 8 -3.915 -6.257 2.707 1.00 3.45 N +ATOM 180 H ARG A 8 -1.757 -1.059 0.955 1.00 0.16 H +ATOM 181 HA ARG A 8 0.637 -0.863 2.425 1.00 0.28 H +ATOM 182 HB2 ARG A 8 -0.950 -3.380 1.899 1.00 1.17 H +ATOM 183 HB3 ARG A 8 0.150 -3.091 3.238 1.00 1.04 H +ATOM 184 HG2 ARG A 8 -1.347 -1.392 4.118 1.00 1.48 H +ATOM 185 HG3 ARG A 8 -2.449 -1.652 2.762 1.00 1.64 H +ATOM 186 HD2 ARG A 8 -1.697 -3.607 4.926 1.00 1.70 H +ATOM 187 HD3 ARG A 8 -3.277 -2.875 4.646 1.00 1.56 H +ATOM 188 HE ARG A 8 -2.220 -4.471 2.459 1.00 2.17 H +ATOM 189 HH11 ARG A 8 -4.256 -4.415 5.306 1.00 2.23 H +ATOM 190 HH12 ARG A 8 -5.150 -5.834 4.846 1.00 3.07 H +ATOM 191 HH21 ARG A 8 -3.355 -6.345 1.870 1.00 3.87 H +ATOM 192 HH22 ARG A 8 -4.625 -6.941 2.903 1.00 4.01 H +ATOM 193 N ARG A 9 0.757 -2.685 -0.289 1.00 0.21 N +ATOM 194 CA ARG A 9 1.618 -3.422 -1.207 1.00 0.25 C +ATOM 195 C ARG A 9 2.722 -2.518 -1.738 1.00 0.21 C +ATOM 196 O ARG A 9 3.858 -2.946 -1.919 1.00 0.26 O +ATOM 197 CB ARG A 9 0.776 -3.991 -2.349 1.00 0.33 C +ATOM 198 CG ARG A 9 1.510 -4.974 -3.246 1.00 1.21 C +ATOM 199 CD ARG A 9 0.550 -5.623 -4.230 1.00 1.46 C +ATOM 200 NE ARG A 9 1.194 -6.622 -5.083 1.00 2.08 N +ATOM 201 CZ ARG A 9 0.799 -7.893 -5.156 1.00 2.69 C +ATOM 202 NH1 ARG A 9 -0.161 -8.333 -4.352 1.00 2.94 N +ATOM 203 NH2 ARG A 9 1.375 -8.728 -6.015 1.00 3.48 N +ATOM 204 H ARG A 9 -0.172 -2.516 -0.545 1.00 0.22 H +ATOM 205 HA ARG A 9 2.070 -4.235 -0.660 1.00 0.30 H +ATOM 206 HB2 ARG A 9 -0.081 -4.499 -1.929 1.00 0.74 H +ATOM 207 HB3 ARG A 9 0.429 -3.171 -2.961 1.00 0.93 H +ATOM 208 HG2 ARG A 9 2.274 -4.446 -3.795 1.00 1.80 H +ATOM 209 HG3 ARG A 9 1.963 -5.741 -2.633 1.00 1.91 H +ATOM 210 HD2 ARG A 9 -0.244 -6.100 -3.674 1.00 1.70 H +ATOM 211 HD3 ARG A 9 0.130 -4.851 -4.857 1.00 1.90 H +ATOM 212 HE ARG A 9 1.935 -6.321 -5.653 1.00 2.43 H +ATOM 213 HH11 ARG A 9 -0.583 -7.715 -3.689 1.00 2.79 H +ATOM 214 HH12 ARG A 9 -0.466 -9.293 -4.402 1.00 3.57 H +ATOM 215 HH21 ARG A 9 2.118 -8.411 -6.617 1.00 3.76 H +ATOM 216 HH22 ARG A 9 1.066 -9.688 -6.073 1.00 3.99 H +ATOM 217 N TRP A 10 2.376 -1.265 -1.973 1.00 0.18 N +ATOM 218 CA TRP A 10 3.351 -0.259 -2.368 1.00 0.18 C +ATOM 219 C TRP A 10 4.249 0.111 -1.186 1.00 0.15 C +ATOM 220 O TRP A 10 5.465 0.250 -1.334 1.00 0.15 O +ATOM 221 CB TRP A 10 2.619 0.976 -2.918 1.00 0.24 C +ATOM 222 CG TRP A 10 3.279 2.277 -2.578 1.00 0.27 C +ATOM 223 CD1 TRP A 10 2.933 3.113 -1.561 1.00 0.32 C +ATOM 224 CD2 TRP A 10 4.390 2.890 -3.243 1.00 0.33 C +ATOM 225 NE1 TRP A 10 3.761 4.203 -1.542 1.00 0.39 N +ATOM 226 CE2 TRP A 10 4.666 4.093 -2.563 1.00 0.39 C +ATOM 227 CE3 TRP A 10 5.178 2.545 -4.342 1.00 0.39 C +ATOM 228 CZ2 TRP A 10 5.697 4.946 -2.942 1.00 0.48 C +ATOM 229 CZ3 TRP A 10 6.203 3.394 -4.717 1.00 0.49 C +ATOM 230 CH2 TRP A 10 6.453 4.581 -4.019 1.00 0.53 C +ATOM 231 H TRP A 10 1.434 -1.004 -1.881 1.00 0.20 H +ATOM 232 HA TRP A 10 3.964 -0.676 -3.147 1.00 0.19 H +ATOM 233 HB2 TRP A 10 2.564 0.900 -3.994 1.00 0.29 H +ATOM 234 HB3 TRP A 10 1.616 0.997 -2.516 1.00 0.27 H +ATOM 235 HD1 TRP A 10 2.123 2.927 -0.874 1.00 0.36 H +ATOM 236 HE1 TRP A 10 3.711 4.941 -0.904 1.00 0.45 H +ATOM 237 HE3 TRP A 10 5.000 1.634 -4.894 1.00 0.39 H +ATOM 238 HZ2 TRP A 10 5.910 5.860 -2.404 1.00 0.54 H +ATOM 239 HZ3 TRP A 10 6.827 3.143 -5.562 1.00 0.57 H +ATOM 240 HH2 TRP A 10 7.265 5.213 -4.348 1.00 0.62 H +ATOM 241 N TRP A 11 3.639 0.240 -0.015 1.00 0.16 N +ATOM 242 CA TRP A 11 4.338 0.682 1.183 1.00 0.17 C +ATOM 243 C TRP A 11 5.485 -0.268 1.537 1.00 0.14 C +ATOM 244 O TRP A 11 6.652 0.127 1.531 1.00 0.18 O +ATOM 245 CB TRP A 11 3.342 0.783 2.343 1.00 0.23 C +ATOM 246 CG TRP A 11 3.633 1.894 3.307 1.00 0.36 C +ATOM 247 CD1 TRP A 11 2.864 2.997 3.534 1.00 0.48 C +ATOM 248 CD2 TRP A 11 4.772 2.016 4.159 1.00 0.43 C +ATOM 249 NE1 TRP A 11 3.454 3.795 4.485 1.00 0.61 N +ATOM 250 CE2 TRP A 11 4.628 3.213 4.883 1.00 0.58 C +ATOM 251 CE3 TRP A 11 5.897 1.226 4.383 1.00 0.44 C +ATOM 252 CZ2 TRP A 11 5.574 3.640 5.813 1.00 0.71 C +ATOM 253 CZ3 TRP A 11 6.833 1.646 5.304 1.00 0.57 C +ATOM 254 CH2 TRP A 11 6.666 2.842 6.012 1.00 0.69 C +ATOM 255 H TRP A 11 2.678 0.043 0.044 1.00 0.19 H +ATOM 256 HA TRP A 11 4.755 1.659 0.988 1.00 0.20 H +ATOM 257 HB2 TRP A 11 2.354 0.946 1.939 1.00 0.28 H +ATOM 258 HB3 TRP A 11 3.352 -0.145 2.896 1.00 0.24 H +ATOM 259 HD1 TRP A 11 1.929 3.199 3.037 1.00 0.51 H +ATOM 260 HE1 TRP A 11 3.090 4.645 4.826 1.00 0.72 H +ATOM 261 HE3 TRP A 11 6.038 0.305 3.842 1.00 0.37 H +ATOM 262 HZ2 TRP A 11 5.459 4.560 6.366 1.00 0.83 H +ATOM 263 HZ3 TRP A 11 7.708 1.043 5.492 1.00 0.61 H +ATOM 264 HH2 TRP A 11 7.426 3.127 6.722 1.00 0.80 H +ATOM 265 N ARG A 12 5.154 -1.518 1.810 1.00 0.16 N +ATOM 266 CA ARG A 12 6.140 -2.472 2.302 1.00 0.22 C +ATOM 267 C ARG A 12 7.220 -2.774 1.274 1.00 0.21 C +ATOM 268 O ARG A 12 8.365 -3.022 1.633 1.00 0.27 O +ATOM 269 CB ARG A 12 5.461 -3.767 2.740 1.00 0.33 C +ATOM 270 CG ARG A 12 4.873 -3.701 4.138 1.00 1.49 C +ATOM 271 CD ARG A 12 5.952 -3.418 5.172 1.00 1.87 C +ATOM 272 NE ARG A 12 5.440 -3.478 6.536 1.00 2.29 N +ATOM 273 CZ ARG A 12 5.826 -2.650 7.508 1.00 2.74 C +ATOM 274 NH1 ARG A 12 6.721 -1.696 7.269 1.00 3.00 N +ATOM 275 NH2 ARG A 12 5.339 -2.794 8.733 1.00 3.27 N +ATOM 276 H ARG A 12 4.228 -1.812 1.668 1.00 0.19 H +ATOM 277 HA ARG A 12 6.612 -2.029 3.163 1.00 0.27 H +ATOM 278 HB2 ARG A 12 4.664 -3.991 2.049 1.00 0.95 H +ATOM 279 HB3 ARG A 12 6.186 -4.566 2.713 1.00 0.86 H +ATOM 280 HG2 ARG A 12 4.140 -2.910 4.171 1.00 2.00 H +ATOM 281 HG3 ARG A 12 4.403 -4.646 4.369 1.00 2.03 H +ATOM 282 HD2 ARG A 12 6.740 -4.148 5.061 1.00 2.25 H +ATOM 283 HD3 ARG A 12 6.353 -2.431 4.994 1.00 1.95 H +ATOM 284 HE ARG A 12 4.780 -4.190 6.743 1.00 2.50 H +ATOM 285 HH11 ARG A 12 7.126 -1.589 6.352 1.00 2.91 H +ATOM 286 HH12 ARG A 12 6.993 -1.066 8.006 1.00 3.51 H +ATOM 287 HH21 ARG A 12 4.686 -3.528 8.939 1.00 3.44 H +ATOM 288 HH22 ARG A 12 5.625 -2.165 9.466 1.00 3.66 H +ATOM 289 N ARG A 13 6.858 -2.769 0.008 1.00 0.18 N +ATOM 290 CA ARG A 13 7.812 -3.093 -1.040 1.00 0.22 C +ATOM 291 C ARG A 13 8.826 -1.976 -1.283 1.00 0.21 C +ATOM 292 O ARG A 13 10.034 -2.190 -1.144 1.00 0.25 O +ATOM 293 CB ARG A 13 7.081 -3.447 -2.330 1.00 0.28 C +ATOM 294 CG ARG A 13 6.472 -4.837 -2.306 1.00 0.93 C +ATOM 295 CD ARG A 13 5.562 -5.066 -3.498 1.00 1.38 C +ATOM 296 NE ARG A 13 6.250 -4.899 -4.778 1.00 1.86 N +ATOM 297 CZ ARG A 13 5.729 -4.252 -5.815 1.00 2.76 C +ATOM 298 NH1 ARG A 13 4.544 -3.662 -5.701 1.00 3.47 N +ATOM 299 NH2 ARG A 13 6.395 -4.192 -6.961 1.00 3.35 N +ATOM 300 H ARG A 13 5.933 -2.547 -0.232 1.00 0.17 H +ATOM 301 HA ARG A 13 8.351 -3.966 -0.711 1.00 0.28 H +ATOM 302 HB2 ARG A 13 6.288 -2.733 -2.490 1.00 0.66 H +ATOM 303 HB3 ARG A 13 7.778 -3.396 -3.153 1.00 0.82 H +ATOM 304 HG2 ARG A 13 7.264 -5.569 -2.324 1.00 1.57 H +ATOM 305 HG3 ARG A 13 5.895 -4.951 -1.398 1.00 1.64 H +ATOM 306 HD2 ARG A 13 5.172 -6.068 -3.442 1.00 2.01 H +ATOM 307 HD3 ARG A 13 4.746 -4.359 -3.444 1.00 1.74 H +ATOM 308 HE ARG A 13 7.144 -5.316 -4.875 1.00 1.99 H +ATOM 309 HH11 ARG A 13 4.046 -3.704 -4.834 1.00 3.38 H +ATOM 310 HH12 ARG A 13 4.143 -3.162 -6.481 1.00 4.31 H +ATOM 311 HH21 ARG A 13 7.292 -4.636 -7.045 1.00 3.32 H +ATOM 312 HH22 ARG A 13 6.008 -3.708 -7.748 1.00 4.06 H +ATOM 313 N TRP A 14 8.347 -0.793 -1.660 1.00 0.20 N +ATOM 314 CA TRP A 14 9.245 0.284 -2.065 1.00 0.24 C +ATOM 315 C TRP A 14 9.961 0.931 -0.878 1.00 0.21 C +ATOM 316 O TRP A 14 11.187 0.848 -0.767 1.00 0.27 O +ATOM 317 CB TRP A 14 8.482 1.347 -2.859 1.00 0.31 C +ATOM 318 CG TRP A 14 9.380 2.341 -3.529 1.00 0.42 C +ATOM 319 CD1 TRP A 14 9.966 2.206 -4.749 1.00 0.54 C +ATOM 320 CD2 TRP A 14 9.789 3.617 -3.023 1.00 0.48 C +ATOM 321 NE1 TRP A 14 10.712 3.316 -5.041 1.00 0.64 N +ATOM 322 CE2 TRP A 14 10.622 4.199 -3.996 1.00 0.60 C +ATOM 323 CE3 TRP A 14 9.533 4.324 -1.844 1.00 0.49 C +ATOM 324 CZ2 TRP A 14 11.200 5.455 -3.827 1.00 0.70 C +ATOM 325 CZ3 TRP A 14 10.107 5.572 -1.677 1.00 0.62 C +ATOM 326 CH2 TRP A 14 10.933 6.124 -2.665 1.00 0.71 C +ATOM 327 H TRP A 14 7.379 -0.640 -1.657 1.00 0.19 H +ATOM 328 HA TRP A 14 9.992 -0.147 -2.709 1.00 0.30 H +ATOM 329 HB2 TRP A 14 7.895 0.861 -3.624 1.00 0.37 H +ATOM 330 HB3 TRP A 14 7.825 1.883 -2.196 1.00 0.26 H +ATOM 331 HD1 TRP A 14 9.847 1.342 -5.385 1.00 0.59 H +ATOM 332 HE1 TRP A 14 11.230 3.458 -5.871 1.00 0.74 H +ATOM 333 HE3 TRP A 14 8.899 3.912 -1.071 1.00 0.44 H +ATOM 334 HZ2 TRP A 14 11.839 5.895 -4.577 1.00 0.80 H +ATOM 335 HZ3 TRP A 14 9.923 6.130 -0.773 1.00 0.67 H +ATOM 336 HH2 TRP A 14 11.361 7.100 -2.492 1.00 0.80 H +ATOM 337 N ARG A 15 9.200 1.578 0.004 1.00 0.20 N +ATOM 338 CA ARG A 15 9.792 2.326 1.108 1.00 0.22 C +ATOM 339 C ARG A 15 10.281 1.404 2.224 1.00 0.26 C +ATOM 340 O ARG A 15 11.325 1.669 2.819 1.00 0.44 O +ATOM 341 CB ARG A 15 8.851 3.414 1.649 1.00 0.41 C +ATOM 342 CG ARG A 15 7.394 3.009 1.775 1.00 0.57 C +ATOM 343 CD ARG A 15 6.581 3.371 0.536 1.00 0.40 C +ATOM 344 NE ARG A 15 6.605 4.810 0.242 1.00 0.46 N +ATOM 345 CZ ARG A 15 6.015 5.743 0.995 1.00 0.82 C +ATOM 346 NH1 ARG A 15 5.336 5.402 2.084 1.00 1.35 N +ATOM 347 NH2 ARG A 15 6.091 7.016 0.644 1.00 0.88 N +ATOM 348 H ARG A 15 8.231 1.529 -0.077 1.00 0.25 H +ATOM 349 HA ARG A 15 10.663 2.821 0.701 1.00 0.28 H +ATOM 350 HB2 ARG A 15 9.193 3.703 2.626 1.00 0.94 H +ATOM 351 HB3 ARG A 15 8.907 4.272 0.994 1.00 1.01 H +ATOM 352 HG2 ARG A 15 7.342 1.943 1.925 1.00 1.12 H +ATOM 353 HG3 ARG A 15 6.966 3.513 2.630 1.00 1.13 H +ATOM 354 HD2 ARG A 15 6.980 2.833 -0.310 1.00 0.45 H +ATOM 355 HD3 ARG A 15 5.558 3.063 0.701 1.00 0.45 H +ATOM 356 HE ARG A 15 7.083 5.096 -0.574 1.00 0.63 H +ATOM 357 HH11 ARG A 15 5.261 4.442 2.355 1.00 1.40 H +ATOM 358 HH12 ARG A 15 4.896 6.116 2.651 1.00 1.76 H +ATOM 359 HH21 ARG A 15 6.592 7.283 -0.192 1.00 0.77 H +ATOM 360 HH22 ARG A 15 5.662 7.730 1.216 1.00 1.22 H +ATOM 361 N ARG A 16 9.523 0.330 2.487 1.00 0.40 N +ATOM 362 CA ARG A 16 9.901 -0.696 3.469 1.00 0.55 C +ATOM 363 C ARG A 16 9.772 -0.192 4.909 1.00 1.46 C +ATOM 364 O ARG A 16 10.568 0.677 5.321 1.00 2.20 O +ATOM 365 CB ARG A 16 11.322 -1.197 3.209 1.00 1.14 C +ATOM 366 CG ARG A 16 11.511 -1.807 1.832 1.00 2.07 C +ATOM 367 CD ARG A 16 12.958 -2.191 1.590 1.00 2.76 C +ATOM 368 NE ARG A 16 13.182 -2.629 0.217 1.00 3.02 N +ATOM 369 CZ ARG A 16 14.374 -2.975 -0.265 1.00 3.81 C +ATOM 370 NH1 ARG A 16 15.444 -2.939 0.520 1.00 4.43 N +ATOM 371 NH2 ARG A 16 14.499 -3.358 -1.529 1.00 4.37 N +ATOM 372 OXT ARG A 16 8.888 -0.699 5.635 1.00 2.24 O +ATOM 373 H ARG A 16 8.683 0.220 2.001 1.00 0.55 H +ATOM 374 HA ARG A 16 9.219 -1.521 3.341 1.00 1.33 H +ATOM 375 HB2 ARG A 16 12.001 -0.364 3.305 1.00 1.66 H +ATOM 376 HB3 ARG A 16 11.573 -1.941 3.946 1.00 1.64 H +ATOM 377 HG2 ARG A 16 10.894 -2.691 1.751 1.00 2.52 H +ATOM 378 HG3 ARG A 16 11.210 -1.087 1.087 1.00 2.56 H +ATOM 379 HD2 ARG A 16 13.583 -1.331 1.789 1.00 3.30 H +ATOM 380 HD3 ARG A 16 13.222 -2.993 2.264 1.00 3.15 H +ATOM 381 HE ARG A 16 12.398 -2.658 -0.378 1.00 2.98 H +ATOM 382 HH11 ARG A 16 15.357 -2.651 1.477 1.00 4.37 H +ATOM 383 HH12 ARG A 16 16.354 -3.190 0.156 1.00 5.17 H +ATOM 384 HH21 ARG A 16 13.698 -3.391 -2.129 1.00 4.32 H +ATOM 385 HH22 ARG A 16 15.405 -3.623 -1.894 1.00 5.07 H +TER 386 ARG A 16 +ENDMDL +MODEL 3 +ATOM 1 N ARG A 1 -12.273 0.640 2.219 1.00 0.94 N +ATOM 2 CA ARG A 1 -11.087 1.231 1.606 1.00 0.72 C +ATOM 3 C ARG A 1 -10.349 0.203 0.755 1.00 0.60 C +ATOM 4 O ARG A 1 -9.499 -0.536 1.251 1.00 0.64 O +ATOM 5 CB ARG A 1 -10.150 1.786 2.681 1.00 1.24 C +ATOM 6 CG ARG A 1 -10.798 2.805 3.606 1.00 1.81 C +ATOM 7 CD ARG A 1 -9.846 3.216 4.715 1.00 2.42 C +ATOM 8 NE ARG A 1 -9.370 2.057 5.475 1.00 3.29 N +ATOM 9 CZ ARG A 1 -8.224 2.027 6.161 1.00 4.10 C +ATOM 10 NH1 ARG A 1 -7.447 3.104 6.214 1.00 4.22 N +ATOM 11 NH2 ARG A 1 -7.853 0.917 6.787 1.00 5.01 N +ATOM 12 H ARG A 1 -12.228 0.328 3.151 1.00 1.36 H +ATOM 13 HA ARG A 1 -11.411 2.040 0.969 1.00 0.90 H +ATOM 14 HB2 ARG A 1 -9.787 0.968 3.287 1.00 1.52 H +ATOM 15 HB3 ARG A 1 -9.311 2.259 2.194 1.00 1.64 H +ATOM 16 HG2 ARG A 1 -11.070 3.680 3.033 1.00 2.17 H +ATOM 17 HG3 ARG A 1 -11.683 2.368 4.045 1.00 2.13 H +ATOM 18 HD2 ARG A 1 -8.997 3.719 4.274 1.00 2.35 H +ATOM 19 HD3 ARG A 1 -10.358 3.891 5.383 1.00 2.78 H +ATOM 20 HE ARG A 1 -9.940 1.250 5.462 1.00 3.48 H +ATOM 21 HH11 ARG A 1 -7.715 3.949 5.733 1.00 3.76 H +ATOM 22 HH12 ARG A 1 -6.588 3.087 6.743 1.00 4.94 H +ATOM 23 HH21 ARG A 1 -8.431 0.092 6.747 1.00 5.16 H +ATOM 24 HH22 ARG A 1 -6.991 0.891 7.299 1.00 5.67 H +ATOM 25 N ARG A 2 -10.698 0.146 -0.523 1.00 0.54 N +ATOM 26 CA ARG A 2 -10.093 -0.812 -1.445 1.00 0.51 C +ATOM 27 C ARG A 2 -8.661 -0.437 -1.805 1.00 0.39 C +ATOM 28 O ARG A 2 -7.817 -1.309 -2.023 1.00 0.41 O +ATOM 29 CB ARG A 2 -10.951 -0.979 -2.715 1.00 0.59 C +ATOM 30 CG ARG A 2 -11.751 0.257 -3.128 1.00 1.27 C +ATOM 31 CD ARG A 2 -10.867 1.383 -3.647 1.00 2.13 C +ATOM 32 NE ARG A 2 -11.625 2.616 -3.868 1.00 2.80 N +ATOM 33 CZ ARG A 2 -11.108 3.740 -4.370 1.00 3.73 C +ATOM 34 NH1 ARG A 2 -9.862 3.763 -4.827 1.00 4.17 N +ATOM 35 NH2 ARG A 2 -11.863 4.826 -4.458 1.00 4.44 N +ATOM 36 H ARG A 2 -11.394 0.754 -0.854 1.00 0.59 H +ATOM 37 HA ARG A 2 -10.063 -1.757 -0.934 1.00 0.60 H +ATOM 38 HB2 ARG A 2 -10.302 -1.241 -3.535 1.00 0.87 H +ATOM 39 HB3 ARG A 2 -11.647 -1.790 -2.555 1.00 1.05 H +ATOM 40 HG2 ARG A 2 -12.443 -0.025 -3.905 1.00 1.80 H +ATOM 41 HG3 ARG A 2 -12.303 0.613 -2.270 1.00 1.44 H +ATOM 42 HD2 ARG A 2 -10.092 1.577 -2.919 1.00 2.58 H +ATOM 43 HD3 ARG A 2 -10.417 1.073 -4.578 1.00 2.36 H +ATOM 44 HE ARG A 2 -12.573 2.613 -3.604 1.00 2.78 H +ATOM 45 HH11 ARG A 2 -9.302 2.936 -4.806 1.00 3.85 H +ATOM 46 HH12 ARG A 2 -9.478 4.617 -5.213 1.00 4.97 H +ATOM 47 HH21 ARG A 2 -12.824 4.794 -4.156 1.00 4.37 H +ATOM 48 HH22 ARG A 2 -11.480 5.690 -4.809 1.00 5.17 H +ATOM 49 N TRP A 3 -8.382 0.856 -1.843 1.00 0.34 N +ATOM 50 CA TRP A 3 -7.075 1.335 -2.278 1.00 0.29 C +ATOM 51 C TRP A 3 -5.990 1.064 -1.239 1.00 0.22 C +ATOM 52 O TRP A 3 -4.831 0.849 -1.588 1.00 0.20 O +ATOM 53 CB TRP A 3 -7.127 2.825 -2.645 1.00 0.42 C +ATOM 54 CG TRP A 3 -7.578 3.729 -1.537 1.00 0.53 C +ATOM 55 CD1 TRP A 3 -8.865 3.981 -1.155 1.00 0.60 C +ATOM 56 CD2 TRP A 3 -6.742 4.516 -0.684 1.00 0.65 C +ATOM 57 NE1 TRP A 3 -8.878 4.867 -0.106 1.00 0.75 N +ATOM 58 CE2 TRP A 3 -7.586 5.211 0.201 1.00 0.79 C +ATOM 59 CE3 TRP A 3 -5.359 4.695 -0.577 1.00 0.67 C +ATOM 60 CZ2 TRP A 3 -7.092 6.073 1.178 1.00 0.95 C +ATOM 61 CZ3 TRP A 3 -4.872 5.552 0.392 1.00 0.83 C +ATOM 62 CH2 TRP A 3 -5.736 6.230 1.259 1.00 0.96 C +ATOM 63 H TRP A 3 -9.069 1.502 -1.576 1.00 0.39 H +ATOM 64 HA TRP A 3 -6.818 0.775 -3.169 1.00 0.31 H +ATOM 65 HB2 TRP A 3 -6.140 3.147 -2.943 1.00 0.44 H +ATOM 66 HB3 TRP A 3 -7.806 2.954 -3.474 1.00 0.48 H +ATOM 67 HD1 TRP A 3 -9.732 3.537 -1.617 1.00 0.57 H +ATOM 68 HE1 TRP A 3 -9.691 5.208 0.350 1.00 0.84 H +ATOM 69 HE3 TRP A 3 -4.678 4.184 -1.237 1.00 0.59 H +ATOM 70 HZ2 TRP A 3 -7.745 6.605 1.855 1.00 1.06 H +ATOM 71 HZ3 TRP A 3 -3.808 5.704 0.490 1.00 0.86 H +ATOM 72 HH2 TRP A 3 -5.312 6.890 2.000 1.00 1.10 H +ATOM 73 N ARG A 4 -6.367 1.064 0.033 1.00 0.25 N +ATOM 74 CA ARG A 4 -5.415 0.834 1.113 1.00 0.26 C +ATOM 75 C ARG A 4 -4.767 -0.543 1.005 1.00 0.20 C +ATOM 76 O ARG A 4 -3.641 -0.741 1.465 1.00 0.22 O +ATOM 77 CB ARG A 4 -6.074 1.029 2.471 1.00 0.39 C +ATOM 78 CG ARG A 4 -6.288 2.490 2.836 1.00 0.93 C +ATOM 79 CD ARG A 4 -4.970 3.219 3.077 1.00 0.78 C +ATOM 80 NE ARG A 4 -4.252 2.690 4.236 1.00 0.93 N +ATOM 81 CZ ARG A 4 -3.323 3.374 4.905 1.00 1.11 C +ATOM 82 NH1 ARG A 4 -3.027 4.617 4.544 1.00 1.09 N +ATOM 83 NH2 ARG A 4 -2.706 2.816 5.946 1.00 1.91 N +ATOM 84 H ARG A 4 -7.310 1.207 0.251 1.00 0.33 H +ATOM 85 HA ARG A 4 -4.637 1.571 1.012 1.00 0.29 H +ATOM 86 HB2 ARG A 4 -7.033 0.539 2.467 1.00 0.67 H +ATOM 87 HB3 ARG A 4 -5.449 0.583 3.227 1.00 0.82 H +ATOM 88 HG2 ARG A 4 -6.809 2.979 2.026 1.00 1.41 H +ATOM 89 HG3 ARG A 4 -6.887 2.545 3.734 1.00 1.45 H +ATOM 90 HD2 ARG A 4 -4.343 3.112 2.201 1.00 1.29 H +ATOM 91 HD3 ARG A 4 -5.176 4.269 3.240 1.00 1.06 H +ATOM 92 HE ARG A 4 -4.476 1.780 4.530 1.00 1.46 H +ATOM 93 HH11 ARG A 4 -3.495 5.045 3.771 1.00 1.34 H +ATOM 94 HH12 ARG A 4 -2.339 5.145 5.063 1.00 1.35 H +ATOM 95 HH21 ARG A 4 -2.946 1.884 6.233 1.00 2.46 H +ATOM 96 HH22 ARG A 4 -1.990 3.324 6.454 1.00 2.10 H +ATOM 97 N ARG A 5 -5.482 -1.495 0.421 1.00 0.22 N +ATOM 98 CA ARG A 5 -4.917 -2.820 0.176 1.00 0.29 C +ATOM 99 C ARG A 5 -3.661 -2.714 -0.689 1.00 0.25 C +ATOM 100 O ARG A 5 -2.593 -3.206 -0.317 1.00 0.32 O +ATOM 101 CB ARG A 5 -5.939 -3.735 -0.499 1.00 0.37 C +ATOM 102 CG ARG A 5 -5.352 -5.069 -0.938 1.00 0.90 C +ATOM 103 CD ARG A 5 -6.419 -5.993 -1.496 1.00 0.89 C +ATOM 104 NE ARG A 5 -7.328 -6.475 -0.457 1.00 1.49 N +ATOM 105 CZ ARG A 5 -8.291 -7.366 -0.676 1.00 1.77 C +ATOM 106 NH1 ARG A 5 -8.433 -7.902 -1.884 1.00 1.45 N +ATOM 107 NH2 ARG A 5 -9.088 -7.745 0.319 1.00 2.70 N +ATOM 108 H ARG A 5 -6.399 -1.300 0.138 1.00 0.24 H +ATOM 109 HA ARG A 5 -4.645 -3.245 1.130 1.00 0.37 H +ATOM 110 HB2 ARG A 5 -6.747 -3.929 0.190 1.00 0.92 H +ATOM 111 HB3 ARG A 5 -6.332 -3.236 -1.374 1.00 0.72 H +ATOM 112 HG2 ARG A 5 -4.609 -4.892 -1.702 1.00 1.29 H +ATOM 113 HG3 ARG A 5 -4.888 -5.545 -0.086 1.00 1.42 H +ATOM 114 HD2 ARG A 5 -6.988 -5.456 -2.240 1.00 1.52 H +ATOM 115 HD3 ARG A 5 -5.936 -6.839 -1.955 1.00 0.93 H +ATOM 116 HE ARG A 5 -7.207 -6.115 0.453 1.00 2.03 H +ATOM 117 HH11 ARG A 5 -7.813 -7.633 -2.634 1.00 1.37 H +ATOM 118 HH12 ARG A 5 -9.143 -8.597 -2.058 1.00 1.73 H +ATOM 119 HH21 ARG A 5 -8.966 -7.363 1.236 1.00 3.26 H +ATOM 120 HH22 ARG A 5 -9.820 -8.421 0.156 1.00 2.93 H +ATOM 121 N TRP A 6 -3.794 -2.052 -1.833 1.00 0.21 N +ATOM 122 CA TRP A 6 -2.675 -1.876 -2.752 1.00 0.27 C +ATOM 123 C TRP A 6 -1.637 -0.960 -2.120 1.00 0.22 C +ATOM 124 O TRP A 6 -0.436 -1.113 -2.335 1.00 0.26 O +ATOM 125 CB TRP A 6 -3.151 -1.286 -4.083 1.00 0.34 C +ATOM 126 CG TRP A 6 -4.338 -1.997 -4.659 1.00 0.35 C +ATOM 127 CD1 TRP A 6 -4.450 -3.331 -4.927 1.00 0.43 C +ATOM 128 CD2 TRP A 6 -5.584 -1.405 -5.039 1.00 0.34 C +ATOM 129 NE1 TRP A 6 -5.688 -3.602 -5.446 1.00 0.49 N +ATOM 130 CE2 TRP A 6 -6.405 -2.438 -5.526 1.00 0.43 C +ATOM 131 CE3 TRP A 6 -6.087 -0.102 -5.014 1.00 0.32 C +ATOM 132 CZ2 TRP A 6 -7.700 -2.209 -5.983 1.00 0.48 C +ATOM 133 CZ3 TRP A 6 -7.371 0.124 -5.465 1.00 0.37 C +ATOM 134 CH2 TRP A 6 -8.166 -0.925 -5.944 1.00 0.44 C +ATOM 135 H TRP A 6 -4.664 -1.663 -2.063 1.00 0.19 H +ATOM 136 HA TRP A 6 -2.230 -2.844 -2.928 1.00 0.34 H +ATOM 137 HB2 TRP A 6 -3.425 -0.255 -3.931 1.00 0.34 H +ATOM 138 HB3 TRP A 6 -2.345 -1.338 -4.804 1.00 0.47 H +ATOM 139 HD1 TRP A 6 -3.669 -4.057 -4.752 1.00 0.48 H +ATOM 140 HE1 TRP A 6 -6.006 -4.484 -5.717 1.00 0.58 H +ATOM 141 HE3 TRP A 6 -5.491 0.722 -4.645 1.00 0.32 H +ATOM 142 HZ2 TRP A 6 -8.325 -3.006 -6.356 1.00 0.57 H +ATOM 143 HZ3 TRP A 6 -7.776 1.126 -5.450 1.00 0.39 H +ATOM 144 HH2 TRP A 6 -9.165 -0.701 -6.289 1.00 0.50 H +ATOM 145 N TRP A 7 -2.131 -0.009 -1.337 1.00 0.17 N +ATOM 146 CA TRP A 7 -1.295 0.907 -0.574 1.00 0.18 C +ATOM 147 C TRP A 7 -0.322 0.143 0.321 1.00 0.16 C +ATOM 148 O TRP A 7 0.856 0.472 0.389 1.00 0.19 O +ATOM 149 CB TRP A 7 -2.203 1.804 0.270 1.00 0.20 C +ATOM 150 CG TRP A 7 -1.499 2.841 1.092 1.00 0.34 C +ATOM 151 CD1 TRP A 7 -0.999 2.696 2.353 1.00 0.44 C +ATOM 152 CD2 TRP A 7 -1.247 4.195 0.717 1.00 0.51 C +ATOM 153 NE1 TRP A 7 -0.457 3.881 2.784 1.00 0.62 N +ATOM 154 CE2 TRP A 7 -0.598 4.814 1.798 1.00 0.65 C +ATOM 155 CE3 TRP A 7 -1.507 4.946 -0.430 1.00 0.62 C +ATOM 156 CZ2 TRP A 7 -0.209 6.147 1.766 1.00 0.85 C +ATOM 157 CZ3 TRP A 7 -1.118 6.270 -0.461 1.00 0.81 C +ATOM 158 CH2 TRP A 7 -0.476 6.858 0.632 1.00 0.91 C +ATOM 159 H TRP A 7 -3.106 0.093 -1.281 1.00 0.17 H +ATOM 160 HA TRP A 7 -0.738 1.517 -1.267 1.00 0.25 H +ATOM 161 HB2 TRP A 7 -2.886 2.322 -0.386 1.00 0.28 H +ATOM 162 HB3 TRP A 7 -2.772 1.180 0.945 1.00 0.20 H +ATOM 163 HD1 TRP A 7 -1.029 1.777 2.918 1.00 0.45 H +ATOM 164 HE1 TRP A 7 -0.038 4.035 3.656 1.00 0.74 H +ATOM 165 HE3 TRP A 7 -2.005 4.509 -1.283 1.00 0.59 H +ATOM 166 HZ2 TRP A 7 0.281 6.616 2.601 1.00 0.97 H +ATOM 167 HZ3 TRP A 7 -1.313 6.867 -1.341 1.00 0.92 H +ATOM 168 HH2 TRP A 7 -0.192 7.894 0.563 1.00 1.07 H +ATOM 169 N ARG A 8 -0.827 -0.874 1.015 1.00 0.16 N +ATOM 170 CA ARG A 8 0.014 -1.715 1.862 1.00 0.22 C +ATOM 171 C ARG A 8 1.043 -2.469 1.025 1.00 0.20 C +ATOM 172 O ARG A 8 2.206 -2.598 1.415 1.00 0.23 O +ATOM 173 CB ARG A 8 -0.844 -2.714 2.640 1.00 0.36 C +ATOM 174 CG ARG A 8 -1.715 -2.090 3.721 1.00 0.93 C +ATOM 175 CD ARG A 8 -0.954 -1.858 5.020 1.00 1.11 C +ATOM 176 NE ARG A 8 0.103 -0.857 4.893 1.00 1.71 N +ATOM 177 CZ ARG A 8 0.823 -0.409 5.924 1.00 2.38 C +ATOM 178 NH1 ARG A 8 0.607 -0.878 7.150 1.00 2.43 N +ATOM 179 NH2 ARG A 8 1.764 0.503 5.724 1.00 3.45 N +ATOM 180 H ARG A 8 -1.793 -1.062 0.957 1.00 0.16 H +ATOM 181 HA ARG A 8 0.530 -1.074 2.559 1.00 0.28 H +ATOM 182 HB2 ARG A 8 -1.491 -3.227 1.944 1.00 1.17 H +ATOM 183 HB3 ARG A 8 -0.192 -3.439 3.107 1.00 1.04 H +ATOM 184 HG2 ARG A 8 -2.086 -1.142 3.363 1.00 1.48 H +ATOM 185 HG3 ARG A 8 -2.548 -2.750 3.917 1.00 1.64 H +ATOM 186 HD2 ARG A 8 -1.654 -1.526 5.774 1.00 1.70 H +ATOM 187 HD3 ARG A 8 -0.515 -2.795 5.333 1.00 1.56 H +ATOM 188 HE ARG A 8 0.281 -0.501 3.997 1.00 2.17 H +ATOM 189 HH11 ARG A 8 -0.098 -1.582 7.310 1.00 2.23 H +ATOM 190 HH12 ARG A 8 1.135 -0.519 7.932 1.00 3.07 H +ATOM 191 HH21 ARG A 8 1.934 0.860 4.807 1.00 3.87 H +ATOM 192 HH22 ARG A 8 2.325 0.831 6.499 1.00 4.01 H +ATOM 193 N ARG A 9 0.601 -2.966 -0.123 1.00 0.21 N +ATOM 194 CA ARG A 9 1.468 -3.693 -1.043 1.00 0.25 C +ATOM 195 C ARG A 9 2.610 -2.800 -1.528 1.00 0.21 C +ATOM 196 O ARG A 9 3.774 -3.210 -1.529 1.00 0.26 O +ATOM 197 CB ARG A 9 0.652 -4.203 -2.234 1.00 0.33 C +ATOM 198 CG ARG A 9 1.450 -5.000 -3.258 1.00 1.21 C +ATOM 199 CD ARG A 9 1.956 -6.320 -2.694 1.00 1.46 C +ATOM 200 NE ARG A 9 3.139 -6.163 -1.843 1.00 2.08 N +ATOM 201 CZ ARG A 9 3.810 -7.190 -1.318 1.00 2.69 C +ATOM 202 NH1 ARG A 9 3.376 -8.433 -1.503 1.00 2.94 N +ATOM 203 NH2 ARG A 9 4.900 -6.974 -0.587 1.00 3.48 N +ATOM 204 H ARG A 9 -0.342 -2.838 -0.361 1.00 0.22 H +ATOM 205 HA ARG A 9 1.884 -4.536 -0.513 1.00 0.30 H +ATOM 206 HB2 ARG A 9 -0.141 -4.836 -1.865 1.00 0.74 H +ATOM 207 HB3 ARG A 9 0.211 -3.354 -2.737 1.00 0.93 H +ATOM 208 HG2 ARG A 9 0.817 -5.204 -4.108 1.00 1.80 H +ATOM 209 HG3 ARG A 9 2.296 -4.405 -3.576 1.00 1.91 H +ATOM 210 HD2 ARG A 9 1.168 -6.770 -2.108 1.00 1.70 H +ATOM 211 HD3 ARG A 9 2.204 -6.974 -3.518 1.00 1.90 H +ATOM 212 HE ARG A 9 3.452 -5.247 -1.665 1.00 2.43 H +ATOM 213 HH11 ARG A 9 2.535 -8.608 -2.032 1.00 2.79 H +ATOM 214 HH12 ARG A 9 3.884 -9.210 -1.113 1.00 3.57 H +ATOM 215 HH21 ARG A 9 5.223 -6.041 -0.420 1.00 3.76 H +ATOM 216 HH22 ARG A 9 5.414 -7.751 -0.202 1.00 3.99 H +ATOM 217 N TRP A 10 2.258 -1.589 -1.938 1.00 0.18 N +ATOM 218 CA TRP A 10 3.229 -0.589 -2.365 1.00 0.18 C +ATOM 219 C TRP A 10 4.138 -0.183 -1.207 1.00 0.15 C +ATOM 220 O TRP A 10 5.356 -0.068 -1.368 1.00 0.15 O +ATOM 221 CB TRP A 10 2.482 0.631 -2.939 1.00 0.24 C +ATOM 222 CG TRP A 10 3.076 1.959 -2.557 1.00 0.27 C +ATOM 223 CD1 TRP A 10 2.746 2.711 -1.469 1.00 0.32 C +ATOM 224 CD2 TRP A 10 4.093 2.690 -3.258 1.00 0.33 C +ATOM 225 NE1 TRP A 10 3.510 3.845 -1.431 1.00 0.39 N +ATOM 226 CE2 TRP A 10 4.340 3.862 -2.519 1.00 0.39 C +ATOM 227 CE3 TRP A 10 4.820 2.467 -4.430 1.00 0.39 C +ATOM 228 CZ2 TRP A 10 5.283 4.805 -2.907 1.00 0.48 C +ATOM 229 CZ3 TRP A 10 5.755 3.408 -4.819 1.00 0.49 C +ATOM 230 CH2 TRP A 10 5.981 4.563 -4.059 1.00 0.53 C +ATOM 231 H TRP A 10 1.301 -1.357 -1.961 1.00 0.20 H +ATOM 232 HA TRP A 10 3.835 -1.024 -3.142 1.00 0.19 H +ATOM 233 HB2 TRP A 10 2.481 0.565 -4.018 1.00 0.29 H +ATOM 234 HB3 TRP A 10 1.460 0.609 -2.586 1.00 0.27 H +ATOM 235 HD1 TRP A 10 2.000 2.429 -0.739 1.00 0.36 H +ATOM 236 HE1 TRP A 10 3.464 4.534 -0.740 1.00 0.45 H +ATOM 237 HE3 TRP A 10 4.658 1.581 -5.028 1.00 0.39 H +ATOM 238 HZ2 TRP A 10 5.474 5.697 -2.326 1.00 0.54 H +ATOM 239 HZ3 TRP A 10 6.325 3.253 -5.721 1.00 0.57 H +ATOM 240 HH2 TRP A 10 6.719 5.271 -4.405 1.00 0.62 H +ATOM 241 N TRP A 11 3.528 0.012 -0.043 1.00 0.16 N +ATOM 242 CA TRP A 11 4.220 0.523 1.131 1.00 0.17 C +ATOM 243 C TRP A 11 5.425 -0.337 1.481 1.00 0.14 C +ATOM 244 O TRP A 11 6.562 0.125 1.407 1.00 0.18 O +ATOM 245 CB TRP A 11 3.245 0.585 2.312 1.00 0.23 C +ATOM 246 CG TRP A 11 3.531 1.700 3.268 1.00 0.36 C +ATOM 247 CD1 TRP A 11 2.761 2.800 3.505 1.00 0.48 C +ATOM 248 CD2 TRP A 11 4.675 1.826 4.110 1.00 0.43 C +ATOM 249 NE1 TRP A 11 3.357 3.596 4.452 1.00 0.61 N +ATOM 250 CE2 TRP A 11 4.538 3.019 4.836 1.00 0.58 C +ATOM 251 CE3 TRP A 11 5.801 1.039 4.319 1.00 0.44 C +ATOM 252 CZ2 TRP A 11 5.492 3.441 5.759 1.00 0.71 C +ATOM 253 CZ3 TRP A 11 6.747 1.455 5.231 1.00 0.57 C +ATOM 254 CH2 TRP A 11 6.589 2.644 5.942 1.00 0.69 C +ATOM 255 H TRP A 11 2.568 -0.191 0.026 1.00 0.19 H +ATOM 256 HA TRP A 11 4.565 1.519 0.918 1.00 0.20 H +ATOM 257 HB2 TRP A 11 2.243 0.721 1.932 1.00 0.28 H +ATOM 258 HB3 TRP A 11 3.294 -0.345 2.859 1.00 0.24 H +ATOM 259 HD1 TRP A 11 1.819 2.999 3.017 1.00 0.51 H +ATOM 260 HE1 TRP A 11 2.997 4.440 4.798 1.00 0.72 H +ATOM 261 HE3 TRP A 11 5.940 0.119 3.769 1.00 0.37 H +ATOM 262 HZ2 TRP A 11 5.383 4.359 6.316 1.00 0.83 H +ATOM 263 HZ3 TRP A 11 7.626 0.854 5.405 1.00 0.61 H +ATOM 264 HH2 TRP A 11 7.356 2.924 6.643 1.00 0.80 H +ATOM 265 N ARG A 12 5.179 -1.589 1.825 1.00 0.16 N +ATOM 266 CA ARG A 12 6.241 -2.479 2.276 1.00 0.22 C +ATOM 267 C ARG A 12 7.256 -2.770 1.174 1.00 0.21 C +ATOM 268 O ARG A 12 8.410 -3.089 1.455 1.00 0.27 O +ATOM 269 CB ARG A 12 5.667 -3.778 2.835 1.00 0.33 C +ATOM 270 CG ARG A 12 5.044 -3.630 4.213 1.00 1.49 C +ATOM 271 CD ARG A 12 6.046 -3.075 5.212 1.00 1.87 C +ATOM 272 NE ARG A 12 5.510 -3.049 6.569 1.00 2.29 N +ATOM 273 CZ ARG A 12 5.945 -2.235 7.530 1.00 2.74 C +ATOM 274 NH1 ARG A 12 6.910 -1.357 7.290 1.00 3.00 N +ATOM 275 NH2 ARG A 12 5.412 -2.304 8.741 1.00 3.27 N +ATOM 276 H ARG A 12 4.261 -1.931 1.762 1.00 0.19 H +ATOM 277 HA ARG A 12 6.761 -1.967 3.074 1.00 0.27 H +ATOM 278 HB2 ARG A 12 4.905 -4.138 2.162 1.00 0.95 H +ATOM 279 HB3 ARG A 12 6.455 -4.513 2.900 1.00 0.86 H +ATOM 280 HG2 ARG A 12 4.201 -2.958 4.146 1.00 2.00 H +ATOM 281 HG3 ARG A 12 4.709 -4.600 4.552 1.00 2.03 H +ATOM 282 HD2 ARG A 12 6.929 -3.695 5.198 1.00 2.25 H +ATOM 283 HD3 ARG A 12 6.305 -2.068 4.916 1.00 1.95 H +ATOM 284 HE ARG A 12 4.791 -3.686 6.781 1.00 2.50 H +ATOM 285 HH11 ARG A 12 7.330 -1.295 6.371 1.00 2.91 H +ATOM 286 HH12 ARG A 12 7.231 -0.752 8.018 1.00 3.51 H +ATOM 287 HH21 ARG A 12 4.687 -2.969 8.934 1.00 3.44 H +ATOM 288 HH22 ARG A 12 5.733 -1.690 9.475 1.00 3.66 H +ATOM 289 N ARG A 13 6.826 -2.717 -0.081 1.00 0.18 N +ATOM 290 CA ARG A 13 7.749 -2.949 -1.184 1.00 0.22 C +ATOM 291 C ARG A 13 8.713 -1.776 -1.380 1.00 0.21 C +ATOM 292 O ARG A 13 9.924 -1.936 -1.239 1.00 0.25 O +ATOM 293 CB ARG A 13 7.005 -3.229 -2.490 1.00 0.28 C +ATOM 294 CG ARG A 13 6.981 -4.700 -2.871 1.00 0.93 C +ATOM 295 CD ARG A 13 6.437 -4.920 -4.281 1.00 1.38 C +ATOM 296 NE ARG A 13 7.282 -4.315 -5.316 1.00 1.86 N +ATOM 297 CZ ARG A 13 7.356 -4.754 -6.570 1.00 2.76 C +ATOM 298 NH1 ARG A 13 6.679 -5.835 -6.949 1.00 3.47 N +ATOM 299 NH2 ARG A 13 8.128 -4.117 -7.438 1.00 3.35 N +ATOM 300 H ARG A 13 5.885 -2.513 -0.265 1.00 0.17 H +ATOM 301 HA ARG A 13 8.331 -3.821 -0.934 1.00 0.28 H +ATOM 302 HB2 ARG A 13 5.988 -2.888 -2.389 1.00 0.66 H +ATOM 303 HB3 ARG A 13 7.482 -2.679 -3.282 1.00 0.82 H +ATOM 304 HG2 ARG A 13 7.987 -5.091 -2.820 1.00 1.57 H +ATOM 305 HG3 ARG A 13 6.354 -5.229 -2.169 1.00 1.64 H +ATOM 306 HD2 ARG A 13 6.377 -5.981 -4.466 1.00 2.01 H +ATOM 307 HD3 ARG A 13 5.449 -4.490 -4.342 1.00 1.74 H +ATOM 308 HE ARG A 13 7.817 -3.533 -5.063 1.00 1.99 H +ATOM 309 HH11 ARG A 13 6.108 -6.338 -6.293 1.00 3.38 H +ATOM 310 HH12 ARG A 13 6.729 -6.155 -7.905 1.00 4.31 H +ATOM 311 HH21 ARG A 13 8.651 -3.301 -7.152 1.00 3.32 H +ATOM 312 HH22 ARG A 13 8.207 -4.446 -8.390 1.00 4.06 H +ATOM 313 N TRP A 14 8.179 -0.606 -1.715 1.00 0.20 N +ATOM 314 CA TRP A 14 9.020 0.520 -2.100 1.00 0.24 C +ATOM 315 C TRP A 14 9.713 1.174 -0.902 1.00 0.21 C +ATOM 316 O TRP A 14 10.943 1.154 -0.798 1.00 0.27 O +ATOM 317 CB TRP A 14 8.203 1.556 -2.875 1.00 0.31 C +ATOM 318 CG TRP A 14 9.042 2.627 -3.491 1.00 0.42 C +ATOM 319 CD1 TRP A 14 9.681 2.568 -4.693 1.00 0.54 C +ATOM 320 CD2 TRP A 14 9.331 3.917 -2.943 1.00 0.48 C +ATOM 321 NE1 TRP A 14 10.366 3.735 -4.916 1.00 0.64 N +ATOM 322 CE2 TRP A 14 10.162 4.581 -3.858 1.00 0.60 C +ATOM 323 CE3 TRP A 14 8.970 4.571 -1.765 1.00 0.49 C +ATOM 324 CZ2 TRP A 14 10.639 5.871 -3.633 1.00 0.70 C +ATOM 325 CZ3 TRP A 14 9.441 5.851 -1.540 1.00 0.62 C +ATOM 326 CH2 TRP A 14 10.269 6.490 -2.473 1.00 0.71 C +ATOM 327 H TRP A 14 7.200 -0.492 -1.687 1.00 0.19 H +ATOM 328 HA TRP A 14 9.784 0.139 -2.754 1.00 0.30 H +ATOM 329 HB2 TRP A 14 7.663 1.061 -3.666 1.00 0.37 H +ATOM 330 HB3 TRP A 14 7.500 2.028 -2.206 1.00 0.26 H +ATOM 331 HD1 TRP A 14 9.653 1.716 -5.357 1.00 0.59 H +ATOM 332 HE1 TRP A 14 10.914 3.937 -5.715 1.00 0.74 H +ATOM 333 HE3 TRP A 14 8.336 4.092 -1.037 1.00 0.44 H +ATOM 334 HZ2 TRP A 14 11.280 6.375 -4.341 1.00 0.80 H +ATOM 335 HZ3 TRP A 14 9.168 6.373 -0.635 1.00 0.67 H +ATOM 336 HH2 TRP A 14 10.616 7.491 -2.261 1.00 0.80 H +ATOM 337 N ARG A 15 8.926 1.765 -0.009 1.00 0.20 N +ATOM 338 CA ARG A 15 9.480 2.469 1.143 1.00 0.22 C +ATOM 339 C ARG A 15 9.952 1.490 2.214 1.00 0.26 C +ATOM 340 O ARG A 15 10.924 1.761 2.922 1.00 0.44 O +ATOM 341 CB ARG A 15 8.503 3.521 1.704 1.00 0.41 C +ATOM 342 CG ARG A 15 7.059 3.074 1.835 1.00 0.57 C +ATOM 343 CD ARG A 15 6.234 3.377 0.587 1.00 0.40 C +ATOM 344 NE ARG A 15 6.098 4.815 0.330 1.00 0.46 N +ATOM 345 CZ ARG A 15 5.232 5.615 0.961 1.00 0.82 C +ATOM 346 NH1 ARG A 15 4.469 5.142 1.945 1.00 1.35 N +ATOM 347 NH2 ARG A 15 5.128 6.892 0.606 1.00 0.88 N +ATOM 348 H ARG A 15 7.963 1.696 -0.109 1.00 0.25 H +ATOM 349 HA ARG A 15 10.354 2.989 0.783 1.00 0.28 H +ATOM 350 HB2 ARG A 15 8.841 3.812 2.679 1.00 0.94 H +ATOM 351 HB3 ARG A 15 8.523 4.388 1.058 1.00 1.01 H +ATOM 352 HG2 ARG A 15 7.044 2.011 2.010 1.00 1.12 H +ATOM 353 HG3 ARG A 15 6.616 3.585 2.678 1.00 1.13 H +ATOM 354 HD2 ARG A 15 6.710 2.921 -0.264 1.00 0.45 H +ATOM 355 HD3 ARG A 15 5.249 2.950 0.715 1.00 0.45 H +ATOM 356 HE ARG A 15 6.662 5.202 -0.384 1.00 0.63 H +ATOM 357 HH11 ARG A 15 4.537 4.181 2.221 1.00 1.40 H +ATOM 358 HH12 ARG A 15 3.819 5.753 2.421 1.00 1.76 H +ATOM 359 HH21 ARG A 15 5.703 7.263 -0.140 1.00 0.77 H +ATOM 360 HH22 ARG A 15 4.474 7.498 1.073 1.00 1.22 H +ATOM 361 N ARG A 16 9.249 0.362 2.308 1.00 0.40 N +ATOM 362 CA ARG A 16 9.651 -0.776 3.136 1.00 0.55 C +ATOM 363 C ARG A 16 9.511 -0.489 4.627 1.00 1.46 C +ATOM 364 O ARG A 16 8.540 -0.983 5.236 1.00 2.20 O +ATOM 365 CB ARG A 16 11.084 -1.205 2.808 1.00 1.14 C +ATOM 366 CG ARG A 16 11.349 -2.675 3.077 1.00 2.07 C +ATOM 367 CD ARG A 16 11.685 -3.421 1.793 1.00 2.76 C +ATOM 368 NE ARG A 16 13.058 -3.169 1.347 1.00 3.02 N +ATOM 369 CZ ARG A 16 13.423 -2.978 0.078 1.00 3.81 C +ATOM 370 NH1 ARG A 16 12.510 -2.877 -0.883 1.00 4.43 N +ATOM 371 NH2 ARG A 16 14.709 -2.840 -0.217 1.00 4.37 N +ATOM 372 OXT ARG A 16 10.374 0.208 5.192 1.00 2.24 O +ATOM 373 H ARG A 16 8.417 0.289 1.799 1.00 0.55 H +ATOM 374 HA ARG A 16 8.988 -1.592 2.895 1.00 1.33 H +ATOM 375 HB2 ARG A 16 11.274 -1.009 1.764 1.00 1.66 H +ATOM 376 HB3 ARG A 16 11.770 -0.620 3.407 1.00 1.64 H +ATOM 377 HG2 ARG A 16 12.179 -2.759 3.762 1.00 2.52 H +ATOM 378 HG3 ARG A 16 10.467 -3.114 3.520 1.00 2.56 H +ATOM 379 HD2 ARG A 16 11.560 -4.480 1.966 1.00 3.30 H +ATOM 380 HD3 ARG A 16 11.001 -3.102 1.018 1.00 3.15 H +ATOM 381 HE ARG A 16 13.765 -3.176 2.042 1.00 2.98 H +ATOM 382 HH11 ARG A 16 11.532 -2.935 -0.660 1.00 4.37 H +ATOM 383 HH12 ARG A 16 12.793 -2.749 -1.833 1.00 5.17 H +ATOM 384 HH21 ARG A 16 15.397 -2.875 0.515 1.00 4.32 H +ATOM 385 HH22 ARG A 16 15.005 -2.711 -1.166 1.00 5.07 H +TER 386 ARG A 16 +ENDMDL +MODEL 4 +ATOM 1 N ARG A 1 -11.805 0.813 2.033 1.00 0.94 N +ATOM 2 CA ARG A 1 -10.356 0.687 2.160 1.00 0.72 C +ATOM 3 C ARG A 1 -9.769 -0.159 1.028 1.00 0.60 C +ATOM 4 O ARG A 1 -8.747 -0.820 1.205 1.00 0.64 O +ATOM 5 CB ARG A 1 -10.001 0.078 3.521 1.00 1.24 C +ATOM 6 CG ARG A 1 -10.657 -1.265 3.783 1.00 1.81 C +ATOM 7 CD ARG A 1 -10.239 -1.836 5.128 1.00 2.42 C +ATOM 8 NE ARG A 1 -10.900 -3.110 5.402 1.00 3.29 N +ATOM 9 CZ ARG A 1 -10.511 -3.976 6.342 1.00 4.10 C +ATOM 10 NH1 ARG A 1 -9.493 -3.689 7.149 1.00 4.22 N +ATOM 11 NH2 ARG A 1 -11.171 -5.117 6.494 1.00 5.01 N +ATOM 12 H ARG A 1 -12.378 0.144 2.460 1.00 1.36 H +ATOM 13 HA ARG A 1 -9.935 1.679 2.102 1.00 0.90 H +ATOM 14 HB2 ARG A 1 -8.933 -0.054 3.575 1.00 1.52 H +ATOM 15 HB3 ARG A 1 -10.314 0.760 4.298 1.00 1.64 H +ATOM 16 HG2 ARG A 1 -11.731 -1.137 3.774 1.00 2.17 H +ATOM 17 HG3 ARG A 1 -10.368 -1.953 3.001 1.00 2.13 H +ATOM 18 HD2 ARG A 1 -9.170 -1.987 5.122 1.00 2.35 H +ATOM 19 HD3 ARG A 1 -10.500 -1.131 5.902 1.00 2.78 H +ATOM 20 HE ARG A 1 -11.678 -3.337 4.846 1.00 3.48 H +ATOM 21 HH11 ARG A 1 -9.002 -2.814 7.055 1.00 3.76 H +ATOM 22 HH12 ARG A 1 -9.216 -4.338 7.862 1.00 4.94 H +ATOM 23 HH21 ARG A 1 -11.966 -5.318 5.909 1.00 5.16 H +ATOM 24 HH22 ARG A 1 -10.876 -5.795 7.177 1.00 5.67 H +ATOM 25 N ARG A 2 -10.394 -0.094 -0.147 1.00 0.54 N +ATOM 26 CA ARG A 2 -9.953 -0.873 -1.305 1.00 0.51 C +ATOM 27 C ARG A 2 -8.535 -0.500 -1.691 1.00 0.39 C +ATOM 28 O ARG A 2 -7.677 -1.357 -1.893 1.00 0.41 O +ATOM 29 CB ARG A 2 -10.857 -0.619 -2.508 1.00 0.59 C +ATOM 30 CG ARG A 2 -12.338 -0.746 -2.215 1.00 1.27 C +ATOM 31 CD ARG A 2 -13.125 -0.871 -3.501 1.00 2.13 C +ATOM 32 NE ARG A 2 -14.568 -0.899 -3.272 1.00 2.80 N +ATOM 33 CZ ARG A 2 -15.331 -1.977 -3.459 1.00 3.73 C +ATOM 34 NH1 ARG A 2 -14.782 -3.129 -3.818 1.00 4.17 N +ATOM 35 NH2 ARG A 2 -16.642 -1.911 -3.284 1.00 4.44 N +ATOM 36 H ARG A 2 -11.165 0.504 -0.241 1.00 0.59 H +ATOM 37 HA ARG A 2 -9.991 -1.916 -1.052 1.00 0.60 H +ATOM 38 HB2 ARG A 2 -10.672 0.380 -2.870 1.00 0.87 H +ATOM 39 HB3 ARG A 2 -10.602 -1.326 -3.286 1.00 1.05 H +ATOM 40 HG2 ARG A 2 -12.505 -1.624 -1.610 1.00 1.80 H +ATOM 41 HG3 ARG A 2 -12.664 0.136 -1.681 1.00 1.44 H +ATOM 42 HD2 ARG A 2 -12.886 -0.033 -4.138 1.00 2.58 H +ATOM 43 HD3 ARG A 2 -12.831 -1.787 -3.991 1.00 2.36 H +ATOM 44 HE ARG A 2 -14.999 -0.055 -2.985 1.00 2.78 H +ATOM 45 HH11 ARG A 2 -13.796 -3.198 -3.961 1.00 3.85 H +ATOM 46 HH12 ARG A 2 -15.363 -3.948 -3.939 1.00 4.97 H +ATOM 47 HH21 ARG A 2 -17.078 -1.045 -3.014 1.00 4.37 H +ATOM 48 HH22 ARG A 2 -17.209 -2.728 -3.430 1.00 5.17 H +ATOM 49 N TRP A 3 -8.315 0.798 -1.784 1.00 0.34 N +ATOM 50 CA TRP A 3 -7.037 1.340 -2.210 1.00 0.29 C +ATOM 51 C TRP A 3 -5.929 1.020 -1.214 1.00 0.22 C +ATOM 52 O TRP A 3 -4.769 0.880 -1.597 1.00 0.20 O +ATOM 53 CB TRP A 3 -7.149 2.851 -2.432 1.00 0.42 C +ATOM 54 CG TRP A 3 -7.692 3.600 -1.252 1.00 0.53 C +ATOM 55 CD1 TRP A 3 -8.994 3.662 -0.846 1.00 0.60 C +ATOM 56 CD2 TRP A 3 -6.948 4.403 -0.331 1.00 0.65 C +ATOM 57 NE1 TRP A 3 -9.103 4.449 0.271 1.00 0.75 N +ATOM 58 CE2 TRP A 3 -7.863 4.916 0.607 1.00 0.79 C +ATOM 59 CE3 TRP A 3 -5.598 4.736 -0.207 1.00 0.67 C +ATOM 60 CZ2 TRP A 3 -7.470 5.744 1.653 1.00 0.95 C +ATOM 61 CZ3 TRP A 3 -5.209 5.559 0.834 1.00 0.83 C +ATOM 62 CH2 TRP A 3 -6.143 6.054 1.753 1.00 0.96 C +ATOM 63 H TRP A 3 -9.043 1.413 -1.560 1.00 0.39 H +ATOM 64 HA TRP A 3 -6.790 0.871 -3.151 1.00 0.31 H +ATOM 65 HB2 TRP A 3 -6.167 3.245 -2.654 1.00 0.44 H +ATOM 66 HB3 TRP A 3 -7.803 3.033 -3.271 1.00 0.48 H +ATOM 67 HD1 TRP A 3 -9.808 3.155 -1.340 1.00 0.57 H +ATOM 68 HE1 TRP A 3 -9.938 4.649 0.751 1.00 0.84 H +ATOM 69 HE3 TRP A 3 -4.866 4.361 -0.906 1.00 0.59 H +ATOM 70 HZ2 TRP A 3 -8.175 6.136 2.370 1.00 1.06 H +ATOM 71 HZ3 TRP A 3 -4.169 5.828 0.947 1.00 0.86 H +ATOM 72 HH2 TRP A 3 -5.793 6.696 2.549 1.00 1.10 H +ATOM 73 N ARG A 4 -6.293 0.903 0.061 1.00 0.25 N +ATOM 74 CA ARG A 4 -5.330 0.596 1.112 1.00 0.26 C +ATOM 75 C ARG A 4 -4.689 -0.770 0.892 1.00 0.20 C +ATOM 76 O ARG A 4 -3.548 -0.993 1.292 1.00 0.22 O +ATOM 77 CB ARG A 4 -5.977 0.683 2.497 1.00 0.39 C +ATOM 78 CG ARG A 4 -6.343 2.103 2.906 1.00 0.93 C +ATOM 79 CD ARG A 4 -5.110 2.987 3.077 1.00 0.78 C +ATOM 80 NE ARG A 4 -4.315 2.615 4.245 1.00 0.93 N +ATOM 81 CZ ARG A 4 -3.663 3.491 5.015 1.00 1.11 C +ATOM 82 NH1 ARG A 4 -3.681 4.789 4.721 1.00 1.09 N +ATOM 83 NH2 ARG A 4 -2.988 3.074 6.075 1.00 1.91 N +ATOM 84 H ARG A 4 -7.234 1.021 0.298 1.00 0.33 H +ATOM 85 HA ARG A 4 -4.554 1.339 1.048 1.00 0.29 H +ATOM 86 HB2 ARG A 4 -6.875 0.086 2.504 1.00 0.67 H +ATOM 87 HB3 ARG A 4 -5.286 0.291 3.228 1.00 0.82 H +ATOM 88 HG2 ARG A 4 -6.977 2.534 2.144 1.00 1.41 H +ATOM 89 HG3 ARG A 4 -6.879 2.067 3.842 1.00 1.45 H +ATOM 90 HD2 ARG A 4 -4.491 2.899 2.193 1.00 1.29 H +ATOM 91 HD3 ARG A 4 -5.429 4.013 3.184 1.00 1.06 H +ATOM 92 HE ARG A 4 -4.262 1.653 4.473 1.00 1.46 H +ATOM 93 HH11 ARG A 4 -4.184 5.122 3.923 1.00 1.34 H +ATOM 94 HH12 ARG A 4 -3.169 5.441 5.296 1.00 1.35 H +ATOM 95 HH21 ARG A 4 -2.960 2.093 6.305 1.00 2.46 H +ATOM 96 HH22 ARG A 4 -2.507 3.735 6.658 1.00 2.10 H +ATOM 97 N ARG A 5 -5.425 -1.677 0.262 1.00 0.22 N +ATOM 98 CA ARG A 5 -4.887 -2.990 -0.092 1.00 0.29 C +ATOM 99 C ARG A 5 -3.634 -2.836 -0.957 1.00 0.25 C +ATOM 100 O ARG A 5 -2.595 -3.437 -0.686 1.00 0.32 O +ATOM 101 CB ARG A 5 -5.927 -3.824 -0.846 1.00 0.37 C +ATOM 102 CG ARG A 5 -5.392 -5.175 -1.302 1.00 0.90 C +ATOM 103 CD ARG A 5 -6.343 -5.870 -2.265 1.00 0.89 C +ATOM 104 NE ARG A 5 -7.581 -6.307 -1.621 1.00 1.49 N +ATOM 105 CZ ARG A 5 -8.684 -6.645 -2.285 1.00 1.77 C +ATOM 106 NH1 ARG A 5 -8.718 -6.566 -3.611 1.00 1.45 N +ATOM 107 NH2 ARG A 5 -9.749 -7.071 -1.624 1.00 2.70 N +ATOM 108 H ARG A 5 -6.349 -1.456 0.030 1.00 0.24 H +ATOM 109 HA ARG A 5 -4.621 -3.499 0.823 1.00 0.37 H +ATOM 110 HB2 ARG A 5 -6.776 -3.992 -0.199 1.00 0.92 H +ATOM 111 HB3 ARG A 5 -6.253 -3.275 -1.717 1.00 0.72 H +ATOM 112 HG2 ARG A 5 -4.443 -5.026 -1.798 1.00 1.29 H +ATOM 113 HG3 ARG A 5 -5.250 -5.804 -0.435 1.00 1.42 H +ATOM 114 HD2 ARG A 5 -6.586 -5.186 -3.061 1.00 1.52 H +ATOM 115 HD3 ARG A 5 -5.840 -6.734 -2.676 1.00 0.93 H +ATOM 116 HE ARG A 5 -7.584 -6.366 -0.635 1.00 2.03 H +ATOM 117 HH11 ARG A 5 -7.912 -6.261 -4.117 1.00 1.37 H +ATOM 118 HH12 ARG A 5 -9.563 -6.801 -4.115 1.00 1.73 H +ATOM 119 HH21 ARG A 5 -9.724 -7.140 -0.619 1.00 3.26 H +ATOM 120 HH22 ARG A 5 -10.586 -7.338 -2.125 1.00 2.93 H +ATOM 121 N TRP A 6 -3.739 -2.026 -2.002 1.00 0.21 N +ATOM 122 CA TRP A 6 -2.603 -1.777 -2.882 1.00 0.27 C +ATOM 123 C TRP A 6 -1.593 -0.889 -2.170 1.00 0.22 C +ATOM 124 O TRP A 6 -0.383 -1.060 -2.310 1.00 0.26 O +ATOM 125 CB TRP A 6 -3.053 -1.114 -4.187 1.00 0.34 C +ATOM 126 CG TRP A 6 -4.250 -1.770 -4.809 1.00 0.35 C +ATOM 127 CD1 TRP A 6 -4.388 -3.088 -5.141 1.00 0.43 C +ATOM 128 CD2 TRP A 6 -5.477 -1.133 -5.188 1.00 0.34 C +ATOM 129 NE1 TRP A 6 -5.627 -3.311 -5.683 1.00 0.49 N +ATOM 130 CE2 TRP A 6 -6.314 -2.128 -5.729 1.00 0.43 C +ATOM 131 CE3 TRP A 6 -5.949 0.178 -5.118 1.00 0.32 C +ATOM 132 CZ2 TRP A 6 -7.594 -1.853 -6.197 1.00 0.48 C +ATOM 133 CZ3 TRP A 6 -7.220 0.451 -5.584 1.00 0.37 C +ATOM 134 CH2 TRP A 6 -8.030 -0.560 -6.117 1.00 0.44 C +ATOM 135 H TRP A 6 -4.598 -1.586 -2.184 1.00 0.19 H +ATOM 136 HA TRP A 6 -2.142 -2.729 -3.107 1.00 0.34 H +ATOM 137 HB2 TRP A 6 -3.301 -0.080 -3.995 1.00 0.34 H +ATOM 138 HB3 TRP A 6 -2.242 -1.159 -4.900 1.00 0.47 H +ATOM 139 HD1 TRP A 6 -3.631 -3.841 -4.981 1.00 0.48 H +ATOM 140 HE1 TRP A 6 -5.962 -4.177 -5.994 1.00 0.58 H +ATOM 141 HE3 TRP A 6 -5.336 0.969 -4.712 1.00 0.32 H +ATOM 142 HZ2 TRP A 6 -8.229 -2.624 -6.608 1.00 0.57 H +ATOM 143 HZ3 TRP A 6 -7.602 1.459 -5.541 1.00 0.39 H +ATOM 144 HH2 TRP A 6 -9.017 -0.299 -6.470 1.00 0.50 H +ATOM 145 N TRP A 7 -2.129 0.052 -1.401 1.00 0.17 N +ATOM 146 CA TRP A 7 -1.348 0.992 -0.603 1.00 0.18 C +ATOM 147 C TRP A 7 -0.330 0.273 0.289 1.00 0.16 C +ATOM 148 O TRP A 7 0.854 0.599 0.274 1.00 0.19 O +ATOM 149 CB TRP A 7 -2.317 1.809 0.253 1.00 0.20 C +ATOM 150 CG TRP A 7 -1.677 2.800 1.184 1.00 0.34 C +ATOM 151 CD1 TRP A 7 -1.177 2.557 2.433 1.00 0.44 C +ATOM 152 CD2 TRP A 7 -1.507 4.200 0.953 1.00 0.51 C +ATOM 153 NE1 TRP A 7 -0.699 3.720 2.986 1.00 0.62 N +ATOM 154 CE2 TRP A 7 -0.891 4.741 2.096 1.00 0.65 C +ATOM 155 CE3 TRP A 7 -1.810 5.047 -0.114 1.00 0.62 C +ATOM 156 CZ2 TRP A 7 -0.577 6.094 2.200 1.00 0.85 C +ATOM 157 CZ3 TRP A 7 -1.500 6.387 -0.010 1.00 0.81 C +ATOM 158 CH2 TRP A 7 -0.889 6.900 1.141 1.00 0.91 C +ATOM 159 H TRP A 7 -3.111 0.127 -1.380 1.00 0.17 H +ATOM 160 HA TRP A 7 -0.826 1.658 -1.275 1.00 0.25 H +ATOM 161 HB2 TRP A 7 -2.982 2.356 -0.400 1.00 0.28 H +ATOM 162 HB3 TRP A 7 -2.904 1.124 0.848 1.00 0.20 H +ATOM 163 HD1 TRP A 7 -1.165 1.588 2.903 1.00 0.45 H +ATOM 164 HE1 TRP A 7 -0.285 3.802 3.875 1.00 0.74 H +ATOM 165 HE3 TRP A 7 -2.279 4.666 -1.008 1.00 0.59 H +ATOM 166 HZ2 TRP A 7 -0.110 6.504 3.080 1.00 0.97 H +ATOM 167 HZ3 TRP A 7 -1.730 7.058 -0.824 1.00 0.92 H +ATOM 168 HH2 TRP A 7 -0.666 7.954 1.179 1.00 1.07 H +ATOM 169 N ARG A 8 -0.800 -0.702 1.062 1.00 0.16 N +ATOM 170 CA ARG A 8 0.058 -1.414 2.008 1.00 0.22 C +ATOM 171 C ARG A 8 1.131 -2.240 1.296 1.00 0.20 C +ATOM 172 O ARG A 8 2.271 -2.311 1.761 1.00 0.23 O +ATOM 173 CB ARG A 8 -0.780 -2.302 2.936 1.00 0.36 C +ATOM 174 CG ARG A 8 -1.662 -3.303 2.206 1.00 0.93 C +ATOM 175 CD ARG A 8 -2.524 -4.095 3.172 1.00 1.11 C +ATOM 176 NE ARG A 8 -1.721 -4.944 4.042 1.00 1.71 N +ATOM 177 CZ ARG A 8 -2.012 -5.205 5.310 1.00 2.38 C +ATOM 178 NH1 ARG A 8 -3.078 -4.654 5.879 1.00 2.43 N +ATOM 179 NH2 ARG A 8 -1.228 -6.009 6.012 1.00 3.45 N +ATOM 180 H ARG A 8 -1.755 -0.935 1.008 1.00 0.16 H +ATOM 181 HA ARG A 8 0.554 -0.666 2.609 1.00 0.28 H +ATOM 182 HB2 ARG A 8 -0.113 -2.850 3.585 1.00 1.17 H +ATOM 183 HB3 ARG A 8 -1.415 -1.671 3.539 1.00 1.04 H +ATOM 184 HG2 ARG A 8 -2.304 -2.772 1.520 1.00 1.48 H +ATOM 185 HG3 ARG A 8 -1.031 -3.988 1.656 1.00 1.64 H +ATOM 186 HD2 ARG A 8 -3.086 -3.403 3.781 1.00 1.70 H +ATOM 187 HD3 ARG A 8 -3.206 -4.713 2.605 1.00 1.56 H +ATOM 188 HE ARG A 8 -0.909 -5.357 3.646 1.00 2.17 H +ATOM 189 HH11 ARG A 8 -3.667 -4.041 5.355 1.00 2.23 H +ATOM 190 HH12 ARG A 8 -3.291 -4.844 6.844 1.00 3.07 H +ATOM 191 HH21 ARG A 8 -0.414 -6.415 5.585 1.00 3.87 H +ATOM 192 HH22 ARG A 8 -1.454 -6.232 6.964 1.00 4.01 H +ATOM 193 N ARG A 9 0.776 -2.852 0.170 1.00 0.21 N +ATOM 194 CA ARG A 9 1.744 -3.617 -0.607 1.00 0.25 C +ATOM 195 C ARG A 9 2.783 -2.677 -1.190 1.00 0.21 C +ATOM 196 O ARG A 9 3.982 -2.940 -1.126 1.00 0.26 O +ATOM 197 CB ARG A 9 1.064 -4.379 -1.736 1.00 0.33 C +ATOM 198 CG ARG A 9 -0.002 -5.351 -1.270 1.00 1.21 C +ATOM 199 CD ARG A 9 -0.510 -6.206 -2.418 1.00 1.46 C +ATOM 200 NE ARG A 9 -0.805 -5.410 -3.611 1.00 2.08 N +ATOM 201 CZ ARG A 9 -1.588 -5.816 -4.606 1.00 2.69 C +ATOM 202 NH1 ARG A 9 -2.182 -7.005 -4.558 1.00 2.94 N +ATOM 203 NH2 ARG A 9 -1.779 -5.028 -5.656 1.00 3.48 N +ATOM 204 H ARG A 9 -0.151 -2.790 -0.144 1.00 0.22 H +ATOM 205 HA ARG A 9 2.225 -4.319 0.053 1.00 0.30 H +ATOM 206 HB2 ARG A 9 0.599 -3.664 -2.392 1.00 0.74 H +ATOM 207 HB3 ARG A 9 1.812 -4.931 -2.286 1.00 0.93 H +ATOM 208 HG2 ARG A 9 0.417 -5.998 -0.510 1.00 1.80 H +ATOM 209 HG3 ARG A 9 -0.827 -4.792 -0.856 1.00 1.91 H +ATOM 210 HD2 ARG A 9 0.243 -6.940 -2.664 1.00 1.70 H +ATOM 211 HD3 ARG A 9 -1.412 -6.711 -2.102 1.00 1.90 H +ATOM 212 HE ARG A 9 -0.379 -4.523 -3.676 1.00 2.43 H +ATOM 213 HH11 ARG A 9 -2.048 -7.613 -3.767 1.00 2.79 H +ATOM 214 HH12 ARG A 9 -2.770 -7.301 -5.316 1.00 3.57 H +ATOM 215 HH21 ARG A 9 -1.332 -4.130 -5.703 1.00 3.76 H +ATOM 216 HH22 ARG A 9 -2.382 -5.329 -6.407 1.00 3.99 H +ATOM 217 N TRP A 10 2.297 -1.573 -1.751 1.00 0.18 N +ATOM 218 CA TRP A 10 3.153 -0.517 -2.269 1.00 0.18 C +ATOM 219 C TRP A 10 4.098 -0.019 -1.182 1.00 0.15 C +ATOM 220 O TRP A 10 5.293 0.154 -1.415 1.00 0.15 O +ATOM 221 CB TRP A 10 2.286 0.636 -2.805 1.00 0.24 C +ATOM 222 CG TRP A 10 2.892 2.000 -2.623 1.00 0.27 C +ATOM 223 CD1 TRP A 10 2.673 2.861 -1.583 1.00 0.32 C +ATOM 224 CD2 TRP A 10 3.815 2.655 -3.497 1.00 0.33 C +ATOM 225 NE1 TRP A 10 3.410 4.005 -1.756 1.00 0.39 N +ATOM 226 CE2 TRP A 10 4.117 3.904 -2.925 1.00 0.39 C +ATOM 227 CE3 TRP A 10 4.414 2.305 -4.706 1.00 0.39 C +ATOM 228 CZ2 TRP A 10 4.993 4.804 -3.524 1.00 0.48 C +ATOM 229 CZ3 TRP A 10 5.284 3.196 -5.302 1.00 0.49 C +ATOM 230 CH2 TRP A 10 5.567 4.435 -4.710 1.00 0.53 C +ATOM 231 H TRP A 10 1.320 -1.463 -1.814 1.00 0.20 H +ATOM 232 HA TRP A 10 3.737 -0.928 -3.079 1.00 0.19 H +ATOM 233 HB2 TRP A 10 2.124 0.486 -3.863 1.00 0.29 H +ATOM 234 HB3 TRP A 10 1.333 0.624 -2.298 1.00 0.27 H +ATOM 235 HD1 TRP A 10 2.017 2.654 -0.747 1.00 0.36 H +ATOM 236 HE1 TRP A 10 3.423 4.771 -1.143 1.00 0.45 H +ATOM 237 HE3 TRP A 10 4.209 1.353 -5.170 1.00 0.39 H +ATOM 238 HZ2 TRP A 10 5.227 5.760 -3.074 1.00 0.54 H +ATOM 239 HZ3 TRP A 10 5.756 2.941 -6.241 1.00 0.57 H +ATOM 240 HH2 TRP A 10 6.252 5.104 -5.211 1.00 0.62 H +ATOM 241 N TRP A 11 3.547 0.191 0.005 1.00 0.16 N +ATOM 242 CA TRP A 11 4.302 0.693 1.137 1.00 0.17 C +ATOM 243 C TRP A 11 5.483 -0.223 1.439 1.00 0.14 C +ATOM 244 O TRP A 11 6.636 0.189 1.328 1.00 0.18 O +ATOM 245 CB TRP A 11 3.378 0.804 2.360 1.00 0.23 C +ATOM 246 CG TRP A 11 3.810 1.819 3.376 1.00 0.36 C +ATOM 247 CD1 TRP A 11 3.128 2.942 3.750 1.00 0.48 C +ATOM 248 CD2 TRP A 11 5.015 1.807 4.146 1.00 0.43 C +ATOM 249 NE1 TRP A 11 3.839 3.627 4.707 1.00 0.61 N +ATOM 250 CE2 TRP A 11 5.002 2.947 4.967 1.00 0.58 C +ATOM 251 CE3 TRP A 11 6.101 0.938 4.218 1.00 0.44 C +ATOM 252 CZ2 TRP A 11 6.038 3.234 5.852 1.00 0.71 C +ATOM 253 CZ3 TRP A 11 7.129 1.223 5.092 1.00 0.57 C +ATOM 254 CH2 TRP A 11 7.093 2.361 5.899 1.00 0.69 C +ATOM 255 H TRP A 11 2.585 0.008 0.118 1.00 0.19 H +ATOM 256 HA TRP A 11 4.679 1.669 0.885 1.00 0.20 H +ATOM 257 HB2 TRP A 11 2.389 1.072 2.025 1.00 0.28 H +ATOM 258 HB3 TRP A 11 3.333 -0.158 2.853 1.00 0.24 H +ATOM 259 HD1 TRP A 11 2.169 3.233 3.347 1.00 0.51 H +ATOM 260 HE1 TRP A 11 3.558 4.468 5.137 1.00 0.72 H +ATOM 261 HE3 TRP A 11 6.148 0.060 3.590 1.00 0.37 H +ATOM 262 HZ2 TRP A 11 6.022 4.110 6.484 1.00 0.83 H +ATOM 263 HZ3 TRP A 11 7.978 0.557 5.157 1.00 0.61 H +ATOM 264 HH2 TRP A 11 7.920 2.542 6.567 1.00 0.80 H +ATOM 265 N ARG A 12 5.190 -1.471 1.781 1.00 0.16 N +ATOM 266 CA ARG A 12 6.226 -2.397 2.231 1.00 0.22 C +ATOM 267 C ARG A 12 7.196 -2.753 1.101 1.00 0.21 C +ATOM 268 O ARG A 12 8.362 -3.043 1.353 1.00 0.27 O +ATOM 269 CB ARG A 12 5.608 -3.666 2.827 1.00 0.33 C +ATOM 270 CG ARG A 12 6.638 -4.588 3.471 1.00 1.49 C +ATOM 271 CD ARG A 12 7.368 -3.913 4.629 1.00 1.87 C +ATOM 272 NE ARG A 12 6.510 -3.762 5.803 1.00 2.29 N +ATOM 273 CZ ARG A 12 6.739 -2.893 6.792 1.00 2.74 C +ATOM 274 NH1 ARG A 12 7.721 -2.004 6.697 1.00 3.00 N +ATOM 275 NH2 ARG A 12 5.962 -2.898 7.870 1.00 3.27 N +ATOM 276 H ARG A 12 4.258 -1.777 1.733 1.00 0.19 H +ATOM 277 HA ARG A 12 6.786 -1.896 3.006 1.00 0.27 H +ATOM 278 HB2 ARG A 12 4.881 -3.381 3.576 1.00 0.95 H +ATOM 279 HB3 ARG A 12 5.106 -4.214 2.041 1.00 0.86 H +ATOM 280 HG2 ARG A 12 6.134 -5.465 3.846 1.00 2.00 H +ATOM 281 HG3 ARG A 12 7.362 -4.880 2.724 1.00 2.03 H +ATOM 282 HD2 ARG A 12 8.224 -4.514 4.899 1.00 2.25 H +ATOM 283 HD3 ARG A 12 7.703 -2.936 4.310 1.00 1.95 H +ATOM 284 HE ARG A 12 5.743 -4.372 5.877 1.00 2.50 H +ATOM 285 HH11 ARG A 12 8.308 -1.972 5.877 1.00 2.91 H +ATOM 286 HH12 ARG A 12 7.887 -1.352 7.441 1.00 3.51 H +ATOM 287 HH21 ARG A 12 5.202 -3.553 7.945 1.00 3.44 H +ATOM 288 HH22 ARG A 12 6.143 -2.257 8.629 1.00 3.66 H +ATOM 289 N ARG A 13 6.717 -2.756 -0.138 1.00 0.18 N +ATOM 290 CA ARG A 13 7.595 -3.016 -1.280 1.00 0.22 C +ATOM 291 C ARG A 13 8.528 -1.837 -1.552 1.00 0.21 C +ATOM 292 O ARG A 13 9.748 -1.998 -1.587 1.00 0.25 O +ATOM 293 CB ARG A 13 6.799 -3.324 -2.551 1.00 0.28 C +ATOM 294 CG ARG A 13 6.210 -4.723 -2.591 1.00 0.93 C +ATOM 295 CD ARG A 13 5.519 -4.999 -3.921 1.00 1.38 C +ATOM 296 NE ARG A 13 5.060 -6.384 -4.025 1.00 1.86 N +ATOM 297 CZ ARG A 13 4.478 -6.902 -5.109 1.00 2.76 C +ATOM 298 NH1 ARG A 13 4.283 -6.154 -6.191 1.00 3.47 N +ATOM 299 NH2 ARG A 13 4.106 -8.176 -5.114 1.00 3.35 N +ATOM 300 H ARG A 13 5.763 -2.575 -0.288 1.00 0.17 H +ATOM 301 HA ARG A 13 8.198 -3.876 -1.031 1.00 0.28 H +ATOM 302 HB2 ARG A 13 5.992 -2.613 -2.639 1.00 0.66 H +ATOM 303 HB3 ARG A 13 7.456 -3.211 -3.400 1.00 0.82 H +ATOM 304 HG2 ARG A 13 7.005 -5.440 -2.455 1.00 1.57 H +ATOM 305 HG3 ARG A 13 5.491 -4.825 -1.790 1.00 1.64 H +ATOM 306 HD2 ARG A 13 4.668 -4.341 -4.018 1.00 2.01 H +ATOM 307 HD3 ARG A 13 6.218 -4.801 -4.722 1.00 1.74 H +ATOM 308 HE ARG A 13 5.200 -6.964 -3.244 1.00 1.99 H +ATOM 309 HH11 ARG A 13 4.575 -5.187 -6.202 1.00 3.38 H +ATOM 310 HH12 ARG A 13 3.849 -6.548 -7.004 1.00 4.31 H +ATOM 311 HH21 ARG A 13 4.267 -8.750 -4.304 1.00 3.32 H +ATOM 312 HH22 ARG A 13 3.658 -8.574 -5.929 1.00 4.06 H +ATOM 313 N TRP A 14 7.944 -0.668 -1.772 1.00 0.20 N +ATOM 314 CA TRP A 14 8.703 0.514 -2.159 1.00 0.24 C +ATOM 315 C TRP A 14 9.486 1.097 -0.986 1.00 0.21 C +ATOM 316 O TRP A 14 10.713 1.188 -1.024 1.00 0.27 O +ATOM 317 CB TRP A 14 7.747 1.558 -2.728 1.00 0.31 C +ATOM 318 CG TRP A 14 8.409 2.559 -3.619 1.00 0.42 C +ATOM 319 CD1 TRP A 14 8.724 2.389 -4.935 1.00 0.54 C +ATOM 320 CD2 TRP A 14 8.824 3.883 -3.273 1.00 0.48 C +ATOM 321 NE1 TRP A 14 9.310 3.525 -5.431 1.00 0.64 N +ATOM 322 CE2 TRP A 14 9.384 4.458 -4.428 1.00 0.60 C +ATOM 323 CE3 TRP A 14 8.777 4.639 -2.100 1.00 0.49 C +ATOM 324 CZ2 TRP A 14 9.893 5.754 -4.440 1.00 0.70 C +ATOM 325 CZ3 TRP A 14 9.280 5.923 -2.116 1.00 0.62 C +ATOM 326 CH2 TRP A 14 9.833 6.469 -3.278 1.00 0.71 C +ATOM 327 H TRP A 14 6.971 -0.594 -1.664 1.00 0.19 H +ATOM 328 HA TRP A 14 9.400 0.227 -2.927 1.00 0.30 H +ATOM 329 HB2 TRP A 14 6.981 1.059 -3.302 1.00 0.37 H +ATOM 330 HB3 TRP A 14 7.284 2.090 -1.912 1.00 0.26 H +ATOM 331 HD1 TRP A 14 8.532 1.486 -5.493 1.00 0.59 H +ATOM 332 HE1 TRP A 14 9.625 3.648 -6.358 1.00 0.74 H +ATOM 333 HE3 TRP A 14 8.354 4.236 -1.193 1.00 0.44 H +ATOM 334 HZ2 TRP A 14 10.322 6.191 -5.331 1.00 0.80 H +ATOM 335 HZ3 TRP A 14 9.253 6.522 -1.219 1.00 0.67 H +ATOM 336 HH2 TRP A 14 10.215 7.475 -3.243 1.00 0.80 H +ATOM 337 N ARG A 15 8.760 1.500 0.049 1.00 0.20 N +ATOM 338 CA ARG A 15 9.359 2.134 1.217 1.00 0.22 C +ATOM 339 C ARG A 15 10.105 1.123 2.079 1.00 0.26 C +ATOM 340 O ARG A 15 11.064 1.481 2.761 1.00 0.44 O +ATOM 341 CB ARG A 15 8.301 2.850 2.060 1.00 0.41 C +ATOM 342 CG ARG A 15 7.725 4.100 1.413 1.00 0.57 C +ATOM 343 CD ARG A 15 6.609 3.775 0.428 1.00 0.40 C +ATOM 344 NE ARG A 15 6.018 4.988 -0.145 1.00 0.46 N +ATOM 345 CZ ARG A 15 5.233 5.825 0.539 1.00 0.82 C +ATOM 346 NH1 ARG A 15 4.888 5.549 1.795 1.00 1.35 N +ATOM 347 NH2 ARG A 15 4.772 6.930 -0.034 1.00 0.88 N +ATOM 348 H ARG A 15 7.793 1.346 0.037 1.00 0.25 H +ATOM 349 HA ARG A 15 10.067 2.864 0.859 1.00 0.28 H +ATOM 350 HB2 ARG A 15 7.488 2.164 2.249 1.00 0.94 H +ATOM 351 HB3 ARG A 15 8.744 3.128 3.001 1.00 1.01 H +ATOM 352 HG2 ARG A 15 7.327 4.740 2.186 1.00 1.12 H +ATOM 353 HG3 ARG A 15 8.514 4.616 0.889 1.00 1.13 H +ATOM 354 HD2 ARG A 15 7.015 3.170 -0.370 1.00 0.45 H +ATOM 355 HD3 ARG A 15 5.840 3.218 0.945 1.00 0.45 H +ATOM 356 HE ARG A 15 6.231 5.196 -1.086 1.00 0.63 H +ATOM 357 HH11 ARG A 15 5.212 4.712 2.238 1.00 1.40 H +ATOM 358 HH12 ARG A 15 4.311 6.196 2.314 1.00 1.76 H +ATOM 359 HH21 ARG A 15 5.006 7.150 -0.996 1.00 0.77 H +ATOM 360 HH22 ARG A 15 4.197 7.564 0.489 1.00 1.22 H +ATOM 361 N ARG A 16 9.617 -0.121 2.054 1.00 0.40 N +ATOM 362 CA ARG A 16 10.172 -1.246 2.820 1.00 0.55 C +ATOM 363 C ARG A 16 10.452 -0.886 4.277 1.00 1.46 C +ATOM 364 O ARG A 16 11.628 -0.703 4.647 1.00 2.20 O +ATOM 365 CB ARG A 16 11.417 -1.863 2.143 1.00 1.14 C +ATOM 366 CG ARG A 16 12.552 -0.893 1.841 1.00 2.07 C +ATOM 367 CD ARG A 16 13.783 -1.618 1.331 1.00 2.76 C +ATOM 368 NE ARG A 16 14.329 -2.533 2.331 1.00 3.02 N +ATOM 369 CZ ARG A 16 15.194 -3.513 2.061 1.00 3.81 C +ATOM 370 NH1 ARG A 16 15.660 -3.688 0.831 1.00 4.43 N +ATOM 371 NH2 ARG A 16 15.621 -4.304 3.033 1.00 4.37 N +ATOM 372 OXT ARG A 16 9.481 -0.816 5.056 1.00 2.24 O +ATOM 373 H ARG A 16 8.836 -0.293 1.491 1.00 0.55 H +ATOM 374 HA ARG A 16 9.404 -2.002 2.832 1.00 1.33 H +ATOM 375 HB2 ARG A 16 11.806 -2.634 2.789 1.00 1.66 H +ATOM 376 HB3 ARG A 16 11.108 -2.319 1.212 1.00 1.64 H +ATOM 377 HG2 ARG A 16 12.224 -0.193 1.089 1.00 2.52 H +ATOM 378 HG3 ARG A 16 12.808 -0.360 2.745 1.00 2.56 H +ATOM 379 HD2 ARG A 16 13.514 -2.183 0.452 1.00 3.30 H +ATOM 380 HD3 ARG A 16 14.537 -0.888 1.074 1.00 3.15 H +ATOM 381 HE ARG A 16 14.024 -2.408 3.259 1.00 2.98 H +ATOM 382 HH11 ARG A 16 15.364 -3.079 0.080 1.00 4.37 H +ATOM 383 HH12 ARG A 16 16.322 -4.424 0.639 1.00 5.17 H +ATOM 384 HH21 ARG A 16 15.303 -4.163 3.976 1.00 4.32 H +ATOM 385 HH22 ARG A 16 16.259 -5.054 2.832 1.00 5.07 H +TER 386 ARG A 16 +ENDMDL +MODEL 5 +ATOM 1 N ARG A 1 -12.066 0.359 2.707 1.00 0.94 N +ATOM 2 CA ARG A 1 -11.233 1.126 1.793 1.00 0.72 C +ATOM 3 C ARG A 1 -10.504 0.194 0.830 1.00 0.60 C +ATOM 4 O ARG A 1 -9.548 -0.488 1.203 1.00 0.64 O +ATOM 5 CB ARG A 1 -10.233 2.003 2.557 1.00 1.24 C +ATOM 6 CG ARG A 1 -10.893 2.982 3.514 1.00 1.81 C +ATOM 7 CD ARG A 1 -9.888 3.953 4.108 1.00 2.42 C +ATOM 8 NE ARG A 1 -10.499 4.834 5.097 1.00 3.29 N +ATOM 9 CZ ARG A 1 -10.609 6.154 4.961 1.00 4.10 C +ATOM 10 NH1 ARG A 1 -10.197 6.752 3.846 1.00 4.22 N +ATOM 11 NH2 ARG A 1 -11.147 6.870 5.937 1.00 5.01 N +ATOM 12 H ARG A 1 -11.655 -0.051 3.499 1.00 1.36 H +ATOM 13 HA ARG A 1 -11.884 1.768 1.220 1.00 0.90 H +ATOM 14 HB2 ARG A 1 -9.571 1.366 3.126 1.00 1.52 H +ATOM 15 HB3 ARG A 1 -9.650 2.569 1.844 1.00 1.64 H +ATOM 16 HG2 ARG A 1 -11.643 3.547 2.982 1.00 2.17 H +ATOM 17 HG3 ARG A 1 -11.360 2.429 4.317 1.00 2.13 H +ATOM 18 HD2 ARG A 1 -9.096 3.390 4.580 1.00 2.35 H +ATOM 19 HD3 ARG A 1 -9.475 4.555 3.311 1.00 2.78 H +ATOM 20 HE ARG A 1 -10.839 4.415 5.930 1.00 3.48 H +ATOM 21 HH11 ARG A 1 -9.803 6.214 3.101 1.00 3.76 H +ATOM 22 HH12 ARG A 1 -10.272 7.748 3.753 1.00 4.94 H +ATOM 23 HH21 ARG A 1 -11.465 6.420 6.780 1.00 5.16 H +ATOM 24 HH22 ARG A 1 -11.246 7.868 5.838 1.00 5.67 H +ATOM 25 N ARG A 2 -10.972 0.173 -0.410 1.00 0.54 N +ATOM 26 CA ARG A 2 -10.447 -0.734 -1.432 1.00 0.51 C +ATOM 27 C ARG A 2 -9.017 -0.379 -1.837 1.00 0.39 C +ATOM 28 O ARG A 2 -8.220 -1.256 -2.171 1.00 0.41 O +ATOM 29 CB ARG A 2 -11.386 -0.758 -2.660 1.00 0.59 C +ATOM 30 CG ARG A 2 -11.949 0.603 -3.079 1.00 1.27 C +ATOM 31 CD ARG A 2 -10.917 1.465 -3.788 1.00 2.13 C +ATOM 32 NE ARG A 2 -11.341 2.863 -3.890 1.00 2.80 N +ATOM 33 CZ ARG A 2 -10.753 3.775 -4.669 1.00 3.73 C +ATOM 34 NH1 ARG A 2 -9.815 3.422 -5.538 1.00 4.17 N +ATOM 35 NH2 ARG A 2 -11.122 5.045 -4.595 1.00 4.44 N +ATOM 36 H ARG A 2 -11.703 0.794 -0.647 1.00 0.59 H +ATOM 37 HA ARG A 2 -10.431 -1.720 -0.999 1.00 0.60 H +ATOM 38 HB2 ARG A 2 -10.840 -1.160 -3.498 1.00 0.87 H +ATOM 39 HB3 ARG A 2 -12.219 -1.413 -2.444 1.00 1.05 H +ATOM 40 HG2 ARG A 2 -12.783 0.443 -3.746 1.00 1.80 H +ATOM 41 HG3 ARG A 2 -12.293 1.123 -2.195 1.00 1.44 H +ATOM 42 HD2 ARG A 2 -9.993 1.423 -3.228 1.00 2.58 H +ATOM 43 HD3 ARG A 2 -10.756 1.072 -4.780 1.00 2.36 H +ATOM 44 HE ARG A 2 -12.090 3.151 -3.308 1.00 2.78 H +ATOM 45 HH11 ARG A 2 -9.539 2.466 -5.625 1.00 3.85 H +ATOM 46 HH12 ARG A 2 -9.379 4.122 -6.120 1.00 4.97 H +ATOM 47 HH21 ARG A 2 -11.842 5.328 -3.949 1.00 4.37 H +ATOM 48 HH22 ARG A 2 -10.684 5.732 -5.185 1.00 5.17 H +ATOM 49 N TRP A 3 -8.700 0.899 -1.786 1.00 0.34 N +ATOM 50 CA TRP A 3 -7.402 1.390 -2.227 1.00 0.29 C +ATOM 51 C TRP A 3 -6.293 1.033 -1.238 1.00 0.22 C +ATOM 52 O TRP A 3 -5.149 0.814 -1.638 1.00 0.20 O +ATOM 53 CB TRP A 3 -7.454 2.902 -2.478 1.00 0.42 C +ATOM 54 CG TRP A 3 -8.075 3.694 -1.365 1.00 0.53 C +ATOM 55 CD1 TRP A 3 -9.404 3.810 -1.086 1.00 0.60 C +ATOM 56 CD2 TRP A 3 -7.389 4.497 -0.400 1.00 0.65 C +ATOM 57 NE1 TRP A 3 -9.588 4.621 0.005 1.00 0.75 N +ATOM 58 CE2 TRP A 3 -8.364 5.061 0.442 1.00 0.79 C +ATOM 59 CE3 TRP A 3 -6.043 4.788 -0.166 1.00 0.67 C +ATOM 60 CZ2 TRP A 3 -8.032 5.900 1.501 1.00 0.95 C +ATOM 61 CZ3 TRP A 3 -5.718 5.622 0.885 1.00 0.83 C +ATOM 62 CH2 TRP A 3 -6.707 6.169 1.706 1.00 0.96 C +ATOM 63 H TRP A 3 -9.357 1.535 -1.432 1.00 0.39 H +ATOM 64 HA TRP A 3 -7.183 0.894 -3.166 1.00 0.31 H +ATOM 65 HB2 TRP A 3 -6.447 3.266 -2.613 1.00 0.44 H +ATOM 66 HB3 TRP A 3 -8.021 3.090 -3.378 1.00 0.48 H +ATOM 67 HD1 TRP A 3 -10.186 3.318 -1.644 1.00 0.57 H +ATOM 68 HE1 TRP A 3 -10.462 4.854 0.403 1.00 0.84 H +ATOM 69 HE3 TRP A 3 -5.264 4.377 -0.792 1.00 0.59 H +ATOM 70 HZ2 TRP A 3 -8.782 6.332 2.146 1.00 1.06 H +ATOM 71 HZ3 TRP A 3 -4.682 5.861 1.083 1.00 0.86 H +ATOM 72 HH2 TRP A 3 -6.406 6.813 2.515 1.00 1.10 H +ATOM 73 N ARG A 4 -6.637 0.959 0.047 1.00 0.25 N +ATOM 74 CA ARG A 4 -5.658 0.663 1.092 1.00 0.26 C +ATOM 75 C ARG A 4 -4.979 -0.688 0.868 1.00 0.20 C +ATOM 76 O ARG A 4 -3.834 -0.885 1.271 1.00 0.22 O +ATOM 77 CB ARG A 4 -6.301 0.716 2.481 1.00 0.39 C +ATOM 78 CG ARG A 4 -6.589 2.117 2.988 1.00 0.93 C +ATOM 79 CD ARG A 4 -5.321 2.870 3.367 1.00 0.78 C +ATOM 80 NE ARG A 4 -5.637 4.014 4.209 1.00 0.93 N +ATOM 81 CZ ARG A 4 -4.731 4.854 4.710 1.00 1.11 C +ATOM 82 NH1 ARG A 4 -3.446 4.692 4.437 1.00 1.09 N +ATOM 83 NH2 ARG A 4 -5.118 5.869 5.471 1.00 1.91 N +ATOM 84 H ARG A 4 -7.574 1.100 0.297 1.00 0.33 H +ATOM 85 HA ARG A 4 -4.901 1.428 1.040 1.00 0.29 H +ATOM 86 HB2 ARG A 4 -7.234 0.181 2.457 1.00 0.67 H +ATOM 87 HB3 ARG A 4 -5.642 0.239 3.185 1.00 0.82 H +ATOM 88 HG2 ARG A 4 -7.100 2.668 2.215 1.00 1.41 H +ATOM 89 HG3 ARG A 4 -7.225 2.044 3.859 1.00 1.45 H +ATOM 90 HD2 ARG A 4 -4.660 2.203 3.903 1.00 1.29 H +ATOM 91 HD3 ARG A 4 -4.831 3.220 2.468 1.00 1.06 H +ATOM 92 HE ARG A 4 -6.584 4.157 4.426 1.00 1.46 H +ATOM 93 HH11 ARG A 4 -3.145 3.943 3.845 1.00 1.34 H +ATOM 94 HH12 ARG A 4 -2.763 5.313 4.844 1.00 1.35 H +ATOM 95 HH21 ARG A 4 -6.095 6.006 5.675 1.00 2.46 H +ATOM 96 HH22 ARG A 4 -4.439 6.516 5.839 1.00 2.10 H +ATOM 97 N ARG A 5 -5.690 -1.614 0.234 1.00 0.22 N +ATOM 98 CA ARG A 5 -5.141 -2.938 -0.063 1.00 0.29 C +ATOM 99 C ARG A 5 -3.811 -2.833 -0.804 1.00 0.25 C +ATOM 100 O ARG A 5 -2.780 -3.321 -0.332 1.00 0.32 O +ATOM 101 CB ARG A 5 -6.118 -3.747 -0.914 1.00 0.37 C +ATOM 102 CG ARG A 5 -7.363 -4.207 -0.176 1.00 0.90 C +ATOM 103 CD ARG A 5 -8.259 -5.025 -1.094 1.00 0.89 C +ATOM 104 NE ARG A 5 -9.373 -5.646 -0.379 1.00 1.49 N +ATOM 105 CZ ARG A 5 -10.288 -6.427 -0.956 1.00 1.77 C +ATOM 106 NH1 ARG A 5 -10.247 -6.656 -2.268 1.00 1.45 N +ATOM 107 NH2 ARG A 5 -11.241 -6.980 -0.219 1.00 2.70 N +ATOM 108 H ARG A 5 -6.602 -1.399 -0.046 1.00 0.24 H +ATOM 109 HA ARG A 5 -4.978 -3.449 0.873 1.00 0.37 H +ATOM 110 HB2 ARG A 5 -6.429 -3.141 -1.753 1.00 0.92 H +ATOM 111 HB3 ARG A 5 -5.607 -4.620 -1.286 1.00 0.72 H +ATOM 112 HG2 ARG A 5 -7.065 -4.817 0.662 1.00 1.29 H +ATOM 113 HG3 ARG A 5 -7.908 -3.342 0.175 1.00 1.42 H +ATOM 114 HD2 ARG A 5 -8.655 -4.378 -1.862 1.00 1.52 H +ATOM 115 HD3 ARG A 5 -7.664 -5.802 -1.552 1.00 0.93 H +ATOM 116 HE ARG A 5 -9.433 -5.484 0.590 1.00 2.03 H +ATOM 117 HH11 ARG A 5 -9.527 -6.244 -2.829 1.00 1.37 H +ATOM 118 HH12 ARG A 5 -10.936 -7.243 -2.698 1.00 1.73 H +ATOM 119 HH21 ARG A 5 -11.272 -6.807 0.773 1.00 3.26 H +ATOM 120 HH22 ARG A 5 -11.931 -7.583 -0.644 1.00 2.93 H +ATOM 121 N TRP A 6 -3.848 -2.191 -1.961 1.00 0.21 N +ATOM 122 CA TRP A 6 -2.669 -2.045 -2.804 1.00 0.27 C +ATOM 123 C TRP A 6 -1.709 -1.042 -2.175 1.00 0.22 C +ATOM 124 O TRP A 6 -0.491 -1.157 -2.309 1.00 0.26 O +ATOM 125 CB TRP A 6 -3.088 -1.589 -4.205 1.00 0.34 C +ATOM 126 CG TRP A 6 -4.389 -2.187 -4.639 1.00 0.35 C +ATOM 127 CD1 TRP A 6 -4.684 -3.516 -4.755 1.00 0.43 C +ATOM 128 CD2 TRP A 6 -5.579 -1.477 -5.005 1.00 0.34 C +ATOM 129 NE1 TRP A 6 -5.985 -3.675 -5.150 1.00 0.49 N +ATOM 130 CE2 TRP A 6 -6.555 -2.439 -5.319 1.00 0.43 C +ATOM 131 CE3 TRP A 6 -5.917 -0.119 -5.097 1.00 0.32 C +ATOM 132 CZ2 TRP A 6 -7.846 -2.087 -5.713 1.00 0.48 C +ATOM 133 CZ3 TRP A 6 -7.197 0.224 -5.490 1.00 0.37 C +ATOM 134 CH2 TRP A 6 -8.146 -0.757 -5.794 1.00 0.44 C +ATOM 135 H TRP A 6 -4.695 -1.794 -2.256 1.00 0.19 H +ATOM 136 HA TRP A 6 -2.184 -3.010 -2.874 1.00 0.34 H +ATOM 137 HB2 TRP A 6 -3.194 -0.513 -4.211 1.00 0.34 H +ATOM 138 HB3 TRP A 6 -2.332 -1.880 -4.918 1.00 0.47 H +ATOM 139 HD1 TRP A 6 -3.990 -4.315 -4.544 1.00 0.48 H +ATOM 140 HE1 TRP A 6 -6.433 -4.534 -5.294 1.00 0.58 H +ATOM 141 HE3 TRP A 6 -5.200 0.656 -4.866 1.00 0.32 H +ATOM 142 HZ2 TRP A 6 -8.592 -2.829 -5.951 1.00 0.57 H +ATOM 143 HZ3 TRP A 6 -7.477 1.264 -5.568 1.00 0.39 H +ATOM 144 HH2 TRP A 6 -9.135 -0.443 -6.099 1.00 0.50 H +ATOM 145 N TRP A 7 -2.292 -0.070 -1.476 1.00 0.17 N +ATOM 146 CA TRP A 7 -1.552 0.942 -0.722 1.00 0.18 C +ATOM 147 C TRP A 7 -0.516 0.297 0.204 1.00 0.16 C +ATOM 148 O TRP A 7 0.657 0.671 0.199 1.00 0.19 O +ATOM 149 CB TRP A 7 -2.564 1.753 0.093 1.00 0.20 C +ATOM 150 CG TRP A 7 -1.986 2.837 0.942 1.00 0.34 C +ATOM 151 CD1 TRP A 7 -1.473 2.713 2.201 1.00 0.44 C +ATOM 152 CD2 TRP A 7 -1.905 4.220 0.607 1.00 0.51 C +ATOM 153 NE1 TRP A 7 -1.066 3.937 2.664 1.00 0.62 N +ATOM 154 CE2 TRP A 7 -1.323 4.879 1.702 1.00 0.65 C +ATOM 155 CE3 TRP A 7 -2.263 4.964 -0.519 1.00 0.62 C +ATOM 156 CZ2 TRP A 7 -1.094 6.250 1.705 1.00 0.85 C +ATOM 157 CZ3 TRP A 7 -2.037 6.327 -0.516 1.00 0.81 C +ATOM 158 CH2 TRP A 7 -1.458 6.959 0.590 1.00 0.91 C +ATOM 159 H TRP A 7 -3.272 -0.021 -1.474 1.00 0.17 H +ATOM 160 HA TRP A 7 -1.051 1.596 -1.422 1.00 0.25 H +ATOM 161 HB2 TRP A 7 -3.264 2.213 -0.587 1.00 0.28 H +ATOM 162 HB3 TRP A 7 -3.105 1.080 0.745 1.00 0.20 H +ATOM 163 HD1 TRP A 7 -1.398 1.778 2.737 1.00 0.45 H +ATOM 164 HE1 TRP A 7 -0.659 4.112 3.539 1.00 0.74 H +ATOM 165 HE3 TRP A 7 -2.712 4.492 -1.380 1.00 0.59 H +ATOM 166 HZ2 TRP A 7 -0.652 6.750 2.550 1.00 0.97 H +ATOM 167 HZ3 TRP A 7 -2.313 6.919 -1.376 1.00 0.92 H +ATOM 168 HH2 TRP A 7 -1.302 8.028 0.550 1.00 1.07 H +ATOM 169 N ARG A 8 -0.963 -0.684 0.984 1.00 0.16 N +ATOM 170 CA ARG A 8 -0.107 -1.348 1.962 1.00 0.22 C +ATOM 171 C ARG A 8 1.015 -2.121 1.277 1.00 0.20 C +ATOM 172 O ARG A 8 2.143 -2.172 1.777 1.00 0.23 O +ATOM 173 CB ARG A 8 -0.926 -2.302 2.835 1.00 0.36 C +ATOM 174 CG ARG A 8 -2.069 -1.631 3.585 1.00 0.93 C +ATOM 175 CD ARG A 8 -2.804 -2.611 4.486 1.00 1.11 C +ATOM 176 NE ARG A 8 -3.340 -3.746 3.738 1.00 1.71 N +ATOM 177 CZ ARG A 8 -4.217 -4.618 4.228 1.00 2.38 C +ATOM 178 NH1 ARG A 8 -4.676 -4.485 5.470 1.00 2.43 N +ATOM 179 NH2 ARG A 8 -4.629 -5.628 3.470 1.00 3.45 N +ATOM 180 H ARG A 8 -1.902 -0.961 0.903 1.00 0.16 H +ATOM 181 HA ARG A 8 0.327 -0.585 2.591 1.00 0.28 H +ATOM 182 HB2 ARG A 8 -1.346 -3.077 2.207 1.00 1.17 H +ATOM 183 HB3 ARG A 8 -0.269 -2.755 3.560 1.00 1.04 H +ATOM 184 HG2 ARG A 8 -1.673 -0.830 4.190 1.00 1.48 H +ATOM 185 HG3 ARG A 8 -2.767 -1.229 2.862 1.00 1.64 H +ATOM 186 HD2 ARG A 8 -2.118 -2.977 5.233 1.00 1.70 H +ATOM 187 HD3 ARG A 8 -3.621 -2.093 4.970 1.00 1.56 H +ATOM 188 HE ARG A 8 -3.019 -3.867 2.819 1.00 2.17 H +ATOM 189 HH11 ARG A 8 -4.363 -3.720 6.051 1.00 2.23 H +ATOM 190 HH12 ARG A 8 -5.336 -5.153 5.842 1.00 3.07 H +ATOM 191 HH21 ARG A 8 -4.272 -5.733 2.531 1.00 3.87 H +ATOM 192 HH22 ARG A 8 -5.292 -6.298 3.824 1.00 4.01 H +ATOM 193 N ARG A 9 0.701 -2.720 0.134 1.00 0.21 N +ATOM 194 CA ARG A 9 1.673 -3.524 -0.596 1.00 0.25 C +ATOM 195 C ARG A 9 2.719 -2.637 -1.260 1.00 0.21 C +ATOM 196 O ARG A 9 3.884 -3.012 -1.362 1.00 0.26 O +ATOM 197 CB ARG A 9 0.973 -4.434 -1.608 1.00 0.33 C +ATOM 198 CG ARG A 9 0.153 -5.518 -0.925 1.00 1.21 C +ATOM 199 CD ARG A 9 -0.484 -6.490 -1.907 1.00 1.46 C +ATOM 200 NE ARG A 9 -1.131 -7.596 -1.198 1.00 2.08 N +ATOM 201 CZ ARG A 9 -2.048 -8.409 -1.726 1.00 2.69 C +ATOM 202 NH1 ARG A 9 -2.461 -8.248 -2.977 1.00 2.94 N +ATOM 203 NH2 ARG A 9 -2.543 -9.400 -0.993 1.00 3.48 N +ATOM 204 H ARG A 9 -0.202 -2.606 -0.234 1.00 0.22 H +ATOM 205 HA ARG A 9 2.174 -4.147 0.125 1.00 0.30 H +ATOM 206 HB2 ARG A 9 0.320 -3.837 -2.221 1.00 0.74 H +ATOM 207 HB3 ARG A 9 1.715 -4.909 -2.234 1.00 0.93 H +ATOM 208 HG2 ARG A 9 0.797 -6.077 -0.264 1.00 1.80 H +ATOM 209 HG3 ARG A 9 -0.627 -5.048 -0.348 1.00 1.91 H +ATOM 210 HD2 ARG A 9 -1.223 -5.962 -2.493 1.00 1.70 H +ATOM 211 HD3 ARG A 9 0.281 -6.886 -2.556 1.00 1.90 H +ATOM 212 HE ARG A 9 -0.854 -7.747 -0.261 1.00 2.43 H +ATOM 213 HH11 ARG A 9 -2.084 -7.509 -3.549 1.00 2.79 H +ATOM 214 HH12 ARG A 9 -3.154 -8.870 -3.364 1.00 3.57 H +ATOM 215 HH21 ARG A 9 -2.215 -9.544 -0.053 1.00 3.76 H +ATOM 216 HH22 ARG A 9 -3.260 -10.002 -1.365 1.00 3.99 H +ATOM 217 N TRP A 10 2.299 -1.452 -1.690 1.00 0.18 N +ATOM 218 CA TRP A 10 3.225 -0.449 -2.209 1.00 0.18 C +ATOM 219 C TRP A 10 4.221 -0.030 -1.123 1.00 0.15 C +ATOM 220 O TRP A 10 5.418 0.137 -1.383 1.00 0.15 O +ATOM 221 CB TRP A 10 2.437 0.769 -2.732 1.00 0.24 C +ATOM 222 CG TRP A 10 3.088 2.092 -2.446 1.00 0.27 C +ATOM 223 CD1 TRP A 10 2.863 2.888 -1.360 1.00 0.32 C +ATOM 224 CD2 TRP A 10 4.061 2.777 -3.245 1.00 0.33 C +ATOM 225 NE1 TRP A 10 3.647 4.008 -1.423 1.00 0.39 N +ATOM 226 CE2 TRP A 10 4.386 3.969 -2.569 1.00 0.39 C +ATOM 227 CE3 TRP A 10 4.695 2.501 -4.461 1.00 0.39 C +ATOM 228 CZ2 TRP A 10 5.315 4.881 -3.068 1.00 0.48 C +ATOM 229 CZ3 TRP A 10 5.613 3.407 -4.956 1.00 0.49 C +ATOM 230 CH2 TRP A 10 5.917 4.585 -4.258 1.00 0.53 C +ATOM 231 H TRP A 10 1.336 -1.250 -1.667 1.00 0.20 H +ATOM 232 HA TRP A 10 3.770 -0.891 -3.027 1.00 0.19 H +ATOM 233 HB2 TRP A 10 2.326 0.681 -3.803 1.00 0.29 H +ATOM 234 HB3 TRP A 10 1.458 0.776 -2.274 1.00 0.27 H +ATOM 235 HD1 TRP A 10 2.179 2.649 -0.564 1.00 0.36 H +ATOM 236 HE1 TRP A 10 3.669 4.722 -0.758 1.00 0.45 H +ATOM 237 HE3 TRP A 10 4.476 1.601 -5.014 1.00 0.39 H +ATOM 238 HZ2 TRP A 10 5.566 5.791 -2.540 1.00 0.54 H +ATOM 239 HZ3 TRP A 10 6.112 3.211 -5.896 1.00 0.57 H +ATOM 240 HH2 TRP A 10 6.641 5.264 -4.683 1.00 0.62 H +ATOM 241 N TRP A 11 3.711 0.118 0.092 1.00 0.16 N +ATOM 242 CA TRP A 11 4.500 0.596 1.223 1.00 0.17 C +ATOM 243 C TRP A 11 5.684 -0.332 1.509 1.00 0.14 C +ATOM 244 O TRP A 11 6.838 0.096 1.462 1.00 0.18 O +ATOM 245 CB TRP A 11 3.597 0.714 2.456 1.00 0.23 C +ATOM 246 CG TRP A 11 3.962 1.843 3.370 1.00 0.36 C +ATOM 247 CD1 TRP A 11 3.232 2.970 3.611 1.00 0.48 C +ATOM 248 CD2 TRP A 11 5.142 1.954 4.161 1.00 0.43 C +ATOM 249 NE1 TRP A 11 3.892 3.779 4.502 1.00 0.61 N +ATOM 250 CE2 TRP A 11 5.069 3.171 4.860 1.00 0.58 C +ATOM 251 CE3 TRP A 11 6.253 1.137 4.346 1.00 0.44 C +ATOM 252 CZ2 TRP A 11 6.072 3.588 5.734 1.00 0.71 C +ATOM 253 CZ3 TRP A 11 7.249 1.546 5.210 1.00 0.57 C +ATOM 254 CH2 TRP A 11 7.152 2.763 5.899 1.00 0.69 C +ATOM 255 H TRP A 11 2.763 -0.094 0.233 1.00 0.19 H +ATOM 256 HA TRP A 11 4.887 1.573 0.982 1.00 0.20 H +ATOM 257 HB2 TRP A 11 2.576 0.870 2.132 1.00 0.28 H +ATOM 258 HB3 TRP A 11 3.653 -0.204 3.020 1.00 0.24 H +ATOM 259 HD1 TRP A 11 2.275 3.183 3.155 1.00 0.51 H +ATOM 260 HE1 TRP A 11 3.571 4.650 4.831 1.00 0.72 H +ATOM 261 HE3 TRP A 11 6.343 0.201 3.814 1.00 0.37 H +ATOM 262 HZ2 TRP A 11 6.010 4.524 6.268 1.00 0.83 H +ATOM 263 HZ3 TRP A 11 8.115 0.919 5.364 1.00 0.61 H +ATOM 264 HH2 TRP A 11 7.955 3.043 6.565 1.00 0.80 H +ATOM 265 N ARG A 12 5.397 -1.603 1.782 1.00 0.16 N +ATOM 266 CA ARG A 12 6.434 -2.545 2.194 1.00 0.22 C +ATOM 267 C ARG A 12 7.446 -2.796 1.072 1.00 0.21 C +ATOM 268 O ARG A 12 8.622 -3.046 1.333 1.00 0.27 O +ATOM 269 CB ARG A 12 5.809 -3.866 2.667 1.00 0.33 C +ATOM 270 CG ARG A 12 6.836 -4.915 3.074 1.00 1.49 C +ATOM 271 CD ARG A 12 7.752 -4.412 4.185 1.00 1.87 C +ATOM 272 NE ARG A 12 7.083 -4.368 5.484 1.00 2.29 N +ATOM 273 CZ ARG A 12 7.287 -3.419 6.399 1.00 2.74 C +ATOM 274 NH1 ARG A 12 8.071 -2.386 6.131 1.00 3.00 N +ATOM 275 NH2 ARG A 12 6.703 -3.499 7.586 1.00 3.27 N +ATOM 276 H ARG A 12 4.471 -1.913 1.702 1.00 0.19 H +ATOM 277 HA ARG A 12 6.960 -2.099 3.025 1.00 0.27 H +ATOM 278 HB2 ARG A 12 5.176 -3.668 3.521 1.00 0.95 H +ATOM 279 HB3 ARG A 12 5.207 -4.274 1.869 1.00 0.86 H +ATOM 280 HG2 ARG A 12 6.314 -5.793 3.426 1.00 2.00 H +ATOM 281 HG3 ARG A 12 7.434 -5.171 2.215 1.00 2.03 H +ATOM 282 HD2 ARG A 12 8.603 -5.072 4.256 1.00 2.25 H +ATOM 283 HD3 ARG A 12 8.090 -3.418 3.933 1.00 1.95 H +ATOM 284 HE ARG A 12 6.471 -5.113 5.701 1.00 2.50 H +ATOM 285 HH11 ARG A 12 8.521 -2.308 5.240 1.00 2.91 H +ATOM 286 HH12 ARG A 12 8.224 -1.673 6.821 1.00 3.51 H +ATOM 287 HH21 ARG A 12 6.103 -4.277 7.808 1.00 3.44 H +ATOM 288 HH22 ARG A 12 6.869 -2.784 8.278 1.00 3.66 H +ATOM 289 N ARG A 13 6.989 -2.740 -0.172 1.00 0.18 N +ATOM 290 CA ARG A 13 7.873 -2.953 -1.310 1.00 0.22 C +ATOM 291 C ARG A 13 8.803 -1.761 -1.524 1.00 0.21 C +ATOM 292 O ARG A 13 10.024 -1.900 -1.456 1.00 0.25 O +ATOM 293 CB ARG A 13 7.076 -3.227 -2.586 1.00 0.28 C +ATOM 294 CG ARG A 13 6.304 -4.530 -2.549 1.00 0.93 C +ATOM 295 CD ARG A 13 5.536 -4.757 -3.840 1.00 1.38 C +ATOM 296 NE ARG A 13 4.743 -5.982 -3.799 1.00 1.86 N +ATOM 297 CZ ARG A 13 3.697 -6.221 -4.592 1.00 2.76 C +ATOM 298 NH1 ARG A 13 3.297 -5.315 -5.481 1.00 3.47 N +ATOM 299 NH2 ARG A 13 3.037 -7.366 -4.481 1.00 3.35 N +ATOM 300 H ARG A 13 6.041 -2.551 -0.327 1.00 0.17 H +ATOM 301 HA ARG A 13 8.475 -3.822 -1.090 1.00 0.28 H +ATOM 302 HB2 ARG A 13 6.375 -2.419 -2.739 1.00 0.66 H +ATOM 303 HB3 ARG A 13 7.761 -3.259 -3.425 1.00 0.82 H +ATOM 304 HG2 ARG A 13 7.000 -5.343 -2.404 1.00 1.57 H +ATOM 305 HG3 ARG A 13 5.608 -4.497 -1.725 1.00 1.64 H +ATOM 306 HD2 ARG A 13 4.877 -3.918 -4.003 1.00 2.01 H +ATOM 307 HD3 ARG A 13 6.240 -4.824 -4.656 1.00 1.74 H +ATOM 308 HE ARG A 13 5.005 -6.666 -3.146 1.00 1.99 H +ATOM 309 HH11 ARG A 13 3.776 -4.430 -5.566 1.00 3.38 H +ATOM 310 HH12 ARG A 13 2.519 -5.515 -6.083 1.00 4.31 H +ATOM 311 HH21 ARG A 13 3.322 -8.051 -3.804 1.00 3.32 H +ATOM 312 HH22 ARG A 13 2.240 -7.551 -5.074 1.00 4.06 H +ATOM 313 N TRP A 14 8.225 -0.595 -1.793 1.00 0.20 N +ATOM 314 CA TRP A 14 9.009 0.573 -2.169 1.00 0.24 C +ATOM 315 C TRP A 14 9.755 1.160 -0.973 1.00 0.21 C +ATOM 316 O TRP A 14 10.978 1.294 -1.001 1.00 0.27 O +ATOM 317 CB TRP A 14 8.112 1.631 -2.809 1.00 0.31 C +ATOM 318 CG TRP A 14 8.876 2.662 -3.575 1.00 0.42 C +ATOM 319 CD1 TRP A 14 9.202 2.620 -4.900 1.00 0.54 C +ATOM 320 CD2 TRP A 14 9.413 3.887 -3.065 1.00 0.48 C +ATOM 321 NE1 TRP A 14 9.907 3.742 -5.245 1.00 0.64 N +ATOM 322 CE2 TRP A 14 10.050 4.535 -4.136 1.00 0.60 C +ATOM 323 CE3 TRP A 14 9.415 4.500 -1.806 1.00 0.49 C +ATOM 324 CZ2 TRP A 14 10.682 5.764 -3.989 1.00 0.70 C +ATOM 325 CZ3 TRP A 14 10.045 5.719 -1.662 1.00 0.62 C +ATOM 326 CH2 TRP A 14 10.672 6.339 -2.749 1.00 0.71 C +ATOM 327 H TRP A 14 7.247 -0.517 -1.729 1.00 0.19 H +ATOM 328 HA TRP A 14 9.737 0.254 -2.897 1.00 0.30 H +ATOM 329 HB2 TRP A 14 7.426 1.148 -3.488 1.00 0.37 H +ATOM 330 HB3 TRP A 14 7.550 2.137 -2.037 1.00 0.26 H +ATOM 331 HD1 TRP A 14 8.935 1.813 -5.567 1.00 0.59 H +ATOM 332 HE1 TRP A 14 10.253 3.945 -6.140 1.00 0.74 H +ATOM 333 HE3 TRP A 14 8.935 4.036 -0.954 1.00 0.44 H +ATOM 334 HZ2 TRP A 14 11.168 6.257 -4.813 1.00 0.80 H +ATOM 335 HZ3 TRP A 14 10.061 6.206 -0.698 1.00 0.67 H +ATOM 336 HH2 TRP A 14 11.155 7.289 -2.592 1.00 0.80 H +ATOM 337 N ARG A 15 9.017 1.512 0.071 1.00 0.20 N +ATOM 338 CA ARG A 15 9.607 2.118 1.258 1.00 0.22 C +ATOM 339 C ARG A 15 10.378 1.083 2.063 1.00 0.26 C +ATOM 340 O ARG A 15 11.575 1.240 2.310 1.00 0.44 O +ATOM 341 CB ARG A 15 8.534 2.758 2.144 1.00 0.41 C +ATOM 342 CG ARG A 15 8.009 4.099 1.649 1.00 0.57 C +ATOM 343 CD ARG A 15 6.880 3.947 0.641 1.00 0.40 C +ATOM 344 NE ARG A 15 6.353 5.245 0.228 1.00 0.46 N +ATOM 345 CZ ARG A 15 5.384 5.898 0.872 1.00 0.82 C +ATOM 346 NH1 ARG A 15 4.825 5.371 1.960 1.00 1.35 N +ATOM 347 NH2 ARG A 15 4.985 7.083 0.436 1.00 0.88 N +ATOM 348 H ARG A 15 8.056 1.338 0.053 1.00 0.25 H +ATOM 349 HA ARG A 15 10.295 2.886 0.932 1.00 0.28 H +ATOM 350 HB2 ARG A 15 7.697 2.080 2.213 1.00 0.94 H +ATOM 351 HB3 ARG A 15 8.945 2.902 3.129 1.00 1.01 H +ATOM 352 HG2 ARG A 15 7.640 4.665 2.494 1.00 1.12 H +ATOM 353 HG3 ARG A 15 8.821 4.639 1.186 1.00 1.13 H +ATOM 354 HD2 ARG A 15 7.250 3.422 -0.227 1.00 0.45 H +ATOM 355 HD3 ARG A 15 6.085 3.376 1.096 1.00 0.45 H +ATOM 356 HE ARG A 15 6.756 5.667 -0.575 1.00 0.63 H +ATOM 357 HH11 ARG A 15 5.124 4.477 2.301 1.00 1.40 H +ATOM 358 HH12 ARG A 15 4.107 5.876 2.462 1.00 1.76 H +ATOM 359 HH21 ARG A 15 5.413 7.493 -0.381 1.00 0.77 H +ATOM 360 HH22 ARG A 15 4.260 7.578 0.914 1.00 1.22 H +ATOM 361 N ARG A 16 9.667 0.027 2.451 1.00 0.40 N +ATOM 362 CA ARG A 16 10.224 -1.055 3.258 1.00 0.55 C +ATOM 363 C ARG A 16 10.676 -0.536 4.621 1.00 1.46 C +ATOM 364 O ARG A 16 9.804 -0.292 5.475 1.00 2.20 O +ATOM 365 CB ARG A 16 11.380 -1.730 2.527 1.00 1.14 C +ATOM 366 CG ARG A 16 11.842 -3.016 3.189 1.00 2.07 C +ATOM 367 CD ARG A 16 12.933 -3.700 2.387 1.00 2.76 C +ATOM 368 NE ARG A 16 13.314 -4.978 2.978 1.00 3.02 N +ATOM 369 CZ ARG A 16 14.159 -5.837 2.421 1.00 3.81 C +ATOM 370 NH1 ARG A 16 14.753 -5.551 1.263 1.00 4.43 N +ATOM 371 NH2 ARG A 16 14.424 -6.975 3.041 1.00 4.37 N +ATOM 372 OXT ARG A 16 11.893 -0.378 4.837 1.00 2.24 O +ATOM 373 H ARG A 16 8.727 -0.029 2.180 1.00 0.55 H +ATOM 374 HA ARG A 16 9.439 -1.783 3.412 1.00 1.33 H +ATOM 375 HB2 ARG A 16 11.070 -1.959 1.517 1.00 1.66 H +ATOM 376 HB3 ARG A 16 12.215 -1.044 2.493 1.00 1.64 H +ATOM 377 HG2 ARG A 16 12.220 -2.790 4.177 1.00 2.52 H +ATOM 378 HG3 ARG A 16 10.998 -3.686 3.273 1.00 2.56 H +ATOM 379 HD2 ARG A 16 12.573 -3.873 1.384 1.00 3.30 H +ATOM 380 HD3 ARG A 16 13.803 -3.057 2.354 1.00 3.15 H +ATOM 381 HE ARG A 16 12.907 -5.214 3.847 1.00 2.98 H +ATOM 382 HH11 ARG A 16 14.563 -4.684 0.801 1.00 4.37 H +ATOM 383 HH12 ARG A 16 15.398 -6.206 0.849 1.00 5.17 H +ATOM 384 HH21 ARG A 16 13.989 -7.181 3.919 1.00 4.32 H +ATOM 385 HH22 ARG A 16 15.059 -7.644 2.629 1.00 5.07 H +TER 386 ARG A 16 +ENDMDL +MODEL 6 +ATOM 1 N ARG A 1 -12.697 1.525 0.892 1.00 0.94 N +ATOM 2 CA ARG A 1 -11.283 1.524 1.271 1.00 0.72 C +ATOM 3 C ARG A 1 -10.491 0.488 0.478 1.00 0.60 C +ATOM 4 O ARG A 1 -9.481 -0.033 0.945 1.00 0.64 O +ATOM 5 CB ARG A 1 -11.135 1.259 2.771 1.00 1.24 C +ATOM 6 CG ARG A 1 -11.483 2.458 3.638 1.00 1.81 C +ATOM 7 CD ARG A 1 -11.362 2.132 5.119 1.00 2.42 C +ATOM 8 NE ARG A 1 -12.466 1.300 5.593 1.00 3.29 N +ATOM 9 CZ ARG A 1 -12.489 0.690 6.781 1.00 4.10 C +ATOM 10 NH1 ARG A 1 -11.415 0.681 7.562 1.00 4.22 N +ATOM 11 NH2 ARG A 1 -13.583 0.057 7.178 1.00 5.01 N +ATOM 12 H ARG A 1 -13.315 0.914 1.351 1.00 1.36 H +ATOM 13 HA ARG A 1 -10.889 2.504 1.050 1.00 0.90 H +ATOM 14 HB2 ARG A 1 -11.786 0.443 3.047 1.00 1.52 H +ATOM 15 HB3 ARG A 1 -10.112 0.977 2.978 1.00 1.64 H +ATOM 16 HG2 ARG A 1 -10.807 3.269 3.405 1.00 2.17 H +ATOM 17 HG3 ARG A 1 -12.497 2.762 3.426 1.00 2.13 H +ATOM 18 HD2 ARG A 1 -10.435 1.604 5.283 1.00 2.35 H +ATOM 19 HD3 ARG A 1 -11.353 3.056 5.676 1.00 2.78 H +ATOM 20 HE ARG A 1 -13.259 1.223 5.003 1.00 3.48 H +ATOM 21 HH11 ARG A 1 -10.566 1.141 7.273 1.00 3.76 H +ATOM 22 HH12 ARG A 1 -11.448 0.213 8.449 1.00 4.94 H +ATOM 23 HH21 ARG A 1 -14.399 0.036 6.596 1.00 5.16 H +ATOM 24 HH22 ARG A 1 -13.604 -0.394 8.080 1.00 5.67 H +ATOM 25 N ARG A 2 -10.939 0.227 -0.742 1.00 0.54 N +ATOM 26 CA ARG A 2 -10.303 -0.753 -1.621 1.00 0.51 C +ATOM 27 C ARG A 2 -8.846 -0.397 -1.930 1.00 0.39 C +ATOM 28 O ARG A 2 -8.018 -1.275 -2.163 1.00 0.41 O +ATOM 29 CB ARG A 2 -11.114 -0.922 -2.916 1.00 0.59 C +ATOM 30 CG ARG A 2 -11.765 0.358 -3.444 1.00 1.27 C +ATOM 31 CD ARG A 2 -10.756 1.340 -4.026 1.00 2.13 C +ATOM 32 NE ARG A 2 -11.370 2.633 -4.336 1.00 2.80 N +ATOM 33 CZ ARG A 2 -10.943 3.455 -5.294 1.00 3.73 C +ATOM 34 NH1 ARG A 2 -9.918 3.108 -6.065 1.00 4.17 N +ATOM 35 NH2 ARG A 2 -11.559 4.615 -5.486 1.00 4.44 N +ATOM 36 H ARG A 2 -11.726 0.712 -1.065 1.00 0.59 H +ATOM 37 HA ARG A 2 -10.307 -1.694 -1.096 1.00 0.60 H +ATOM 38 HB2 ARG A 2 -10.453 -1.301 -3.684 1.00 0.87 H +ATOM 39 HB3 ARG A 2 -11.892 -1.648 -2.740 1.00 1.05 H +ATOM 40 HG2 ARG A 2 -12.468 0.096 -4.217 1.00 1.80 H +ATOM 41 HG3 ARG A 2 -12.292 0.839 -2.632 1.00 1.44 H +ATOM 42 HD2 ARG A 2 -9.961 1.493 -3.308 1.00 2.58 H +ATOM 43 HD3 ARG A 2 -10.344 0.922 -4.931 1.00 2.36 H +ATOM 44 HE ARG A 2 -12.145 2.907 -3.793 1.00 2.78 H +ATOM 45 HH11 ARG A 2 -9.462 2.229 -5.931 1.00 3.85 H +ATOM 46 HH12 ARG A 2 -9.594 3.729 -6.795 1.00 4.97 H +ATOM 47 HH21 ARG A 2 -12.345 4.867 -4.908 1.00 4.37 H +ATOM 48 HH22 ARG A 2 -11.251 5.244 -6.213 1.00 5.17 H +ATOM 49 N TRP A 3 -8.542 0.892 -1.926 1.00 0.34 N +ATOM 50 CA TRP A 3 -7.213 1.379 -2.291 1.00 0.29 C +ATOM 51 C TRP A 3 -6.164 1.028 -1.237 1.00 0.22 C +ATOM 52 O TRP A 3 -4.998 0.805 -1.566 1.00 0.20 O +ATOM 53 CB TRP A 3 -7.244 2.893 -2.541 1.00 0.42 C +ATOM 54 CG TRP A 3 -7.813 3.693 -1.405 1.00 0.53 C +ATOM 55 CD1 TRP A 3 -9.134 3.869 -1.102 1.00 0.60 C +ATOM 56 CD2 TRP A 3 -7.077 4.438 -0.428 1.00 0.65 C +ATOM 57 NE1 TRP A 3 -9.260 4.660 0.014 1.00 0.75 N +ATOM 58 CE2 TRP A 3 -8.012 5.027 0.443 1.00 0.79 C +ATOM 59 CE3 TRP A 3 -5.716 4.658 -0.199 1.00 0.67 C +ATOM 60 CZ2 TRP A 3 -7.630 5.823 1.520 1.00 0.95 C +ATOM 61 CZ3 TRP A 3 -5.338 5.447 0.869 1.00 0.83 C +ATOM 62 CH2 TRP A 3 -6.291 6.020 1.717 1.00 0.96 C +ATOM 63 H TRP A 3 -9.229 1.536 -1.664 1.00 0.39 H +ATOM 64 HA TRP A 3 -6.936 0.887 -3.210 1.00 0.31 H +ATOM 65 HB2 TRP A 3 -6.236 3.240 -2.715 1.00 0.44 H +ATOM 66 HB3 TRP A 3 -7.841 3.091 -3.422 1.00 0.48 H +ATOM 67 HD1 TRP A 3 -9.950 3.432 -1.659 1.00 0.57 H +ATOM 68 HE1 TRP A 3 -10.117 4.928 0.437 1.00 0.84 H +ATOM 69 HE3 TRP A 3 -4.966 4.222 -0.842 1.00 0.59 H +ATOM 70 HZ2 TRP A 3 -8.353 6.274 2.185 1.00 1.06 H +ATOM 71 HZ3 TRP A 3 -4.289 5.625 1.060 1.00 0.86 H +ATOM 72 HH2 TRP A 3 -5.949 6.628 2.543 1.00 1.10 H +ATOM 73 N ARG A 4 -6.586 0.965 0.024 1.00 0.25 N +ATOM 74 CA ARG A 4 -5.689 0.616 1.132 1.00 0.26 C +ATOM 75 C ARG A 4 -5.054 -0.756 0.928 1.00 0.20 C +ATOM 76 O ARG A 4 -3.957 -1.028 1.429 1.00 0.22 O +ATOM 77 CB ARG A 4 -6.432 0.669 2.465 1.00 0.39 C +ATOM 78 CG ARG A 4 -6.695 2.088 2.954 1.00 0.93 C +ATOM 79 CD ARG A 4 -5.402 2.778 3.376 1.00 0.78 C +ATOM 80 NE ARG A 4 -4.768 2.118 4.525 1.00 0.93 N +ATOM 81 CZ ARG A 4 -3.716 2.612 5.178 1.00 1.11 C +ATOM 82 NH1 ARG A 4 -3.212 3.789 4.831 1.00 1.09 N +ATOM 83 NH2 ARG A 4 -3.175 1.936 6.190 1.00 1.91 N +ATOM 84 H ARG A 4 -7.527 1.155 0.217 1.00 0.33 H +ATOM 85 HA ARG A 4 -4.904 1.351 1.148 1.00 0.29 H +ATOM 86 HB2 ARG A 4 -7.380 0.163 2.358 1.00 0.67 H +ATOM 87 HB3 ARG A 4 -5.840 0.159 3.207 1.00 0.82 H +ATOM 88 HG2 ARG A 4 -7.148 2.655 2.154 1.00 1.41 H +ATOM 89 HG3 ARG A 4 -7.366 2.051 3.799 1.00 1.45 H +ATOM 90 HD2 ARG A 4 -4.712 2.764 2.543 1.00 1.29 H +ATOM 91 HD3 ARG A 4 -5.620 3.803 3.637 1.00 1.06 H +ATOM 92 HE ARG A 4 -5.149 1.256 4.819 1.00 1.46 H +ATOM 93 HH11 ARG A 4 -3.623 4.313 4.081 1.00 1.34 H +ATOM 94 HH12 ARG A 4 -2.403 4.155 5.309 1.00 1.35 H +ATOM 95 HH21 ARG A 4 -3.554 1.043 6.467 1.00 2.46 H +ATOM 96 HH22 ARG A 4 -2.391 2.314 6.692 1.00 2.10 H +ATOM 97 N ARG A 5 -5.762 -1.623 0.218 1.00 0.22 N +ATOM 98 CA ARG A 5 -5.261 -2.952 -0.108 1.00 0.29 C +ATOM 99 C ARG A 5 -3.920 -2.864 -0.842 1.00 0.25 C +ATOM 100 O ARG A 5 -2.916 -3.411 -0.390 1.00 0.32 O +ATOM 101 CB ARG A 5 -6.278 -3.694 -0.979 1.00 0.37 C +ATOM 102 CG ARG A 5 -5.860 -5.110 -1.342 1.00 0.90 C +ATOM 103 CD ARG A 5 -6.738 -5.696 -2.435 1.00 0.89 C +ATOM 104 NE ARG A 5 -8.149 -5.780 -2.054 1.00 1.49 N +ATOM 105 CZ ARG A 5 -8.958 -6.772 -2.436 1.00 1.77 C +ATOM 106 NH1 ARG A 5 -8.484 -7.777 -3.166 1.00 1.45 N +ATOM 107 NH2 ARG A 5 -10.238 -6.762 -2.092 1.00 2.70 N +ATOM 108 H ARG A 5 -6.649 -1.354 -0.107 1.00 0.24 H +ATOM 109 HA ARG A 5 -5.121 -3.495 0.815 1.00 0.37 H +ATOM 110 HB2 ARG A 5 -7.217 -3.744 -0.451 1.00 0.92 H +ATOM 111 HB3 ARG A 5 -6.415 -3.139 -1.894 1.00 0.72 H +ATOM 112 HG2 ARG A 5 -4.838 -5.092 -1.691 1.00 1.29 H +ATOM 113 HG3 ARG A 5 -5.930 -5.732 -0.462 1.00 1.42 H +ATOM 114 HD2 ARG A 5 -6.656 -5.073 -3.312 1.00 1.52 H +ATOM 115 HD3 ARG A 5 -6.381 -6.690 -2.669 1.00 0.93 H +ATOM 116 HE ARG A 5 -8.513 -5.050 -1.504 1.00 2.03 H +ATOM 117 HH11 ARG A 5 -7.520 -7.792 -3.431 1.00 1.37 H +ATOM 118 HH12 ARG A 5 -9.093 -8.529 -3.457 1.00 1.73 H +ATOM 119 HH21 ARG A 5 -10.610 -6.004 -1.542 1.00 3.26 H +ATOM 120 HH22 ARG A 5 -10.845 -7.518 -2.377 1.00 2.93 H +ATOM 121 N TRP A 6 -3.914 -2.159 -1.969 1.00 0.21 N +ATOM 122 CA TRP A 6 -2.709 -2.013 -2.786 1.00 0.27 C +ATOM 123 C TRP A 6 -1.716 -1.076 -2.105 1.00 0.22 C +ATOM 124 O TRP A 6 -0.501 -1.233 -2.232 1.00 0.26 O +ATOM 125 CB TRP A 6 -3.070 -1.468 -4.168 1.00 0.34 C +ATOM 126 CG TRP A 6 -4.331 -2.053 -4.712 1.00 0.35 C +ATOM 127 CD1 TRP A 6 -4.594 -3.373 -4.930 1.00 0.43 C +ATOM 128 CD2 TRP A 6 -5.505 -1.335 -5.116 1.00 0.34 C +ATOM 129 NE1 TRP A 6 -5.862 -3.524 -5.422 1.00 0.49 N +ATOM 130 CE2 TRP A 6 -6.441 -2.288 -5.553 1.00 0.43 C +ATOM 131 CE3 TRP A 6 -5.856 0.020 -5.148 1.00 0.32 C +ATOM 132 CZ2 TRP A 6 -7.706 -1.933 -6.015 1.00 0.48 C +ATOM 133 CZ3 TRP A 6 -7.114 0.372 -5.608 1.00 0.37 C +ATOM 134 CH2 TRP A 6 -8.025 -0.602 -6.036 1.00 0.44 C +ATOM 135 H TRP A 6 -4.741 -1.722 -2.262 1.00 0.19 H +ATOM 136 HA TRP A 6 -2.257 -2.986 -2.894 1.00 0.34 H +ATOM 137 HB2 TRP A 6 -3.198 -0.398 -4.105 1.00 0.34 H +ATOM 138 HB3 TRP A 6 -2.269 -1.692 -4.858 1.00 0.47 H +ATOM 139 HD1 TRP A 6 -3.901 -4.174 -4.727 1.00 0.48 H +ATOM 140 HE1 TRP A 6 -6.283 -4.385 -5.649 1.00 0.58 H +ATOM 141 HE3 TRP A 6 -5.164 0.782 -4.820 1.00 0.32 H +ATOM 142 HZ2 TRP A 6 -8.420 -2.672 -6.347 1.00 0.57 H +ATOM 143 HZ3 TRP A 6 -7.404 1.412 -5.642 1.00 0.39 H +ATOM 144 HH2 TRP A 6 -8.994 -0.281 -6.387 1.00 0.50 H +ATOM 145 N TRP A 7 -2.267 -0.110 -1.374 1.00 0.17 N +ATOM 146 CA TRP A 7 -1.493 0.878 -0.621 1.00 0.18 C +ATOM 147 C TRP A 7 -0.417 0.222 0.245 1.00 0.16 C +ATOM 148 O TRP A 7 0.763 0.564 0.153 1.00 0.19 O +ATOM 149 CB TRP A 7 -2.468 1.670 0.251 1.00 0.20 C +ATOM 150 CG TRP A 7 -1.845 2.715 1.124 1.00 0.34 C +ATOM 151 CD1 TRP A 7 -1.297 2.532 2.358 1.00 0.44 C +ATOM 152 CD2 TRP A 7 -1.742 4.113 0.842 1.00 0.51 C +ATOM 153 NE1 TRP A 7 -0.856 3.728 2.861 1.00 0.62 N +ATOM 154 CE2 TRP A 7 -1.117 4.714 1.950 1.00 0.65 C +ATOM 155 CE3 TRP A 7 -2.113 4.914 -0.239 1.00 0.62 C +ATOM 156 CZ2 TRP A 7 -0.860 6.077 2.009 1.00 0.85 C +ATOM 157 CZ3 TRP A 7 -1.856 6.270 -0.181 1.00 0.81 C +ATOM 158 CH2 TRP A 7 -1.235 6.841 0.939 1.00 0.91 C +ATOM 159 H TRP A 7 -3.248 -0.047 -1.349 1.00 0.17 H +ATOM 160 HA TRP A 7 -1.025 1.550 -1.319 1.00 0.25 H +ATOM 161 HB2 TRP A 7 -3.179 2.164 -0.391 1.00 0.28 H +ATOM 162 HB3 TRP A 7 -3.000 0.978 0.891 1.00 0.20 H +ATOM 163 HD1 TRP A 7 -1.225 1.578 2.855 1.00 0.45 H +ATOM 164 HE1 TRP A 7 -0.423 3.856 3.737 1.00 0.74 H +ATOM 165 HE3 TRP A 7 -2.593 4.487 -1.108 1.00 0.59 H +ATOM 166 HZ2 TRP A 7 -0.389 6.527 2.866 1.00 0.97 H +ATOM 167 HZ3 TRP A 7 -2.138 6.907 -1.006 1.00 0.92 H +ATOM 168 HH2 TRP A 7 -1.053 7.903 0.944 1.00 1.07 H +ATOM 169 N ARG A 8 -0.831 -0.726 1.071 1.00 0.16 N +ATOM 170 CA ARG A 8 0.080 -1.367 2.012 1.00 0.22 C +ATOM 171 C ARG A 8 1.124 -2.213 1.283 1.00 0.20 C +ATOM 172 O ARG A 8 2.253 -2.351 1.753 1.00 0.23 O +ATOM 173 CB ARG A 8 -0.701 -2.218 3.017 1.00 0.36 C +ATOM 174 CG ARG A 8 -1.466 -3.371 2.391 1.00 0.93 C +ATOM 175 CD ARG A 8 -2.374 -4.048 3.405 1.00 1.11 C +ATOM 176 NE ARG A 8 -3.466 -3.172 3.836 1.00 1.71 N +ATOM 177 CZ ARG A 8 -4.326 -3.478 4.807 1.00 2.38 C +ATOM 178 NH1 ARG A 8 -4.195 -4.614 5.484 1.00 2.43 N +ATOM 179 NH2 ARG A 8 -5.315 -2.646 5.109 1.00 3.45 N +ATOM 180 H ARG A 8 -1.770 -1.003 1.046 1.00 0.16 H +ATOM 181 HA ARG A 8 0.592 -0.581 2.548 1.00 0.28 H +ATOM 182 HB2 ARG A 8 -0.009 -2.623 3.739 1.00 1.17 H +ATOM 183 HB3 ARG A 8 -1.408 -1.583 3.531 1.00 1.04 H +ATOM 184 HG2 ARG A 8 -2.068 -2.994 1.578 1.00 1.48 H +ATOM 185 HG3 ARG A 8 -0.760 -4.095 2.012 1.00 1.64 H +ATOM 186 HD2 ARG A 8 -2.794 -4.937 2.957 1.00 1.70 H +ATOM 187 HD3 ARG A 8 -1.786 -4.325 4.268 1.00 1.56 H +ATOM 188 HE ARG A 8 -3.575 -2.320 3.360 1.00 2.17 H +ATOM 189 HH11 ARG A 8 -3.449 -5.251 5.267 1.00 2.23 H +ATOM 190 HH12 ARG A 8 -4.840 -4.842 6.225 1.00 3.07 H +ATOM 191 HH21 ARG A 8 -5.420 -1.784 4.610 1.00 3.87 H +ATOM 192 HH22 ARG A 8 -5.971 -2.877 5.843 1.00 4.01 H +ATOM 193 N ARG A 9 0.747 -2.770 0.133 1.00 0.21 N +ATOM 194 CA ARG A 9 1.677 -3.556 -0.671 1.00 0.25 C +ATOM 195 C ARG A 9 2.755 -2.659 -1.259 1.00 0.21 C +ATOM 196 O ARG A 9 3.931 -3.023 -1.292 1.00 0.26 O +ATOM 197 CB ARG A 9 0.948 -4.295 -1.791 1.00 0.33 C +ATOM 198 CG ARG A 9 0.266 -5.573 -1.340 1.00 1.21 C +ATOM 199 CD ARG A 9 -0.344 -6.320 -2.518 1.00 1.46 C +ATOM 200 NE ARG A 9 0.631 -6.555 -3.588 1.00 2.08 N +ATOM 201 CZ ARG A 9 0.641 -7.631 -4.379 1.00 2.69 C +ATOM 202 NH1 ARG A 9 -0.218 -8.626 -4.184 1.00 2.94 N +ATOM 203 NH2 ARG A 9 1.534 -7.716 -5.355 1.00 3.48 N +ATOM 204 H ARG A 9 -0.168 -2.637 -0.186 1.00 0.22 H +ATOM 205 HA ARG A 9 2.143 -4.280 -0.024 1.00 0.30 H +ATOM 206 HB2 ARG A 9 0.196 -3.642 -2.199 1.00 0.74 H +ATOM 207 HB3 ARG A 9 1.656 -4.543 -2.566 1.00 0.93 H +ATOM 208 HG2 ARG A 9 0.995 -6.210 -0.859 1.00 1.80 H +ATOM 209 HG3 ARG A 9 -0.516 -5.324 -0.639 1.00 1.91 H +ATOM 210 HD2 ARG A 9 -0.720 -7.271 -2.170 1.00 1.70 H +ATOM 211 HD3 ARG A 9 -1.159 -5.731 -2.910 1.00 1.90 H +ATOM 212 HE ARG A 9 1.307 -5.855 -3.743 1.00 2.43 H +ATOM 213 HH11 ARG A 9 -0.884 -8.581 -3.437 1.00 2.79 H +ATOM 214 HH12 ARG A 9 -0.208 -9.432 -4.793 1.00 3.57 H +ATOM 215 HH21 ARG A 9 2.195 -6.973 -5.498 1.00 3.76 H +ATOM 216 HH22 ARG A 9 1.554 -8.523 -5.955 1.00 3.99 H +ATOM 217 N TRP A 10 2.338 -1.488 -1.723 1.00 0.18 N +ATOM 218 CA TRP A 10 3.261 -0.487 -2.243 1.00 0.18 C +ATOM 219 C TRP A 10 4.237 -0.031 -1.162 1.00 0.15 C +ATOM 220 O TRP A 10 5.446 0.059 -1.397 1.00 0.15 O +ATOM 221 CB TRP A 10 2.476 0.712 -2.793 1.00 0.24 C +ATOM 222 CG TRP A 10 3.226 2.013 -2.725 1.00 0.27 C +ATOM 223 CD1 TRP A 10 3.069 2.995 -1.788 1.00 0.32 C +ATOM 224 CD2 TRP A 10 4.256 2.467 -3.611 1.00 0.33 C +ATOM 225 NE1 TRP A 10 3.933 4.032 -2.040 1.00 0.39 N +ATOM 226 CE2 TRP A 10 4.671 3.733 -3.154 1.00 0.39 C +ATOM 227 CE3 TRP A 10 4.864 1.930 -4.746 1.00 0.39 C +ATOM 228 CZ2 TRP A 10 5.670 4.463 -3.792 1.00 0.48 C +ATOM 229 CZ3 TRP A 10 5.853 2.659 -5.381 1.00 0.49 C +ATOM 230 CH2 TRP A 10 6.248 3.913 -4.903 1.00 0.53 C +ATOM 231 H TRP A 10 1.372 -1.288 -1.709 1.00 0.20 H +ATOM 232 HA TRP A 10 3.819 -0.940 -3.047 1.00 0.19 H +ATOM 233 HB2 TRP A 10 2.235 0.524 -3.828 1.00 0.29 H +ATOM 234 HB3 TRP A 10 1.562 0.823 -2.229 1.00 0.27 H +ATOM 235 HD1 TRP A 10 2.364 2.945 -0.971 1.00 0.36 H +ATOM 236 HE1 TRP A 10 4.004 4.854 -1.511 1.00 0.45 H +ATOM 237 HE3 TRP A 10 4.574 0.964 -5.127 1.00 0.39 H +ATOM 238 HZ2 TRP A 10 5.990 5.430 -3.429 1.00 0.54 H +ATOM 239 HZ3 TRP A 10 6.333 2.260 -6.262 1.00 0.57 H +ATOM 240 HH2 TRP A 10 7.024 4.446 -5.432 1.00 0.62 H +ATOM 241 N TRP A 11 3.690 0.256 0.014 1.00 0.16 N +ATOM 242 CA TRP A 11 4.465 0.740 1.144 1.00 0.17 C +ATOM 243 C TRP A 11 5.627 -0.199 1.436 1.00 0.14 C +ATOM 244 O TRP A 11 6.789 0.193 1.327 1.00 0.18 O +ATOM 245 CB TRP A 11 3.555 0.863 2.375 1.00 0.23 C +ATOM 246 CG TRP A 11 4.006 1.883 3.385 1.00 0.36 C +ATOM 247 CD1 TRP A 11 3.341 3.018 3.751 1.00 0.48 C +ATOM 248 CD2 TRP A 11 5.215 1.862 4.147 1.00 0.43 C +ATOM 249 NE1 TRP A 11 4.065 3.702 4.701 1.00 0.61 N +ATOM 250 CE2 TRP A 11 5.222 3.010 4.961 1.00 0.58 C +ATOM 251 CE3 TRP A 11 6.288 0.981 4.219 1.00 0.44 C +ATOM 252 CZ2 TRP A 11 6.270 3.290 5.838 1.00 0.71 C +ATOM 253 CZ3 TRP A 11 7.325 1.257 5.083 1.00 0.57 C +ATOM 254 CH2 TRP A 11 7.312 2.400 5.885 1.00 0.69 C +ATOM 255 H TRP A 11 2.718 0.147 0.118 1.00 0.19 H +ATOM 256 HA TRP A 11 4.862 1.710 0.898 1.00 0.20 H +ATOM 257 HB2 TRP A 11 2.562 1.139 2.049 1.00 0.28 H +ATOM 258 HB3 TRP A 11 3.510 -0.098 2.869 1.00 0.24 H +ATOM 259 HD1 TRP A 11 2.383 3.318 3.350 1.00 0.51 H +ATOM 260 HE1 TRP A 11 3.795 4.549 5.127 1.00 0.72 H +ATOM 261 HE3 TRP A 11 6.314 0.097 3.597 1.00 0.37 H +ATOM 262 HZ2 TRP A 11 6.272 4.169 6.463 1.00 0.83 H +ATOM 263 HZ3 TRP A 11 8.163 0.581 5.148 1.00 0.61 H +ATOM 264 HH2 TRP A 11 8.147 2.575 6.544 1.00 0.80 H +ATOM 265 N ARG A 12 5.309 -1.441 1.772 1.00 0.16 N +ATOM 266 CA ARG A 12 6.321 -2.399 2.185 1.00 0.22 C +ATOM 267 C ARG A 12 7.305 -2.698 1.051 1.00 0.21 C +ATOM 268 O ARG A 12 8.461 -3.033 1.299 1.00 0.27 O +ATOM 269 CB ARG A 12 5.667 -3.689 2.684 1.00 0.33 C +ATOM 270 CG ARG A 12 6.651 -4.650 3.329 1.00 1.49 C +ATOM 271 CD ARG A 12 7.263 -4.056 4.591 1.00 1.87 C +ATOM 272 NE ARG A 12 6.326 -4.056 5.721 1.00 2.29 N +ATOM 273 CZ ARG A 12 6.459 -3.293 6.815 1.00 2.74 C +ATOM 274 NH1 ARG A 12 7.400 -2.360 6.887 1.00 3.00 N +ATOM 275 NH2 ARG A 12 5.620 -3.445 7.835 1.00 3.27 N +ATOM 276 H ARG A 12 4.367 -1.719 1.745 1.00 0.19 H +ATOM 277 HA ARG A 12 6.871 -1.953 3.002 1.00 0.27 H +ATOM 278 HB2 ARG A 12 4.911 -3.439 3.414 1.00 0.95 H +ATOM 279 HB3 ARG A 12 5.201 -4.189 1.848 1.00 0.86 H +ATOM 280 HG2 ARG A 12 6.132 -5.558 3.584 1.00 2.00 H +ATOM 281 HG3 ARG A 12 7.440 -4.869 2.623 1.00 2.03 H +ATOM 282 HD2 ARG A 12 8.136 -4.635 4.858 1.00 2.25 H +ATOM 283 HD3 ARG A 12 7.560 -3.039 4.384 1.00 1.95 H +ATOM 284 HE ARG A 12 5.575 -4.693 5.682 1.00 2.50 H +ATOM 285 HH11 ARG A 12 8.035 -2.201 6.108 1.00 2.91 H +ATOM 286 HH12 ARG A 12 7.494 -1.809 7.715 1.00 3.51 H +ATOM 287 HH21 ARG A 12 4.886 -4.129 7.788 1.00 3.44 H +ATOM 288 HH22 ARG A 12 5.732 -2.888 8.666 1.00 3.66 H +ATOM 289 N ARG A 13 6.840 -2.601 -0.187 1.00 0.18 N +ATOM 290 CA ARG A 13 7.672 -2.882 -1.333 1.00 0.22 C +ATOM 291 C ARG A 13 8.712 -1.783 -1.560 1.00 0.21 C +ATOM 292 O ARG A 13 9.914 -2.036 -1.499 1.00 0.25 O +ATOM 293 CB ARG A 13 6.785 -3.041 -2.563 1.00 0.28 C +ATOM 294 CG ARG A 13 7.553 -3.142 -3.855 1.00 0.93 C +ATOM 295 CD ARG A 13 8.430 -4.385 -3.891 1.00 1.38 C +ATOM 296 NE ARG A 13 9.292 -4.410 -5.067 1.00 1.86 N +ATOM 297 CZ ARG A 13 10.590 -4.699 -5.029 1.00 2.76 C +ATOM 298 NH1 ARG A 13 11.173 -5.030 -3.884 1.00 3.47 N +ATOM 299 NH2 ARG A 13 11.303 -4.662 -6.142 1.00 3.35 N +ATOM 300 H ARG A 13 5.915 -2.324 -0.341 1.00 0.17 H +ATOM 301 HA ARG A 13 8.187 -3.812 -1.155 1.00 0.28 H +ATOM 302 HB2 ARG A 13 6.196 -3.937 -2.452 1.00 0.66 H +ATOM 303 HB3 ARG A 13 6.122 -2.191 -2.629 1.00 0.82 H +ATOM 304 HG2 ARG A 13 6.853 -3.177 -4.674 1.00 1.57 H +ATOM 305 HG3 ARG A 13 8.175 -2.268 -3.944 1.00 1.64 H +ATOM 306 HD2 ARG A 13 9.047 -4.402 -3.006 1.00 2.01 H +ATOM 307 HD3 ARG A 13 7.794 -5.257 -3.903 1.00 1.74 H +ATOM 308 HE ARG A 13 8.879 -4.192 -5.934 1.00 1.99 H +ATOM 309 HH11 ARG A 13 10.640 -5.063 -3.037 1.00 3.38 H +ATOM 310 HH12 ARG A 13 12.157 -5.256 -3.862 1.00 4.31 H +ATOM 311 HH21 ARG A 13 10.872 -4.423 -7.016 1.00 3.32 H +ATOM 312 HH22 ARG A 13 12.293 -4.870 -6.118 1.00 4.06 H +ATOM 313 N TRP A 14 8.247 -0.567 -1.833 1.00 0.20 N +ATOM 314 CA TRP A 14 9.146 0.534 -2.163 1.00 0.24 C +ATOM 315 C TRP A 14 9.861 1.046 -0.922 1.00 0.21 C +ATOM 316 O TRP A 14 11.090 1.106 -0.874 1.00 0.27 O +ATOM 317 CB TRP A 14 8.370 1.676 -2.829 1.00 0.31 C +ATOM 318 CG TRP A 14 9.249 2.726 -3.455 1.00 0.42 C +ATOM 319 CD1 TRP A 14 9.670 2.773 -4.755 1.00 0.54 C +ATOM 320 CD2 TRP A 14 9.811 3.882 -2.813 1.00 0.48 C +ATOM 321 NE1 TRP A 14 10.461 3.877 -4.957 1.00 0.64 N +ATOM 322 CE2 TRP A 14 10.561 4.576 -3.780 1.00 0.60 C +ATOM 323 CE3 TRP A 14 9.753 4.396 -1.517 1.00 0.49 C +ATOM 324 CZ2 TRP A 14 11.247 5.754 -3.490 1.00 0.70 C +ATOM 325 CZ3 TRP A 14 10.430 5.565 -1.228 1.00 0.62 C +ATOM 326 CH2 TRP A 14 11.169 6.234 -2.214 1.00 0.71 C +ATOM 327 H TRP A 14 7.278 -0.404 -1.796 1.00 0.19 H +ATOM 328 HA TRP A 14 9.883 0.163 -2.856 1.00 0.30 H +ATOM 329 HB2 TRP A 14 7.737 1.265 -3.602 1.00 0.37 H +ATOM 330 HB3 TRP A 14 7.751 2.158 -2.085 1.00 0.26 H +ATOM 331 HD1 TRP A 14 9.415 2.040 -5.506 1.00 0.59 H +ATOM 332 HE1 TRP A 14 10.887 4.128 -5.810 1.00 0.74 H +ATOM 333 HE3 TRP A 14 9.191 3.895 -0.745 1.00 0.44 H +ATOM 334 HZ2 TRP A 14 11.819 6.280 -4.240 1.00 0.80 H +ATOM 335 HZ3 TRP A 14 10.393 5.976 -0.230 1.00 0.67 H +ATOM 336 HH2 TRP A 14 11.683 7.146 -1.945 1.00 0.80 H +ATOM 337 N ARG A 15 9.078 1.436 0.074 1.00 0.20 N +ATOM 338 CA ARG A 15 9.617 2.044 1.282 1.00 0.22 C +ATOM 339 C ARG A 15 10.300 1.006 2.163 1.00 0.26 C +ATOM 340 O ARG A 15 11.365 1.266 2.732 1.00 0.44 O +ATOM 341 CB ARG A 15 8.510 2.761 2.070 1.00 0.41 C +ATOM 342 CG ARG A 15 7.990 4.031 1.411 1.00 0.57 C +ATOM 343 CD ARG A 15 6.981 3.737 0.304 1.00 0.40 C +ATOM 344 NE ARG A 15 6.667 4.932 -0.490 1.00 0.46 N +ATOM 345 CZ ARG A 15 5.991 5.986 -0.027 1.00 0.82 C +ATOM 346 NH1 ARG A 15 5.507 5.987 1.212 1.00 1.35 N +ATOM 347 NH2 ARG A 15 5.794 7.038 -0.813 1.00 0.88 N +ATOM 348 H ARG A 15 8.114 1.281 0.010 1.00 0.25 H +ATOM 349 HA ARG A 15 10.354 2.772 0.976 1.00 0.28 H +ATOM 350 HB2 ARG A 15 7.675 2.088 2.187 1.00 0.94 H +ATOM 351 HB3 ARG A 15 8.892 3.017 3.043 1.00 1.01 H +ATOM 352 HG2 ARG A 15 7.508 4.634 2.166 1.00 1.12 H +ATOM 353 HG3 ARG A 15 8.825 4.576 0.995 1.00 1.13 H +ATOM 354 HD2 ARG A 15 7.393 2.982 -0.349 1.00 0.45 H +ATOM 355 HD3 ARG A 15 6.071 3.365 0.753 1.00 0.45 H +ATOM 356 HE ARG A 15 6.987 4.950 -1.422 1.00 0.63 H +ATOM 357 HH11 ARG A 15 5.643 5.193 1.808 1.00 1.40 H +ATOM 358 HH12 ARG A 15 5.018 6.800 1.567 1.00 1.76 H +ATOM 359 HH21 ARG A 15 6.156 7.043 -1.758 1.00 0.77 H +ATOM 360 HH22 ARG A 15 5.292 7.838 -0.473 1.00 1.22 H +ATOM 361 N ARG A 16 9.674 -0.166 2.244 1.00 0.40 N +ATOM 362 CA ARG A 16 10.127 -1.272 3.089 1.00 0.55 C +ATOM 363 C ARG A 16 10.038 -0.920 4.568 1.00 1.46 C +ATOM 364 O ARG A 16 10.952 -0.249 5.092 1.00 2.20 O +ATOM 365 CB ARG A 16 11.548 -1.736 2.740 1.00 1.14 C +ATOM 366 CG ARG A 16 11.991 -2.920 3.585 1.00 2.07 C +ATOM 367 CD ARG A 16 13.416 -3.354 3.300 1.00 2.76 C +ATOM 368 NE ARG A 16 13.815 -4.422 4.218 1.00 3.02 N +ATOM 369 CZ ARG A 16 14.532 -5.489 3.875 1.00 3.81 C +ATOM 370 NH1 ARG A 16 15.032 -5.605 2.645 1.00 4.43 N +ATOM 371 NH2 ARG A 16 14.770 -6.433 4.775 1.00 4.37 N +ATOM 372 OXT ARG A 16 9.060 -1.339 5.207 1.00 2.24 O +ATOM 373 H ARG A 16 8.869 -0.295 1.705 1.00 0.55 H +ATOM 374 HA ARG A 16 9.451 -2.093 2.910 1.00 1.33 H +ATOM 375 HB2 ARG A 16 11.575 -2.030 1.701 1.00 1.66 H +ATOM 376 HB3 ARG A 16 12.239 -0.923 2.900 1.00 1.64 H +ATOM 377 HG2 ARG A 16 11.921 -2.648 4.627 1.00 2.52 H +ATOM 378 HG3 ARG A 16 11.333 -3.753 3.391 1.00 2.56 H +ATOM 379 HD2 ARG A 16 13.480 -3.716 2.284 1.00 3.30 H +ATOM 380 HD3 ARG A 16 14.078 -2.511 3.431 1.00 3.15 H +ATOM 381 HE ARG A 16 13.495 -4.346 5.148 1.00 2.98 H +ATOM 382 HH11 ARG A 16 14.875 -4.879 1.960 1.00 4.37 H +ATOM 383 HH12 ARG A 16 15.562 -6.422 2.385 1.00 5.17 H +ATOM 384 HH21 ARG A 16 14.405 -6.342 5.715 1.00 4.32 H +ATOM 385 HH22 ARG A 16 15.299 -7.250 4.530 1.00 5.07 H +TER 386 ARG A 16 +ENDMDL +MODEL 7 +ATOM 1 N ARG A 1 -12.215 -0.101 1.147 1.00 0.94 N +ATOM 2 CA ARG A 1 -10.798 0.136 1.410 1.00 0.72 C +ATOM 3 C ARG A 1 -9.922 -0.633 0.425 1.00 0.60 C +ATOM 4 O ARG A 1 -8.769 -0.938 0.727 1.00 0.64 O +ATOM 5 CB ARG A 1 -10.445 -0.320 2.825 1.00 1.24 C +ATOM 6 CG ARG A 1 -11.449 0.087 3.893 1.00 1.81 C +ATOM 7 CD ARG A 1 -11.234 -0.729 5.152 1.00 2.42 C +ATOM 8 NE ARG A 1 -11.104 -2.149 4.831 1.00 3.29 N +ATOM 9 CZ ARG A 1 -10.348 -3.004 5.511 1.00 4.10 C +ATOM 10 NH1 ARG A 1 -9.786 -2.637 6.657 1.00 4.22 N +ATOM 11 NH2 ARG A 1 -10.182 -4.240 5.054 1.00 5.01 N +ATOM 12 H ARG A 1 -12.596 -0.993 1.332 1.00 1.36 H +ATOM 13 HA ARG A 1 -10.605 1.192 1.313 1.00 0.90 H +ATOM 14 HB2 ARG A 1 -10.371 -1.396 2.831 1.00 1.52 H +ATOM 15 HB3 ARG A 1 -9.484 0.094 3.093 1.00 1.64 H +ATOM 16 HG2 ARG A 1 -11.319 1.134 4.122 1.00 2.17 H +ATOM 17 HG3 ARG A 1 -12.450 -0.086 3.526 1.00 2.13 H +ATOM 18 HD2 ARG A 1 -10.334 -0.391 5.644 1.00 2.35 H +ATOM 19 HD3 ARG A 1 -12.080 -0.593 5.808 1.00 2.78 H +ATOM 20 HE ARG A 1 -11.574 -2.469 4.031 1.00 3.48 H +ATOM 21 HH11 ARG A 1 -9.928 -1.706 7.015 1.00 3.76 H +ATOM 22 HH12 ARG A 1 -9.229 -3.292 7.185 1.00 4.94 H +ATOM 23 HH21 ARG A 1 -10.630 -4.527 4.199 1.00 5.16 H +ATOM 24 HH22 ARG A 1 -9.589 -4.890 5.549 1.00 5.67 H +ATOM 25 N ARG A 2 -10.460 -0.940 -0.750 1.00 0.54 N +ATOM 26 CA ARG A 2 -9.727 -1.729 -1.747 1.00 0.51 C +ATOM 27 C ARG A 2 -8.419 -1.050 -2.152 1.00 0.39 C +ATOM 28 O ARG A 2 -7.433 -1.712 -2.491 1.00 0.41 O +ATOM 29 CB ARG A 2 -10.590 -2.009 -2.977 1.00 0.59 C +ATOM 30 CG ARG A 2 -11.850 -2.799 -2.661 1.00 1.27 C +ATOM 31 CD ARG A 2 -12.359 -3.565 -3.870 1.00 2.13 C +ATOM 32 NE ARG A 2 -12.733 -2.694 -4.987 1.00 2.80 N +ATOM 33 CZ ARG A 2 -13.180 -3.150 -6.161 1.00 3.73 C +ATOM 34 NH1 ARG A 2 -13.363 -4.450 -6.358 1.00 4.17 N +ATOM 35 NH2 ARG A 2 -13.448 -2.308 -7.147 1.00 4.44 N +ATOM 36 H ARG A 2 -11.369 -0.635 -0.952 1.00 0.59 H +ATOM 37 HA ARG A 2 -9.483 -2.669 -1.282 1.00 0.60 H +ATOM 38 HB2 ARG A 2 -10.879 -1.068 -3.422 1.00 0.87 H +ATOM 39 HB3 ARG A 2 -10.007 -2.570 -3.689 1.00 1.05 H +ATOM 40 HG2 ARG A 2 -11.628 -3.506 -1.874 1.00 1.80 H +ATOM 41 HG3 ARG A 2 -12.617 -2.115 -2.328 1.00 1.44 H +ATOM 42 HD2 ARG A 2 -11.578 -4.234 -4.202 1.00 2.58 H +ATOM 43 HD3 ARG A 2 -13.221 -4.140 -3.574 1.00 2.36 H +ATOM 44 HE ARG A 2 -12.632 -1.719 -4.860 1.00 2.78 H +ATOM 45 HH11 ARG A 2 -13.172 -5.111 -5.623 1.00 3.85 H +ATOM 46 HH12 ARG A 2 -13.695 -4.780 -7.248 1.00 4.97 H +ATOM 47 HH21 ARG A 2 -13.317 -1.318 -7.024 1.00 4.37 H +ATOM 48 HH22 ARG A 2 -13.780 -2.662 -8.029 1.00 5.17 H +ATOM 49 N TRP A 3 -8.428 0.272 -2.108 1.00 0.34 N +ATOM 50 CA TRP A 3 -7.256 1.083 -2.420 1.00 0.29 C +ATOM 51 C TRP A 3 -6.160 0.915 -1.361 1.00 0.22 C +ATOM 52 O TRP A 3 -4.970 0.940 -1.677 1.00 0.20 O +ATOM 53 CB TRP A 3 -7.668 2.558 -2.520 1.00 0.42 C +ATOM 54 CG TRP A 3 -8.455 3.029 -1.330 1.00 0.53 C +ATOM 55 CD1 TRP A 3 -9.811 2.988 -1.168 1.00 0.60 C +ATOM 56 CD2 TRP A 3 -7.926 3.597 -0.127 1.00 0.65 C +ATOM 57 NE1 TRP A 3 -10.152 3.481 0.069 1.00 0.75 N +ATOM 58 CE2 TRP A 3 -9.015 3.867 0.724 1.00 0.79 C +ATOM 59 CE3 TRP A 3 -6.636 3.903 0.311 1.00 0.67 C +ATOM 60 CZ2 TRP A 3 -8.847 4.425 1.992 1.00 0.95 C +ATOM 61 CZ3 TRP A 3 -6.470 4.450 1.566 1.00 0.83 C +ATOM 62 CH2 TRP A 3 -7.570 4.708 2.395 1.00 0.96 C +ATOM 63 H TRP A 3 -9.256 0.723 -1.852 1.00 0.39 H +ATOM 64 HA TRP A 3 -6.873 0.759 -3.377 1.00 0.31 H +ATOM 65 HB2 TRP A 3 -6.780 3.166 -2.593 1.00 0.44 H +ATOM 66 HB3 TRP A 3 -8.272 2.701 -3.404 1.00 0.48 H +ATOM 67 HD1 TRP A 3 -10.502 2.607 -1.905 1.00 0.57 H +ATOM 68 HE1 TRP A 3 -11.070 3.549 0.422 1.00 0.84 H +ATOM 69 HE3 TRP A 3 -5.777 3.710 -0.313 1.00 0.59 H +ATOM 70 HZ2 TRP A 3 -9.684 4.628 2.645 1.00 1.06 H +ATOM 71 HZ3 TRP A 3 -5.476 4.690 1.919 1.00 0.86 H +ATOM 72 HH2 TRP A 3 -7.391 5.129 3.370 1.00 1.10 H +ATOM 73 N ARG A 4 -6.574 0.720 -0.106 1.00 0.25 N +ATOM 74 CA ARG A 4 -5.646 0.622 1.013 1.00 0.26 C +ATOM 75 C ARG A 4 -4.830 -0.659 0.901 1.00 0.20 C +ATOM 76 O ARG A 4 -3.688 -0.728 1.351 1.00 0.22 O +ATOM 77 CB ARG A 4 -6.410 0.664 2.339 1.00 0.39 C +ATOM 78 CG ARG A 4 -5.519 0.559 3.560 1.00 0.93 C +ATOM 79 CD ARG A 4 -4.785 1.862 3.851 1.00 0.78 C +ATOM 80 NE ARG A 4 -5.659 2.825 4.513 1.00 0.93 N +ATOM 81 CZ ARG A 4 -5.260 4.005 4.972 1.00 1.11 C +ATOM 82 NH1 ARG A 4 -3.996 4.391 4.841 1.00 1.09 N +ATOM 83 NH2 ARG A 4 -6.130 4.791 5.585 1.00 1.91 N +ATOM 84 H ARG A 4 -7.532 0.625 0.071 1.00 0.33 H +ATOM 85 HA ARG A 4 -4.979 1.464 0.962 1.00 0.29 H +ATOM 86 HB2 ARG A 4 -6.955 1.597 2.396 1.00 0.67 H +ATOM 87 HB3 ARG A 4 -7.113 -0.156 2.358 1.00 0.82 H +ATOM 88 HG2 ARG A 4 -6.134 0.316 4.410 1.00 1.41 H +ATOM 89 HG3 ARG A 4 -4.796 -0.223 3.393 1.00 1.45 H +ATOM 90 HD2 ARG A 4 -3.939 1.655 4.489 1.00 1.29 H +ATOM 91 HD3 ARG A 4 -4.437 2.285 2.919 1.00 1.06 H +ATOM 92 HE ARG A 4 -6.606 2.567 4.635 1.00 1.46 H +ATOM 93 HH11 ARG A 4 -3.330 3.793 4.398 1.00 1.34 H +ATOM 94 HH12 ARG A 4 -3.707 5.296 5.187 1.00 1.35 H +ATOM 95 HH21 ARG A 4 -7.083 4.489 5.700 1.00 2.46 H +ATOM 96 HH22 ARG A 4 -5.843 5.687 5.941 1.00 2.10 H +ATOM 97 N ARG A 5 -5.441 -1.669 0.307 1.00 0.22 N +ATOM 98 CA ARG A 5 -4.766 -2.928 0.024 1.00 0.29 C +ATOM 99 C ARG A 5 -3.526 -2.687 -0.839 1.00 0.25 C +ATOM 100 O ARG A 5 -2.432 -3.142 -0.508 1.00 0.32 O +ATOM 101 CB ARG A 5 -5.739 -3.876 -0.680 1.00 0.37 C +ATOM 102 CG ARG A 5 -5.100 -5.130 -1.254 1.00 0.90 C +ATOM 103 CD ARG A 5 -6.095 -5.881 -2.118 1.00 0.89 C +ATOM 104 NE ARG A 5 -6.751 -4.984 -3.071 1.00 1.49 N +ATOM 105 CZ ARG A 5 -7.797 -5.325 -3.827 1.00 1.77 C +ATOM 106 NH1 ARG A 5 -8.268 -6.562 -3.799 1.00 1.45 N +ATOM 107 NH2 ARG A 5 -8.359 -4.422 -4.622 1.00 2.70 N +ATOM 108 H ARG A 5 -6.375 -1.563 0.045 1.00 0.24 H +ATOM 109 HA ARG A 5 -4.464 -3.366 0.966 1.00 0.37 H +ATOM 110 HB2 ARG A 5 -6.499 -4.182 0.027 1.00 0.92 H +ATOM 111 HB3 ARG A 5 -6.214 -3.344 -1.488 1.00 0.72 H +ATOM 112 HG2 ARG A 5 -4.250 -4.849 -1.858 1.00 1.29 H +ATOM 113 HG3 ARG A 5 -4.781 -5.767 -0.445 1.00 1.42 H +ATOM 114 HD2 ARG A 5 -5.572 -6.654 -2.661 1.00 1.52 H +ATOM 115 HD3 ARG A 5 -6.844 -6.330 -1.483 1.00 0.93 H +ATOM 116 HE ARG A 5 -6.403 -4.068 -3.134 1.00 2.03 H +ATOM 117 HH11 ARG A 5 -7.839 -7.252 -3.212 1.00 1.37 H +ATOM 118 HH12 ARG A 5 -9.059 -6.818 -4.377 1.00 1.73 H +ATOM 119 HH21 ARG A 5 -8.008 -3.486 -4.653 1.00 3.26 H +ATOM 120 HH22 ARG A 5 -9.142 -4.677 -5.209 1.00 2.93 H +ATOM 121 N TRP A 6 -3.698 -1.943 -1.933 1.00 0.21 N +ATOM 122 CA TRP A 6 -2.580 -1.611 -2.811 1.00 0.27 C +ATOM 123 C TRP A 6 -1.591 -0.731 -2.063 1.00 0.22 C +ATOM 124 O TRP A 6 -0.382 -0.899 -2.182 1.00 0.26 O +ATOM 125 CB TRP A 6 -3.062 -0.886 -4.068 1.00 0.34 C +ATOM 126 CG TRP A 6 -4.111 -1.636 -4.830 1.00 0.35 C +ATOM 127 CD1 TRP A 6 -4.081 -2.949 -5.192 1.00 0.43 C +ATOM 128 CD2 TRP A 6 -5.333 -1.106 -5.348 1.00 0.34 C +ATOM 129 NE1 TRP A 6 -5.223 -3.275 -5.874 1.00 0.49 N +ATOM 130 CE2 TRP A 6 -6.005 -2.159 -5.992 1.00 0.43 C +ATOM 131 CE3 TRP A 6 -5.927 0.154 -5.320 1.00 0.32 C +ATOM 132 CZ2 TRP A 6 -7.242 -1.989 -6.605 1.00 0.48 C +ATOM 133 CZ3 TRP A 6 -7.154 0.326 -5.932 1.00 0.37 C +ATOM 134 CH2 TRP A 6 -7.802 -0.742 -6.565 1.00 0.44 C +ATOM 135 H TRP A 6 -4.589 -1.605 -2.147 1.00 0.19 H +ATOM 136 HA TRP A 6 -2.091 -2.531 -3.096 1.00 0.34 H +ATOM 137 HB2 TRP A 6 -3.475 0.069 -3.786 1.00 0.34 H +ATOM 138 HB3 TRP A 6 -2.221 -0.727 -4.728 1.00 0.47 H +ATOM 139 HD1 TRP A 6 -3.280 -3.627 -4.950 1.00 0.48 H +ATOM 140 HE1 TRP A 6 -5.436 -4.159 -6.229 1.00 0.58 H +ATOM 141 HE3 TRP A 6 -5.439 0.990 -4.835 1.00 0.32 H +ATOM 142 HZ2 TRP A 6 -7.755 -2.804 -7.096 1.00 0.57 H +ATOM 143 HZ3 TRP A 6 -7.626 1.295 -5.921 1.00 0.39 H +ATOM 144 HH2 TRP A 6 -8.758 -0.561 -7.028 1.00 0.50 H +ATOM 145 N TRP A 7 -2.137 0.210 -1.303 1.00 0.17 N +ATOM 146 CA TRP A 7 -1.360 1.076 -0.427 1.00 0.18 C +ATOM 147 C TRP A 7 -0.377 0.267 0.428 1.00 0.16 C +ATOM 148 O TRP A 7 0.808 0.596 0.506 1.00 0.19 O +ATOM 149 CB TRP A 7 -2.331 1.869 0.458 1.00 0.20 C +ATOM 150 CG TRP A 7 -1.703 2.543 1.638 1.00 0.34 C +ATOM 151 CD1 TRP A 7 -1.444 1.983 2.857 1.00 0.44 C +ATOM 152 CD2 TRP A 7 -1.287 3.906 1.726 1.00 0.51 C +ATOM 153 NE1 TRP A 7 -0.883 2.914 3.692 1.00 0.62 N +ATOM 154 CE2 TRP A 7 -0.776 4.103 3.022 1.00 0.65 C +ATOM 155 CE3 TRP A 7 -1.289 4.981 0.831 1.00 0.62 C +ATOM 156 CZ2 TRP A 7 -0.276 5.326 3.445 1.00 0.85 C +ATOM 157 CZ3 TRP A 7 -0.796 6.201 1.254 1.00 0.81 C +ATOM 158 CH2 TRP A 7 -0.295 6.364 2.553 1.00 0.91 C +ATOM 159 H TRP A 7 -3.113 0.334 -1.340 1.00 0.17 H +ATOM 160 HA TRP A 7 -0.805 1.767 -1.041 1.00 0.25 H +ATOM 161 HB2 TRP A 7 -2.802 2.633 -0.146 1.00 0.28 H +ATOM 162 HB3 TRP A 7 -3.093 1.198 0.829 1.00 0.20 H +ATOM 163 HD1 TRP A 7 -1.652 0.954 3.109 1.00 0.45 H +ATOM 164 HE1 TRP A 7 -0.599 2.751 4.624 1.00 0.74 H +ATOM 165 HE3 TRP A 7 -1.669 4.871 -0.175 1.00 0.59 H +ATOM 166 HZ2 TRP A 7 0.108 5.470 4.441 1.00 0.97 H +ATOM 167 HZ3 TRP A 7 -0.793 7.045 0.578 1.00 0.92 H +ATOM 168 HH2 TRP A 7 0.080 7.333 2.843 1.00 1.07 H +ATOM 169 N ARG A 8 -0.876 -0.792 1.054 1.00 0.16 N +ATOM 170 CA ARG A 8 -0.055 -1.628 1.924 1.00 0.22 C +ATOM 171 C ARG A 8 1.046 -2.325 1.137 1.00 0.20 C +ATOM 172 O ARG A 8 2.214 -2.302 1.532 1.00 0.23 O +ATOM 173 CB ARG A 8 -0.917 -2.673 2.635 1.00 0.36 C +ATOM 174 CG ARG A 8 -1.840 -2.099 3.702 1.00 0.93 C +ATOM 175 CD ARG A 8 -2.552 -3.206 4.461 1.00 1.11 C +ATOM 176 NE ARG A 8 -1.607 -4.180 5.005 1.00 1.71 N +ATOM 177 CZ ARG A 8 -1.722 -5.499 4.839 1.00 2.38 C +ATOM 178 NH1 ARG A 8 -2.779 -5.999 4.205 1.00 2.43 N +ATOM 179 NH2 ARG A 8 -0.792 -6.318 5.321 1.00 3.45 N +ATOM 180 H ARG A 8 -1.821 -1.017 0.927 1.00 0.16 H +ATOM 181 HA ARG A 8 0.400 -0.986 2.666 1.00 0.28 H +ATOM 182 HB2 ARG A 8 -1.527 -3.176 1.900 1.00 1.17 H +ATOM 183 HB3 ARG A 8 -0.268 -3.396 3.106 1.00 1.04 H +ATOM 184 HG2 ARG A 8 -1.253 -1.516 4.398 1.00 1.48 H +ATOM 185 HG3 ARG A 8 -2.576 -1.466 3.229 1.00 1.64 H +ATOM 186 HD2 ARG A 8 -3.112 -2.769 5.275 1.00 1.70 H +ATOM 187 HD3 ARG A 8 -3.228 -3.712 3.790 1.00 1.56 H +ATOM 188 HE ARG A 8 -0.832 -3.828 5.505 1.00 2.17 H +ATOM 189 HH11 ARG A 8 -3.489 -5.387 3.854 1.00 2.23 H +ATOM 190 HH12 ARG A 8 -2.873 -6.997 4.077 1.00 3.07 H +ATOM 191 HH21 ARG A 8 0.007 -5.944 5.818 1.00 3.87 H +ATOM 192 HH22 ARG A 8 -0.865 -7.309 5.180 1.00 4.01 H +ATOM 193 N ARG A 9 0.669 -2.941 0.023 1.00 0.21 N +ATOM 194 CA ARG A 9 1.628 -3.637 -0.822 1.00 0.25 C +ATOM 195 C ARG A 9 2.694 -2.667 -1.338 1.00 0.21 C +ATOM 196 O ARG A 9 3.879 -3.000 -1.378 1.00 0.26 O +ATOM 197 CB ARG A 9 0.907 -4.308 -1.993 1.00 0.33 C +ATOM 198 CG ARG A 9 1.817 -5.152 -2.869 1.00 1.21 C +ATOM 199 CD ARG A 9 2.541 -6.221 -2.067 1.00 1.46 C +ATOM 200 NE ARG A 9 3.401 -7.047 -2.915 1.00 2.08 N +ATOM 201 CZ ARG A 9 4.694 -7.275 -2.674 1.00 2.69 C +ATOM 202 NH1 ARG A 9 5.278 -6.741 -1.611 1.00 2.94 N +ATOM 203 NH2 ARG A 9 5.401 -8.037 -3.500 1.00 3.48 N +ATOM 204 H ARG A 9 -0.280 -2.929 -0.234 1.00 0.22 H +ATOM 205 HA ARG A 9 2.112 -4.398 -0.224 1.00 0.30 H +ATOM 206 HB2 ARG A 9 0.122 -4.943 -1.603 1.00 0.74 H +ATOM 207 HB3 ARG A 9 0.461 -3.543 -2.611 1.00 0.93 H +ATOM 208 HG2 ARG A 9 1.222 -5.633 -3.631 1.00 1.80 H +ATOM 209 HG3 ARG A 9 2.549 -4.509 -3.334 1.00 1.91 H +ATOM 210 HD2 ARG A 9 3.146 -5.739 -1.315 1.00 1.70 H +ATOM 211 HD3 ARG A 9 1.808 -6.855 -1.590 1.00 1.90 H +ATOM 212 HE ARG A 9 2.981 -7.459 -3.712 1.00 2.43 H +ATOM 213 HH11 ARG A 9 4.750 -6.170 -0.983 1.00 2.79 H +ATOM 214 HH12 ARG A 9 6.261 -6.904 -1.434 1.00 3.57 H +ATOM 215 HH21 ARG A 9 4.964 -8.444 -4.314 1.00 3.76 H +ATOM 216 HH22 ARG A 9 6.372 -8.216 -3.320 1.00 3.99 H +ATOM 217 N TRP A 10 2.259 -1.473 -1.722 1.00 0.18 N +ATOM 218 CA TRP A 10 3.156 -0.416 -2.174 1.00 0.18 C +ATOM 219 C TRP A 10 4.126 -0.006 -1.068 1.00 0.15 C +ATOM 220 O TRP A 10 5.332 0.128 -1.296 1.00 0.15 O +ATOM 221 CB TRP A 10 2.313 0.787 -2.634 1.00 0.24 C +ATOM 222 CG TRP A 10 3.000 2.116 -2.507 1.00 0.27 C +ATOM 223 CD1 TRP A 10 2.834 3.028 -1.506 1.00 0.32 C +ATOM 224 CD2 TRP A 10 3.952 2.686 -3.412 1.00 0.33 C +ATOM 225 NE1 TRP A 10 3.634 4.120 -1.721 1.00 0.39 N +ATOM 226 CE2 TRP A 10 4.327 3.938 -2.888 1.00 0.39 C +ATOM 227 CE3 TRP A 10 4.525 2.262 -4.610 1.00 0.39 C +ATOM 228 CZ2 TRP A 10 5.249 4.768 -3.522 1.00 0.48 C +ATOM 229 CZ3 TRP A 10 5.441 3.085 -5.240 1.00 0.49 C +ATOM 230 CH2 TRP A 10 5.795 4.327 -4.694 1.00 0.53 C +ATOM 231 H TRP A 10 1.289 -1.293 -1.704 1.00 0.20 H +ATOM 232 HA TRP A 10 3.719 -0.790 -3.015 1.00 0.19 H +ATOM 233 HB2 TRP A 10 2.049 0.649 -3.672 1.00 0.29 H +ATOM 234 HB3 TRP A 10 1.408 0.819 -2.042 1.00 0.27 H +ATOM 235 HD1 TRP A 10 2.171 2.890 -0.666 1.00 0.36 H +ATOM 236 HE1 TRP A 10 3.695 4.906 -1.134 1.00 0.45 H +ATOM 237 HE3 TRP A 10 4.268 1.309 -5.041 1.00 0.39 H +ATOM 238 HZ2 TRP A 10 5.535 5.727 -3.108 1.00 0.54 H +ATOM 239 HZ3 TRP A 10 5.895 2.771 -6.172 1.00 0.57 H +ATOM 240 HH2 TRP A 10 6.514 4.938 -5.221 1.00 0.62 H +ATOM 241 N TRP A 11 3.586 0.167 0.128 1.00 0.16 N +ATOM 242 CA TRP A 11 4.345 0.674 1.262 1.00 0.17 C +ATOM 243 C TRP A 11 5.515 -0.251 1.592 1.00 0.14 C +ATOM 244 O TRP A 11 6.670 0.177 1.582 1.00 0.18 O +ATOM 245 CB TRP A 11 3.423 0.810 2.479 1.00 0.23 C +ATOM 246 CG TRP A 11 3.748 1.980 3.367 1.00 0.36 C +ATOM 247 CD1 TRP A 11 2.958 3.069 3.599 1.00 0.48 C +ATOM 248 CD2 TRP A 11 4.944 2.184 4.133 1.00 0.43 C +ATOM 249 NE1 TRP A 11 3.586 3.933 4.466 1.00 0.61 N +ATOM 250 CE2 TRP A 11 4.809 3.413 4.805 1.00 0.58 C +ATOM 251 CE3 TRP A 11 6.113 1.444 4.317 1.00 0.44 C +ATOM 252 CZ2 TRP A 11 5.799 3.914 5.649 1.00 0.71 C +ATOM 253 CZ3 TRP A 11 7.097 1.943 5.148 1.00 0.57 C +ATOM 254 CH2 TRP A 11 6.936 3.168 5.806 1.00 0.69 C +ATOM 255 H TRP A 11 2.637 -0.053 0.255 1.00 0.19 H +ATOM 256 HA TRP A 11 4.733 1.647 1.001 1.00 0.20 H +ATOM 257 HB2 TRP A 11 2.404 0.926 2.139 1.00 0.28 H +ATOM 258 HB3 TRP A 11 3.496 -0.090 3.075 1.00 0.24 H +ATOM 259 HD1 TRP A 11 1.982 3.215 3.161 1.00 0.51 H +ATOM 260 HE1 TRP A 11 3.214 4.788 4.789 1.00 0.72 H +ATOM 261 HE3 TRP A 11 6.254 0.500 3.812 1.00 0.37 H +ATOM 262 HZ2 TRP A 11 5.690 4.857 6.163 1.00 0.83 H +ATOM 263 HZ3 TRP A 11 8.009 1.383 5.298 1.00 0.61 H +ATOM 264 HH2 TRP A 11 7.733 3.519 6.446 1.00 0.80 H +ATOM 265 N ARG A 12 5.213 -1.517 1.869 1.00 0.16 N +ATOM 266 CA ARG A 12 6.237 -2.483 2.261 1.00 0.22 C +ATOM 267 C ARG A 12 7.261 -2.696 1.149 1.00 0.21 C +ATOM 268 O ARG A 12 8.452 -2.810 1.412 1.00 0.27 O +ATOM 269 CB ARG A 12 5.598 -3.825 2.644 1.00 0.33 C +ATOM 270 CG ARG A 12 6.610 -4.947 2.849 1.00 1.49 C +ATOM 271 CD ARG A 12 7.580 -4.639 3.983 1.00 1.87 C +ATOM 272 NE ARG A 12 8.816 -5.416 3.876 1.00 2.29 N +ATOM 273 CZ ARG A 12 9.879 -5.237 4.662 1.00 2.74 C +ATOM 274 NH1 ARG A 12 9.807 -4.413 5.702 1.00 3.00 N +ATOM 275 NH2 ARG A 12 11.002 -5.905 4.419 1.00 3.27 N +ATOM 276 H ARG A 12 4.277 -1.813 1.804 1.00 0.19 H +ATOM 277 HA ARG A 12 6.746 -2.086 3.126 1.00 0.27 H +ATOM 278 HB2 ARG A 12 5.045 -3.698 3.564 1.00 0.95 H +ATOM 279 HB3 ARG A 12 4.917 -4.122 1.862 1.00 0.86 H +ATOM 280 HG2 ARG A 12 6.080 -5.857 3.084 1.00 2.00 H +ATOM 281 HG3 ARG A 12 7.168 -5.082 1.935 1.00 2.03 H +ATOM 282 HD2 ARG A 12 7.825 -3.589 3.953 1.00 2.25 H +ATOM 283 HD3 ARG A 12 7.101 -4.868 4.925 1.00 1.95 H +ATOM 284 HE ARG A 12 8.874 -6.076 3.145 1.00 2.50 H +ATOM 285 HH11 ARG A 12 8.946 -3.929 5.907 1.00 2.91 H +ATOM 286 HH12 ARG A 12 10.616 -4.253 6.278 1.00 3.51 H +ATOM 287 HH21 ARG A 12 11.046 -6.551 3.641 1.00 3.44 H +ATOM 288 HH22 ARG A 12 11.811 -5.763 4.991 1.00 3.66 H +ATOM 289 N ARG A 13 6.793 -2.741 -0.087 1.00 0.18 N +ATOM 290 CA ARG A 13 7.645 -3.031 -1.214 1.00 0.22 C +ATOM 291 C ARG A 13 8.603 -1.876 -1.507 1.00 0.21 C +ATOM 292 O ARG A 13 9.821 -2.050 -1.491 1.00 0.25 O +ATOM 293 CB ARG A 13 6.774 -3.322 -2.432 1.00 0.28 C +ATOM 294 CG ARG A 13 7.568 -3.546 -3.692 1.00 0.93 C +ATOM 295 CD ARG A 13 6.659 -3.736 -4.891 1.00 1.38 C +ATOM 296 NE ARG A 13 7.419 -3.889 -6.126 1.00 1.86 N +ATOM 297 CZ ARG A 13 6.988 -3.500 -7.320 1.00 2.76 C +ATOM 298 NH1 ARG A 13 5.795 -2.926 -7.446 1.00 3.47 N +ATOM 299 NH2 ARG A 13 7.756 -3.691 -8.385 1.00 3.35 N +ATOM 300 H ARG A 13 5.851 -2.562 -0.252 1.00 0.17 H +ATOM 301 HA ARG A 13 8.222 -3.908 -0.979 1.00 0.28 H +ATOM 302 HB2 ARG A 13 6.191 -4.209 -2.238 1.00 0.66 H +ATOM 303 HB3 ARG A 13 6.107 -2.489 -2.592 1.00 0.82 H +ATOM 304 HG2 ARG A 13 8.197 -2.686 -3.856 1.00 1.57 H +ATOM 305 HG3 ARG A 13 8.175 -4.425 -3.564 1.00 1.64 H +ATOM 306 HD2 ARG A 13 6.063 -4.621 -4.733 1.00 2.01 H +ATOM 307 HD3 ARG A 13 6.010 -2.879 -4.980 1.00 1.74 H +ATOM 308 HE ARG A 13 8.316 -4.310 -6.059 1.00 1.99 H +ATOM 309 HH11 ARG A 13 5.216 -2.786 -6.642 1.00 3.38 H +ATOM 310 HH12 ARG A 13 5.471 -2.617 -8.351 1.00 4.31 H +ATOM 311 HH21 ARG A 13 8.657 -4.127 -8.285 1.00 3.32 H +ATOM 312 HH22 ARG A 13 7.444 -3.404 -9.299 1.00 4.06 H +ATOM 313 N TRP A 14 8.047 -0.705 -1.788 1.00 0.20 N +ATOM 314 CA TRP A 14 8.846 0.430 -2.232 1.00 0.24 C +ATOM 315 C TRP A 14 9.644 1.059 -1.087 1.00 0.21 C +ATOM 316 O TRP A 14 10.863 1.220 -1.179 1.00 0.27 O +ATOM 317 CB TRP A 14 7.952 1.480 -2.886 1.00 0.31 C +ATOM 318 CG TRP A 14 8.702 2.441 -3.759 1.00 0.42 C +ATOM 319 CD1 TRP A 14 9.133 2.214 -5.030 1.00 0.54 C +ATOM 320 CD2 TRP A 14 9.101 3.778 -3.437 1.00 0.48 C +ATOM 321 NE1 TRP A 14 9.786 3.321 -5.513 1.00 0.64 N +ATOM 322 CE2 TRP A 14 9.772 4.299 -4.557 1.00 0.60 C +ATOM 323 CE3 TRP A 14 8.951 4.580 -2.312 1.00 0.49 C +ATOM 324 CZ2 TRP A 14 10.296 5.587 -4.579 1.00 0.70 C +ATOM 325 CZ3 TRP A 14 9.469 5.860 -2.333 1.00 0.62 C +ATOM 326 CH2 TRP A 14 10.132 6.354 -3.463 1.00 0.71 C +ATOM 327 H TRP A 14 7.075 -0.596 -1.681 1.00 0.19 H +ATOM 328 HA TRP A 14 9.541 0.067 -2.968 1.00 0.30 H +ATOM 329 HB2 TRP A 14 7.214 0.981 -3.494 1.00 0.37 H +ATOM 330 HB3 TRP A 14 7.454 2.048 -2.116 1.00 0.26 H +ATOM 331 HD1 TRP A 14 8.989 1.287 -5.561 1.00 0.59 H +ATOM 332 HE1 TRP A 14 10.191 3.399 -6.406 1.00 0.74 H +ATOM 333 HE3 TRP A 14 8.441 4.215 -1.432 1.00 0.44 H +ATOM 334 HZ2 TRP A 14 10.809 5.982 -5.445 1.00 0.80 H +ATOM 335 HZ3 TRP A 14 9.359 6.498 -1.469 1.00 0.67 H +ATOM 336 HH2 TRP A 14 10.520 7.361 -3.436 1.00 0.80 H +ATOM 337 N ARG A 15 8.947 1.424 -0.018 1.00 0.20 N +ATOM 338 CA ARG A 15 9.556 2.175 1.078 1.00 0.22 C +ATOM 339 C ARG A 15 10.472 1.319 1.946 1.00 0.26 C +ATOM 340 O ARG A 15 11.443 1.825 2.510 1.00 0.44 O +ATOM 341 CB ARG A 15 8.491 2.838 1.957 1.00 0.41 C +ATOM 342 CG ARG A 15 7.897 4.102 1.362 1.00 0.57 C +ATOM 343 CD ARG A 15 6.819 3.799 0.336 1.00 0.40 C +ATOM 344 NE ARG A 15 6.376 5.010 -0.360 1.00 0.46 N +ATOM 345 CZ ARG A 15 5.554 5.916 0.165 1.00 0.82 C +ATOM 346 NH1 ARG A 15 5.053 5.745 1.384 1.00 1.35 N +ATOM 347 NH2 ARG A 15 5.222 6.997 -0.534 1.00 0.88 N +ATOM 348 H ARG A 15 8.006 1.167 0.041 1.00 0.25 H +ATOM 349 HA ARG A 15 10.156 2.953 0.633 1.00 0.28 H +ATOM 350 HB2 ARG A 15 7.688 2.134 2.121 1.00 0.94 H +ATOM 351 HB3 ARG A 15 8.935 3.086 2.905 1.00 1.01 H +ATOM 352 HG2 ARG A 15 7.465 4.692 2.154 1.00 1.12 H +ATOM 353 HG3 ARG A 15 8.687 4.664 0.884 1.00 1.13 H +ATOM 354 HD2 ARG A 15 7.216 3.104 -0.390 1.00 0.45 H +ATOM 355 HD3 ARG A 15 5.976 3.355 0.842 1.00 0.45 H +ATOM 356 HE ARG A 15 6.719 5.151 -1.273 1.00 0.63 H +ATOM 357 HH11 ARG A 15 5.287 4.935 1.919 1.00 1.40 H +ATOM 358 HH12 ARG A 15 4.432 6.444 1.779 1.00 1.76 H +ATOM 359 HH21 ARG A 15 5.586 7.137 -1.459 1.00 0.77 H +ATOM 360 HH22 ARG A 15 4.613 7.690 -0.134 1.00 1.22 H +ATOM 361 N ARG A 16 10.158 0.040 2.084 1.00 0.40 N +ATOM 362 CA ARG A 16 10.945 -0.828 2.944 1.00 0.55 C +ATOM 363 C ARG A 16 11.879 -1.705 2.122 1.00 1.46 C +ATOM 364 O ARG A 16 11.522 -2.866 1.836 1.00 2.20 O +ATOM 365 CB ARG A 16 10.029 -1.681 3.831 1.00 1.14 C +ATOM 366 CG ARG A 16 9.188 -0.866 4.807 1.00 2.07 C +ATOM 367 CD ARG A 16 10.032 -0.175 5.874 1.00 2.76 C +ATOM 368 NE ARG A 16 10.957 0.800 5.296 1.00 3.02 N +ATOM 369 CZ ARG A 16 11.825 1.521 5.994 1.00 3.81 C +ATOM 370 NH1 ARG A 16 11.830 1.454 7.323 1.00 4.43 N +ATOM 371 NH2 ARG A 16 12.674 2.322 5.359 1.00 4.37 N +ATOM 372 OXT ARG A 16 12.976 -1.228 1.765 1.00 2.24 O +ATOM 373 H ARG A 16 9.398 -0.329 1.588 1.00 0.55 H +ATOM 374 HA ARG A 16 11.546 -0.192 3.583 1.00 1.33 H +ATOM 375 HB2 ARG A 16 9.359 -2.241 3.197 1.00 1.66 H +ATOM 376 HB3 ARG A 16 10.637 -2.376 4.400 1.00 1.64 H +ATOM 377 HG2 ARG A 16 8.650 -0.112 4.251 1.00 2.52 H +ATOM 378 HG3 ARG A 16 8.483 -1.526 5.292 1.00 2.56 H +ATOM 379 HD2 ARG A 16 9.371 0.335 6.563 1.00 3.30 H +ATOM 380 HD3 ARG A 16 10.601 -0.921 6.407 1.00 3.15 H +ATOM 381 HE ARG A 16 10.945 0.900 4.316 1.00 2.98 H +ATOM 382 HH11 ARG A 16 11.171 0.860 7.799 1.00 4.37 H +ATOM 383 HH12 ARG A 16 12.494 1.987 7.860 1.00 5.17 H +ATOM 384 HH21 ARG A 16 12.659 2.380 4.357 1.00 4.32 H +ATOM 385 HH22 ARG A 16 13.345 2.876 5.879 1.00 5.07 H +TER 386 ARG A 16 +ENDMDL +MODEL 8 +ATOM 1 N ARG A 1 -11.954 1.066 1.892 1.00 0.94 N +ATOM 2 CA ARG A 1 -10.979 1.765 1.073 1.00 0.72 C +ATOM 3 C ARG A 1 -10.126 0.745 0.333 1.00 0.60 C +ATOM 4 O ARG A 1 -9.035 0.396 0.775 1.00 0.64 O +ATOM 5 CB ARG A 1 -10.098 2.677 1.932 1.00 1.24 C +ATOM 6 CG ARG A 1 -10.868 3.766 2.657 1.00 1.81 C +ATOM 7 CD ARG A 1 -9.966 4.571 3.576 1.00 2.42 C +ATOM 8 NE ARG A 1 -10.704 5.625 4.260 1.00 3.29 N +ATOM 9 CZ ARG A 1 -10.547 5.947 5.541 1.00 4.10 C +ATOM 10 NH1 ARG A 1 -9.664 5.301 6.295 1.00 4.22 N +ATOM 11 NH2 ARG A 1 -11.284 6.917 6.066 1.00 5.01 N +ATOM 12 H ARG A 1 -11.753 0.892 2.846 1.00 1.36 H +ATOM 13 HA ARG A 1 -11.520 2.364 0.356 1.00 0.90 H +ATOM 14 HB2 ARG A 1 -9.592 2.076 2.674 1.00 1.52 H +ATOM 15 HB3 ARG A 1 -9.363 3.148 1.299 1.00 1.64 H +ATOM 16 HG2 ARG A 1 -11.311 4.430 1.930 1.00 2.17 H +ATOM 17 HG3 ARG A 1 -11.646 3.307 3.251 1.00 2.13 H +ATOM 18 HD2 ARG A 1 -9.537 3.907 4.311 1.00 2.35 H +ATOM 19 HD3 ARG A 1 -9.177 5.018 2.988 1.00 2.78 H +ATOM 20 HE ARG A 1 -11.367 6.131 3.726 1.00 3.48 H +ATOM 21 HH11 ARG A 1 -9.104 4.560 5.905 1.00 3.76 H +ATOM 22 HH12 ARG A 1 -9.549 5.554 7.262 1.00 4.94 H +ATOM 23 HH21 ARG A 1 -11.956 7.404 5.498 1.00 5.16 H +ATOM 24 HH22 ARG A 1 -11.182 7.165 7.036 1.00 5.67 H +ATOM 25 N ARG A 2 -10.652 0.251 -0.784 1.00 0.54 N +ATOM 26 CA ARG A 2 -10.034 -0.852 -1.520 1.00 0.51 C +ATOM 27 C ARG A 2 -8.609 -0.544 -1.977 1.00 0.39 C +ATOM 28 O ARG A 2 -7.787 -1.444 -2.105 1.00 0.41 O +ATOM 29 CB ARG A 2 -10.927 -1.277 -2.698 1.00 0.59 C +ATOM 30 CG ARG A 2 -11.508 -0.133 -3.531 1.00 1.27 C +ATOM 31 CD ARG A 2 -10.489 0.476 -4.476 1.00 2.13 C +ATOM 32 NE ARG A 2 -11.090 1.471 -5.368 1.00 2.80 N +ATOM 33 CZ ARG A 2 -10.531 1.886 -6.506 1.00 3.73 C +ATOM 34 NH1 ARG A 2 -9.361 1.398 -6.887 1.00 4.17 N +ATOM 35 NH2 ARG A 2 -11.146 2.777 -7.275 1.00 4.44 N +ATOM 36 H ARG A 2 -11.492 0.636 -1.121 1.00 0.59 H +ATOM 37 HA ARG A 2 -9.977 -1.683 -0.837 1.00 0.60 H +ATOM 38 HB2 ARG A 2 -10.344 -1.902 -3.356 1.00 0.87 H +ATOM 39 HB3 ARG A 2 -11.749 -1.861 -2.309 1.00 1.05 H +ATOM 40 HG2 ARG A 2 -12.333 -0.511 -4.111 1.00 1.80 H +ATOM 41 HG3 ARG A 2 -11.865 0.638 -2.861 1.00 1.44 H +ATOM 42 HD2 ARG A 2 -9.715 0.953 -3.889 1.00 2.58 H +ATOM 43 HD3 ARG A 2 -10.052 -0.315 -5.069 1.00 2.36 H +ATOM 44 HE ARG A 2 -11.963 1.839 -5.111 1.00 2.78 H +ATOM 45 HH11 ARG A 2 -8.891 0.720 -6.324 1.00 3.85 H +ATOM 46 HH12 ARG A 2 -8.946 1.700 -7.756 1.00 4.97 H +ATOM 47 HH21 ARG A 2 -12.050 3.143 -7.010 1.00 4.37 H +ATOM 48 HH22 ARG A 2 -10.709 3.105 -8.117 1.00 5.17 H +ATOM 49 N TRP A 3 -8.318 0.720 -2.223 1.00 0.34 N +ATOM 50 CA TRP A 3 -6.989 1.112 -2.685 1.00 0.29 C +ATOM 51 C TRP A 3 -5.945 1.020 -1.570 1.00 0.22 C +ATOM 52 O TRP A 3 -4.771 0.767 -1.843 1.00 0.20 O +ATOM 53 CB TRP A 3 -7.010 2.509 -3.308 1.00 0.42 C +ATOM 54 CG TRP A 3 -7.689 3.541 -2.467 1.00 0.53 C +ATOM 55 CD1 TRP A 3 -9.032 3.740 -2.334 1.00 0.60 C +ATOM 56 CD2 TRP A 3 -7.053 4.532 -1.659 1.00 0.65 C +ATOM 57 NE1 TRP A 3 -9.271 4.787 -1.485 1.00 0.75 N +ATOM 58 CE2 TRP A 3 -8.071 5.295 -1.059 1.00 0.79 C +ATOM 59 CE3 TRP A 3 -5.715 4.851 -1.382 1.00 0.67 C +ATOM 60 CZ2 TRP A 3 -7.797 6.356 -0.198 1.00 0.95 C +ATOM 61 CZ3 TRP A 3 -5.446 5.904 -0.527 1.00 0.83 C +ATOM 62 CH2 TRP A 3 -6.481 6.645 0.056 1.00 0.96 C +ATOM 63 H TRP A 3 -9.006 1.404 -2.089 1.00 0.39 H +ATOM 64 HA TRP A 3 -6.707 0.403 -3.456 1.00 0.31 H +ATOM 65 HB2 TRP A 3 -5.994 2.833 -3.468 1.00 0.44 H +ATOM 66 HB3 TRP A 3 -7.522 2.465 -4.258 1.00 0.48 H +ATOM 67 HD1 TRP A 3 -9.786 3.146 -2.828 1.00 0.57 H +ATOM 68 HE1 TRP A 3 -10.166 5.127 -1.229 1.00 0.84 H +ATOM 69 HE3 TRP A 3 -4.902 4.285 -1.821 1.00 0.59 H +ATOM 70 HZ2 TRP A 3 -8.585 6.936 0.261 1.00 1.06 H +ATOM 71 HZ3 TRP A 3 -4.421 6.165 -0.300 1.00 0.86 H +ATOM 72 HH2 TRP A 3 -6.224 7.462 0.717 1.00 1.10 H +ATOM 73 N ARG A 4 -6.367 1.228 -0.325 1.00 0.25 N +ATOM 74 CA ARG A 4 -5.463 1.111 0.821 1.00 0.26 C +ATOM 75 C ARG A 4 -4.928 -0.312 0.944 1.00 0.20 C +ATOM 76 O ARG A 4 -3.837 -0.530 1.465 1.00 0.22 O +ATOM 77 CB ARG A 4 -6.141 1.540 2.126 1.00 0.39 C +ATOM 78 CG ARG A 4 -6.473 3.024 2.173 1.00 0.93 C +ATOM 79 CD ARG A 4 -5.219 3.893 2.112 1.00 0.78 C +ATOM 80 NE ARG A 4 -4.435 3.854 3.347 1.00 0.93 N +ATOM 81 CZ ARG A 4 -3.672 4.869 3.766 1.00 1.11 C +ATOM 82 NH1 ARG A 4 -3.638 6.000 3.071 1.00 1.09 N +ATOM 83 NH2 ARG A 4 -2.949 4.756 4.875 1.00 1.91 N +ATOM 84 H ARG A 4 -7.307 1.456 -0.172 1.00 0.33 H +ATOM 85 HA ARG A 4 -4.628 1.766 0.634 1.00 0.29 H +ATOM 86 HB2 ARG A 4 -7.055 0.979 2.246 1.00 0.67 H +ATOM 87 HB3 ARG A 4 -5.478 1.315 2.950 1.00 0.82 H +ATOM 88 HG2 ARG A 4 -7.109 3.269 1.333 1.00 1.41 H +ATOM 89 HG3 ARG A 4 -6.999 3.235 3.093 1.00 1.45 H +ATOM 90 HD2 ARG A 4 -4.598 3.546 1.300 1.00 1.29 H +ATOM 91 HD3 ARG A 4 -5.513 4.914 1.918 1.00 1.06 H +ATOM 92 HE ARG A 4 -4.468 3.029 3.884 1.00 1.46 H +ATOM 93 HH11 ARG A 4 -4.182 6.095 2.239 1.00 1.34 H +ATOM 94 HH12 ARG A 4 -3.063 6.767 3.378 1.00 1.35 H +ATOM 95 HH21 ARG A 4 -2.965 3.906 5.410 1.00 2.46 H +ATOM 96 HH22 ARG A 4 -2.379 5.529 5.184 1.00 2.10 H +ATOM 97 N ARG A 5 -5.722 -1.269 0.483 1.00 0.22 N +ATOM 98 CA ARG A 5 -5.304 -2.665 0.410 1.00 0.29 C +ATOM 99 C ARG A 5 -3.992 -2.782 -0.363 1.00 0.25 C +ATOM 100 O ARG A 5 -3.013 -3.343 0.127 1.00 0.32 O +ATOM 101 CB ARG A 5 -6.398 -3.479 -0.284 1.00 0.37 C +ATOM 102 CG ARG A 5 -6.141 -4.974 -0.340 1.00 0.90 C +ATOM 103 CD ARG A 5 -7.265 -5.673 -1.084 1.00 0.89 C +ATOM 104 NE ARG A 5 -7.149 -7.129 -1.061 1.00 1.49 N +ATOM 105 CZ ARG A 5 -8.156 -7.945 -1.365 1.00 1.77 C +ATOM 106 NH1 ARG A 5 -9.332 -7.433 -1.714 1.00 1.45 N +ATOM 107 NH2 ARG A 5 -7.980 -9.258 -1.324 1.00 2.70 N +ATOM 108 H ARG A 5 -6.617 -1.027 0.175 1.00 0.24 H +ATOM 109 HA ARG A 5 -5.162 -3.034 1.415 1.00 0.37 H +ATOM 110 HB2 ARG A 5 -7.329 -3.320 0.240 1.00 0.92 H +ATOM 111 HB3 ARG A 5 -6.504 -3.118 -1.298 1.00 0.72 H +ATOM 112 HG2 ARG A 5 -5.209 -5.151 -0.859 1.00 1.29 H +ATOM 113 HG3 ARG A 5 -6.083 -5.363 0.666 1.00 1.42 H +ATOM 114 HD2 ARG A 5 -8.206 -5.396 -0.630 1.00 1.52 H +ATOM 115 HD3 ARG A 5 -7.255 -5.342 -2.111 1.00 0.93 H +ATOM 116 HE ARG A 5 -6.276 -7.517 -0.812 1.00 2.03 H +ATOM 117 HH11 ARG A 5 -9.454 -6.440 -1.751 1.00 1.37 H +ATOM 118 HH12 ARG A 5 -10.106 -8.036 -1.938 1.00 1.73 H +ATOM 119 HH21 ARG A 5 -7.079 -9.636 -1.061 1.00 3.26 H +ATOM 120 HH22 ARG A 5 -8.726 -9.877 -1.561 1.00 2.93 H +ATOM 121 N TRP A 6 -3.978 -2.235 -1.573 1.00 0.21 N +ATOM 122 CA TRP A 6 -2.787 -2.261 -2.416 1.00 0.27 C +ATOM 123 C TRP A 6 -1.735 -1.294 -1.888 1.00 0.22 C +ATOM 124 O TRP A 6 -0.537 -1.501 -2.072 1.00 0.26 O +ATOM 125 CB TRP A 6 -3.140 -1.906 -3.858 1.00 0.34 C +ATOM 126 CG TRP A 6 -4.323 -2.661 -4.369 1.00 0.35 C +ATOM 127 CD1 TRP A 6 -4.495 -4.013 -4.384 1.00 0.43 C +ATOM 128 CD2 TRP A 6 -5.501 -2.101 -4.942 1.00 0.34 C +ATOM 129 NE1 TRP A 6 -5.714 -4.323 -4.923 1.00 0.49 N +ATOM 130 CE2 TRP A 6 -6.353 -3.168 -5.279 1.00 0.43 C +ATOM 131 CE3 TRP A 6 -5.919 -0.796 -5.199 1.00 0.32 C +ATOM 132 CZ2 TRP A 6 -7.601 -2.967 -5.863 1.00 0.48 C +ATOM 133 CZ3 TRP A 6 -7.154 -0.598 -5.778 1.00 0.37 C +ATOM 134 CH2 TRP A 6 -7.983 -1.677 -6.105 1.00 0.44 C +ATOM 135 H TRP A 6 -4.791 -1.802 -1.910 1.00 0.19 H +ATOM 136 HA TRP A 6 -2.385 -3.264 -2.388 1.00 0.34 H +ATOM 137 HB2 TRP A 6 -3.364 -0.851 -3.922 1.00 0.34 H +ATOM 138 HB3 TRP A 6 -2.296 -2.128 -4.495 1.00 0.47 H +ATOM 139 HD1 TRP A 6 -3.772 -4.721 -4.016 1.00 0.48 H +ATOM 140 HE1 TRP A 6 -6.069 -5.232 -5.033 1.00 0.58 H +ATOM 141 HE3 TRP A 6 -5.293 0.050 -4.946 1.00 0.32 H +ATOM 142 HZ2 TRP A 6 -8.254 -3.788 -6.119 1.00 0.57 H +ATOM 143 HZ3 TRP A 6 -7.495 0.406 -5.985 1.00 0.39 H +ATOM 144 HH2 TRP A 6 -8.943 -1.471 -6.557 1.00 0.50 H +ATOM 145 N TRP A 7 -2.205 -0.217 -1.262 1.00 0.17 N +ATOM 146 CA TRP A 7 -1.336 0.744 -0.584 1.00 0.18 C +ATOM 147 C TRP A 7 -0.332 0.028 0.327 1.00 0.16 C +ATOM 148 O TRP A 7 0.838 0.403 0.387 1.00 0.19 O +ATOM 149 CB TRP A 7 -2.201 1.708 0.234 1.00 0.20 C +ATOM 150 CG TRP A 7 -1.457 2.834 0.882 1.00 0.34 C +ATOM 151 CD1 TRP A 7 -0.808 2.817 2.083 1.00 0.44 C +ATOM 152 CD2 TRP A 7 -1.323 4.161 0.374 1.00 0.51 C +ATOM 153 NE1 TRP A 7 -0.274 4.056 2.348 1.00 0.62 N +ATOM 154 CE2 TRP A 7 -0.578 4.897 1.312 1.00 0.65 C +ATOM 155 CE3 TRP A 7 -1.763 4.795 -0.790 1.00 0.62 C +ATOM 156 CZ2 TRP A 7 -0.264 6.238 1.122 1.00 0.85 C +ATOM 157 CZ3 TRP A 7 -1.449 6.129 -0.981 1.00 0.81 C +ATOM 158 CH2 TRP A 7 -0.705 6.837 -0.028 1.00 0.91 C +ATOM 159 H TRP A 7 -3.176 -0.049 -1.276 1.00 0.17 H +ATOM 160 HA TRP A 7 -0.802 1.304 -1.338 1.00 0.25 H +ATOM 161 HB2 TRP A 7 -2.947 2.138 -0.415 1.00 0.28 H +ATOM 162 HB3 TRP A 7 -2.698 1.150 1.014 1.00 0.20 H +ATOM 163 HD1 TRP A 7 -0.732 1.948 2.720 1.00 0.45 H +ATOM 164 HE1 TRP A 7 0.238 4.301 3.147 1.00 0.74 H +ATOM 165 HE3 TRP A 7 -2.336 4.258 -1.532 1.00 0.59 H +ATOM 166 HZ2 TRP A 7 0.304 6.797 1.850 1.00 0.97 H +ATOM 167 HZ3 TRP A 7 -1.779 6.639 -1.873 1.00 0.92 H +ATOM 168 HH2 TRP A 7 -0.486 7.878 -0.216 1.00 1.07 H +ATOM 169 N ARG A 8 -0.796 -1.014 1.018 1.00 0.16 N +ATOM 170 CA ARG A 8 0.058 -1.788 1.918 1.00 0.22 C +ATOM 171 C ARG A 8 1.169 -2.486 1.134 1.00 0.20 C +ATOM 172 O ARG A 8 2.295 -2.631 1.616 1.00 0.23 O +ATOM 173 CB ARG A 8 -0.768 -2.839 2.669 1.00 0.36 C +ATOM 174 CG ARG A 8 -2.000 -2.287 3.370 1.00 0.93 C +ATOM 175 CD ARG A 8 -2.825 -3.407 3.984 1.00 1.11 C +ATOM 176 NE ARG A 8 -4.156 -2.958 4.395 1.00 1.71 N +ATOM 177 CZ ARG A 8 -5.246 -3.723 4.329 1.00 2.38 C +ATOM 178 NH1 ARG A 8 -5.147 -4.992 3.946 1.00 2.43 N +ATOM 179 NH2 ARG A 8 -6.426 -3.227 4.672 1.00 3.45 N +ATOM 180 H ARG A 8 -1.740 -1.264 0.923 1.00 0.16 H +ATOM 181 HA ARG A 8 0.503 -1.108 2.626 1.00 0.28 H +ATOM 182 HB2 ARG A 8 -1.091 -3.591 1.966 1.00 1.17 H +ATOM 183 HB3 ARG A 8 -0.138 -3.306 3.411 1.00 1.04 H +ATOM 184 HG2 ARG A 8 -1.690 -1.609 4.150 1.00 1.48 H +ATOM 185 HG3 ARG A 8 -2.606 -1.759 2.647 1.00 1.64 H +ATOM 186 HD2 ARG A 8 -2.937 -4.196 3.251 1.00 1.70 H +ATOM 187 HD3 ARG A 8 -2.301 -3.795 4.846 1.00 1.56 H +ATOM 188 HE ARG A 8 -4.242 -2.030 4.719 1.00 2.17 H +ATOM 189 HH11 ARG A 8 -4.250 -5.380 3.707 1.00 2.23 H +ATOM 190 HH12 ARG A 8 -5.970 -5.575 3.892 1.00 3.07 H +ATOM 191 HH21 ARG A 8 -6.498 -2.274 4.988 1.00 3.87 H +ATOM 192 HH22 ARG A 8 -7.256 -3.797 4.608 1.00 4.01 H +ATOM 193 N ARG A 9 0.834 -2.910 -0.078 1.00 0.21 N +ATOM 194 CA ARG A 9 1.781 -3.578 -0.962 1.00 0.25 C +ATOM 195 C ARG A 9 2.830 -2.578 -1.433 1.00 0.21 C +ATOM 196 O ARG A 9 4.029 -2.847 -1.384 1.00 0.26 O +ATOM 197 CB ARG A 9 1.033 -4.165 -2.161 1.00 0.33 C +ATOM 198 CG ARG A 9 1.875 -5.058 -3.051 1.00 1.21 C +ATOM 199 CD ARG A 9 1.092 -5.464 -4.288 1.00 1.46 C +ATOM 200 NE ARG A 9 1.695 -6.594 -4.992 1.00 2.08 N +ATOM 201 CZ ARG A 9 1.261 -7.051 -6.165 1.00 2.69 C +ATOM 202 NH1 ARG A 9 0.317 -6.393 -6.826 1.00 2.94 N +ATOM 203 NH2 ARG A 9 1.790 -8.149 -6.696 1.00 3.48 N +ATOM 204 H ARG A 9 -0.080 -2.754 -0.397 1.00 0.22 H +ATOM 205 HA ARG A 9 2.263 -4.373 -0.410 1.00 0.30 H +ATOM 206 HB2 ARG A 9 0.198 -4.745 -1.795 1.00 0.74 H +ATOM 207 HB3 ARG A 9 0.656 -3.350 -2.762 1.00 0.93 H +ATOM 208 HG2 ARG A 9 2.757 -4.513 -3.355 1.00 1.80 H +ATOM 209 HG3 ARG A 9 2.157 -5.943 -2.501 1.00 1.91 H +ATOM 210 HD2 ARG A 9 0.091 -5.733 -3.989 1.00 1.70 H +ATOM 211 HD3 ARG A 9 1.049 -4.619 -4.959 1.00 1.90 H +ATOM 212 HE ARG A 9 2.448 -7.062 -4.542 1.00 2.43 H +ATOM 213 HH11 ARG A 9 -0.066 -5.543 -6.450 1.00 2.79 H +ATOM 214 HH12 ARG A 9 -0.033 -6.754 -7.701 1.00 3.57 H +ATOM 215 HH21 ARG A 9 2.528 -8.647 -6.212 1.00 3.76 H +ATOM 216 HH22 ARG A 9 1.459 -8.494 -7.578 1.00 3.99 H +ATOM 217 N TRP A 10 2.354 -1.420 -1.876 1.00 0.18 N +ATOM 218 CA TRP A 10 3.219 -0.314 -2.265 1.00 0.18 C +ATOM 219 C TRP A 10 4.161 0.065 -1.119 1.00 0.15 C +ATOM 220 O TRP A 10 5.364 0.233 -1.319 1.00 0.15 O +ATOM 221 CB TRP A 10 2.354 0.884 -2.685 1.00 0.24 C +ATOM 222 CG TRP A 10 3.008 2.214 -2.471 1.00 0.27 C +ATOM 223 CD1 TRP A 10 2.753 3.094 -1.461 1.00 0.32 C +ATOM 224 CD2 TRP A 10 4.023 2.815 -3.281 1.00 0.33 C +ATOM 225 NE1 TRP A 10 3.548 4.206 -1.591 1.00 0.39 N +ATOM 226 CE2 TRP A 10 4.336 4.058 -2.702 1.00 0.39 C +ATOM 227 CE3 TRP A 10 4.701 2.423 -4.440 1.00 0.39 C +ATOM 228 CZ2 TRP A 10 5.295 4.910 -3.243 1.00 0.48 C +ATOM 229 CZ3 TRP A 10 5.650 3.271 -4.976 1.00 0.49 C +ATOM 230 CH2 TRP A 10 5.940 4.504 -4.377 1.00 0.53 C +ATOM 231 H TRP A 10 1.378 -1.303 -1.946 1.00 0.20 H +ATOM 232 HA TRP A 10 3.809 -0.633 -3.111 1.00 0.19 H +ATOM 233 HB2 TRP A 10 2.121 0.800 -3.740 1.00 0.29 H +ATOM 234 HB3 TRP A 10 1.434 0.869 -2.119 1.00 0.27 H +ATOM 235 HD1 TRP A 10 2.034 2.922 -0.679 1.00 0.36 H +ATOM 236 HE1 TRP A 10 3.549 4.980 -0.990 1.00 0.45 H +ATOM 237 HE3 TRP A 10 4.492 1.476 -4.913 1.00 0.39 H +ATOM 238 HZ2 TRP A 10 5.536 5.859 -2.785 1.00 0.54 H +ATOM 239 HZ3 TRP A 10 6.182 2.984 -5.872 1.00 0.57 H +ATOM 240 HH2 TRP A 10 6.691 5.135 -4.829 1.00 0.62 H +ATOM 241 N TRP A 11 3.594 0.173 0.075 1.00 0.16 N +ATOM 242 CA TRP A 11 4.341 0.547 1.268 1.00 0.17 C +ATOM 243 C TRP A 11 5.488 -0.429 1.534 1.00 0.14 C +ATOM 244 O TRP A 11 6.647 -0.029 1.636 1.00 0.18 O +ATOM 245 CB TRP A 11 3.389 0.582 2.468 1.00 0.23 C +ATOM 246 CG TRP A 11 3.610 1.746 3.382 1.00 0.36 C +ATOM 247 CD1 TRP A 11 2.773 2.807 3.571 1.00 0.48 C +ATOM 248 CD2 TRP A 11 4.740 1.968 4.230 1.00 0.43 C +ATOM 249 NE1 TRP A 11 3.314 3.677 4.490 1.00 0.61 N +ATOM 250 CE2 TRP A 11 4.522 3.181 4.908 1.00 0.58 C +ATOM 251 CE3 TRP A 11 5.915 1.253 4.480 1.00 0.44 C +ATOM 252 CZ2 TRP A 11 5.440 3.694 5.823 1.00 0.71 C +ATOM 253 CZ3 TRP A 11 6.825 1.762 5.387 1.00 0.57 C +ATOM 254 CH2 TRP A 11 6.583 2.972 6.052 1.00 0.69 C +ATOM 255 H TRP A 11 2.627 0.010 0.153 1.00 0.19 H +ATOM 256 HA TRP A 11 4.752 1.533 1.115 1.00 0.20 H +ATOM 257 HB2 TRP A 11 2.371 0.636 2.109 1.00 0.28 H +ATOM 258 HB3 TRP A 11 3.513 -0.323 3.044 1.00 0.24 H +ATOM 259 HD1 TRP A 11 1.825 2.930 3.067 1.00 0.51 H +ATOM 260 HE1 TRP A 11 2.900 4.515 4.796 1.00 0.72 H +ATOM 261 HE3 TRP A 11 6.118 0.322 3.971 1.00 0.37 H +ATOM 262 HZ2 TRP A 11 5.269 4.625 6.341 1.00 0.83 H +ATOM 263 HZ3 TRP A 11 7.740 1.222 5.594 1.00 0.61 H +ATOM 264 HH2 TRP A 11 7.322 3.335 6.753 1.00 0.80 H +ATOM 265 N ARG A 12 5.157 -1.711 1.622 1.00 0.16 N +ATOM 266 CA ARG A 12 6.142 -2.729 1.977 1.00 0.22 C +ATOM 267 C ARG A 12 7.209 -2.888 0.898 1.00 0.21 C +ATOM 268 O ARG A 12 8.359 -3.196 1.203 1.00 0.27 O +ATOM 269 CB ARG A 12 5.464 -4.077 2.247 1.00 0.33 C +ATOM 270 CG ARG A 12 4.698 -4.645 1.064 1.00 1.49 C +ATOM 271 CD ARG A 12 4.121 -6.016 1.384 1.00 1.87 C +ATOM 272 NE ARG A 12 3.280 -5.988 2.580 1.00 2.29 N +ATOM 273 CZ ARG A 12 2.854 -7.079 3.211 1.00 2.74 C +ATOM 274 NH1 ARG A 12 3.164 -8.283 2.738 1.00 3.00 N +ATOM 275 NH2 ARG A 12 2.126 -6.961 4.313 1.00 3.27 N +ATOM 276 H ARG A 12 4.229 -1.974 1.448 1.00 0.19 H +ATOM 277 HA ARG A 12 6.623 -2.402 2.887 1.00 0.27 H +ATOM 278 HB2 ARG A 12 6.223 -4.794 2.530 1.00 0.95 H +ATOM 279 HB3 ARG A 12 4.775 -3.958 3.071 1.00 0.86 H +ATOM 280 HG2 ARG A 12 3.890 -3.971 0.814 1.00 2.00 H +ATOM 281 HG3 ARG A 12 5.370 -4.734 0.221 1.00 2.03 H +ATOM 282 HD2 ARG A 12 3.528 -6.350 0.547 1.00 2.25 H +ATOM 283 HD3 ARG A 12 4.938 -6.704 1.546 1.00 1.95 H +ATOM 284 HE ARG A 12 3.040 -5.106 2.939 1.00 2.50 H +ATOM 285 HH11 ARG A 12 3.715 -8.373 1.903 1.00 2.91 H +ATOM 286 HH12 ARG A 12 2.848 -9.113 3.220 1.00 3.51 H +ATOM 287 HH21 ARG A 12 1.894 -6.056 4.668 1.00 3.44 H +ATOM 288 HH22 ARG A 12 1.805 -7.784 4.805 1.00 3.66 H +ATOM 289 N ARG A 13 6.828 -2.700 -0.360 1.00 0.18 N +ATOM 290 CA ARG A 13 7.778 -2.826 -1.460 1.00 0.22 C +ATOM 291 C ARG A 13 8.735 -1.641 -1.530 1.00 0.21 C +ATOM 292 O ARG A 13 9.942 -1.797 -1.363 1.00 0.25 O +ATOM 293 CB ARG A 13 7.051 -2.970 -2.800 1.00 0.28 C +ATOM 294 CG ARG A 13 6.433 -4.344 -3.038 1.00 0.93 C +ATOM 295 CD ARG A 13 7.471 -5.452 -2.940 1.00 1.38 C +ATOM 296 NE ARG A 13 8.663 -5.175 -3.747 1.00 1.86 N +ATOM 297 CZ ARG A 13 9.907 -5.411 -3.328 1.00 2.76 C +ATOM 298 NH1 ARG A 13 10.119 -5.973 -2.142 1.00 3.47 N +ATOM 299 NH2 ARG A 13 10.941 -5.104 -4.099 1.00 3.35 N +ATOM 300 H ARG A 13 5.889 -2.477 -0.553 1.00 0.17 H +ATOM 301 HA ARG A 13 8.359 -3.719 -1.289 1.00 0.28 H +ATOM 302 HB2 ARG A 13 6.260 -2.234 -2.843 1.00 0.66 H +ATOM 303 HB3 ARG A 13 7.752 -2.774 -3.598 1.00 0.82 H +ATOM 304 HG2 ARG A 13 5.668 -4.518 -2.295 1.00 1.57 H +ATOM 305 HG3 ARG A 13 5.991 -4.363 -4.021 1.00 1.64 H +ATOM 306 HD2 ARG A 13 7.766 -5.560 -1.907 1.00 2.01 H +ATOM 307 HD3 ARG A 13 7.024 -6.374 -3.282 1.00 1.74 H +ATOM 308 HE ARG A 13 8.529 -4.779 -4.645 1.00 1.99 H +ATOM 309 HH11 ARG A 13 9.349 -6.230 -1.557 1.00 3.38 H +ATOM 310 HH12 ARG A 13 11.065 -6.125 -1.817 1.00 4.31 H +ATOM 311 HH21 ARG A 13 10.795 -4.691 -5.005 1.00 3.32 H +ATOM 312 HH22 ARG A 13 11.876 -5.284 -3.784 1.00 4.06 H +ATOM 313 N TRP A 14 8.186 -0.463 -1.780 1.00 0.20 N +ATOM 314 CA TRP A 14 9.002 0.707 -2.080 1.00 0.24 C +ATOM 315 C TRP A 14 9.692 1.280 -0.844 1.00 0.21 C +ATOM 316 O TRP A 14 10.895 1.529 -0.855 1.00 0.27 O +ATOM 317 CB TRP A 14 8.142 1.784 -2.735 1.00 0.31 C +ATOM 318 CG TRP A 14 8.938 2.859 -3.414 1.00 0.42 C +ATOM 319 CD1 TRP A 14 9.429 2.821 -4.685 1.00 0.54 C +ATOM 320 CD2 TRP A 14 9.328 4.132 -2.874 1.00 0.48 C +ATOM 321 NE1 TRP A 14 10.112 3.978 -4.967 1.00 0.64 N +ATOM 322 CE2 TRP A 14 10.060 4.802 -3.875 1.00 0.60 C +ATOM 323 CE3 TRP A 14 9.135 4.771 -1.646 1.00 0.49 C +ATOM 324 CZ2 TRP A 14 10.597 6.073 -3.683 1.00 0.70 C +ATOM 325 CZ3 TRP A 14 9.666 6.034 -1.459 1.00 0.62 C +ATOM 326 CH2 TRP A 14 10.388 6.673 -2.473 1.00 0.71 C +ATOM 327 H TRP A 14 7.207 -0.375 -1.761 1.00 0.19 H +ATOM 328 HA TRP A 14 9.759 0.400 -2.781 1.00 0.30 H +ATOM 329 HB2 TRP A 14 7.506 1.324 -3.476 1.00 0.37 H +ATOM 330 HB3 TRP A 14 7.526 2.250 -1.980 1.00 0.26 H +ATOM 331 HD1 TRP A 14 9.302 1.988 -5.356 1.00 0.59 H +ATOM 332 HE1 TRP A 14 10.556 4.183 -5.820 1.00 0.74 H +ATOM 333 HE3 TRP A 14 8.581 4.297 -0.852 1.00 0.44 H +ATOM 334 HZ2 TRP A 14 11.159 6.578 -4.454 1.00 0.80 H +ATOM 335 HZ3 TRP A 14 9.523 6.543 -0.516 1.00 0.67 H +ATOM 336 HH2 TRP A 14 10.787 7.662 -2.282 1.00 0.80 H +ATOM 337 N ARG A 15 8.920 1.501 0.213 1.00 0.20 N +ATOM 338 CA ARG A 15 9.405 2.248 1.369 1.00 0.22 C +ATOM 339 C ARG A 15 10.411 1.475 2.215 1.00 0.26 C +ATOM 340 O ARG A 15 11.306 2.075 2.816 1.00 0.44 O +ATOM 341 CB ARG A 15 8.237 2.708 2.244 1.00 0.41 C +ATOM 342 CG ARG A 15 7.594 4.003 1.774 1.00 0.57 C +ATOM 343 CD ARG A 15 6.691 3.804 0.563 1.00 0.40 C +ATOM 344 NE ARG A 15 6.185 5.080 0.057 1.00 0.46 N +ATOM 345 CZ ARG A 15 5.293 5.837 0.694 1.00 0.82 C +ATOM 346 NH1 ARG A 15 4.741 5.416 1.824 1.00 1.35 N +ATOM 347 NH2 ARG A 15 4.947 7.011 0.186 1.00 0.88 N +ATOM 348 H ARG A 15 8.005 1.149 0.216 1.00 0.25 H +ATOM 349 HA ARG A 15 9.902 3.129 0.988 1.00 0.28 H +ATOM 350 HB2 ARG A 15 7.480 1.936 2.248 1.00 0.94 H +ATOM 351 HB3 ARG A 15 8.593 2.853 3.254 1.00 1.01 H +ATOM 352 HG2 ARG A 15 7.005 4.412 2.581 1.00 1.12 H +ATOM 353 HG3 ARG A 15 8.375 4.699 1.513 1.00 1.13 H +ATOM 354 HD2 ARG A 15 7.257 3.318 -0.218 1.00 0.45 H +ATOM 355 HD3 ARG A 15 5.857 3.177 0.845 1.00 0.45 H +ATOM 356 HE ARG A 15 6.550 5.402 -0.802 1.00 0.63 H +ATOM 357 HH11 ARG A 15 4.987 4.523 2.203 1.00 1.40 H +ATOM 358 HH12 ARG A 15 4.088 6.003 2.320 1.00 1.76 H +ATOM 359 HH21 ARG A 15 5.366 7.330 -0.679 1.00 0.77 H +ATOM 360 HH22 ARG A 15 4.276 7.591 0.654 1.00 1.22 H +ATOM 361 N ARG A 16 10.276 0.159 2.269 1.00 0.40 N +ATOM 362 CA ARG A 16 11.097 -0.641 3.168 1.00 0.55 C +ATOM 363 C ARG A 16 12.448 -0.958 2.542 1.00 1.46 C +ATOM 364 O ARG A 16 13.396 -0.174 2.752 1.00 2.20 O +ATOM 365 CB ARG A 16 10.373 -1.930 3.556 1.00 1.14 C +ATOM 366 CG ARG A 16 9.006 -1.697 4.186 1.00 2.07 C +ATOM 367 CD ARG A 16 8.476 -2.962 4.837 1.00 2.76 C +ATOM 368 NE ARG A 16 9.269 -3.343 6.003 1.00 3.02 N +ATOM 369 CZ ARG A 16 9.291 -4.564 6.524 1.00 3.81 C +ATOM 370 NH1 ARG A 16 8.571 -5.537 5.984 1.00 4.43 N +ATOM 371 NH2 ARG A 16 10.039 -4.818 7.585 1.00 4.37 N +ATOM 372 OXT ARG A 16 12.566 -1.987 1.850 1.00 2.24 O +ATOM 373 H ARG A 16 9.634 -0.285 1.678 1.00 0.55 H +ATOM 374 HA ARG A 16 11.262 -0.056 4.061 1.00 1.33 H +ATOM 375 HB2 ARG A 16 10.241 -2.532 2.670 1.00 1.66 H +ATOM 376 HB3 ARG A 16 10.984 -2.472 4.261 1.00 1.64 H +ATOM 377 HG2 ARG A 16 9.091 -0.926 4.937 1.00 2.52 H +ATOM 378 HG3 ARG A 16 8.315 -1.381 3.419 1.00 2.56 H +ATOM 379 HD2 ARG A 16 7.455 -2.794 5.149 1.00 3.30 H +ATOM 380 HD3 ARG A 16 8.505 -3.765 4.116 1.00 3.15 H +ATOM 381 HE ARG A 16 9.818 -2.635 6.426 1.00 2.98 H +ATOM 382 HH11 ARG A 16 8.005 -5.358 5.180 1.00 4.37 H +ATOM 383 HH12 ARG A 16 8.597 -6.466 6.378 1.00 5.17 H +ATOM 384 HH21 ARG A 16 10.598 -4.094 7.996 1.00 4.32 H +ATOM 385 HH22 ARG A 16 10.040 -5.738 7.993 1.00 5.07 H +TER 386 ARG A 16 +ENDMDL +MODEL 9 +ATOM 1 N ARG A 1 -12.735 0.805 1.431 1.00 0.94 N +ATOM 2 CA ARG A 1 -11.309 1.107 1.566 1.00 0.72 C +ATOM 3 C ARG A 1 -10.450 0.196 0.682 1.00 0.60 C +ATOM 4 O ARG A 1 -9.354 -0.212 1.071 1.00 0.64 O +ATOM 5 CB ARG A 1 -10.899 0.951 3.027 1.00 1.24 C +ATOM 6 CG ARG A 1 -11.176 -0.441 3.577 1.00 1.81 C +ATOM 7 CD ARG A 1 -10.818 -0.560 5.045 1.00 2.42 C +ATOM 8 NE ARG A 1 -11.088 -1.905 5.541 1.00 3.29 N +ATOM 9 CZ ARG A 1 -10.790 -2.336 6.760 1.00 4.10 C +ATOM 10 NH1 ARG A 1 -10.259 -1.512 7.656 1.00 4.22 N +ATOM 11 NH2 ARG A 1 -11.046 -3.598 7.084 1.00 5.01 N +ATOM 12 H ARG A 1 -13.158 0.230 2.107 1.00 1.36 H +ATOM 13 HA ARG A 1 -11.154 2.130 1.264 1.00 0.90 H +ATOM 14 HB2 ARG A 1 -9.841 1.151 3.117 1.00 1.52 H +ATOM 15 HB3 ARG A 1 -11.448 1.667 3.624 1.00 1.64 H +ATOM 16 HG2 ARG A 1 -12.228 -0.656 3.458 1.00 2.17 H +ATOM 17 HG3 ARG A 1 -10.594 -1.158 3.013 1.00 2.13 H +ATOM 18 HD2 ARG A 1 -9.766 -0.338 5.173 1.00 2.35 H +ATOM 19 HD3 ARG A 1 -11.407 0.148 5.608 1.00 2.78 H +ATOM 20 HE ARG A 1 -11.516 -2.534 4.908 1.00 3.48 H +ATOM 21 HH11 ARG A 1 -10.076 -0.550 7.416 1.00 3.76 H +ATOM 22 HH12 ARG A 1 -10.033 -1.845 8.581 1.00 4.94 H +ATOM 23 HH21 ARG A 1 -11.455 -4.217 6.411 1.00 5.16 H +ATOM 24 HH22 ARG A 1 -10.830 -3.943 8.005 1.00 5.67 H +ATOM 25 N ARG A 2 -10.942 -0.077 -0.523 1.00 0.54 N +ATOM 26 CA ARG A 2 -10.262 -0.960 -1.481 1.00 0.51 C +ATOM 27 C ARG A 2 -8.817 -0.534 -1.749 1.00 0.39 C +ATOM 28 O ARG A 2 -7.955 -1.363 -2.042 1.00 0.41 O +ATOM 29 CB ARG A 2 -11.058 -1.038 -2.801 1.00 0.59 C +ATOM 30 CG ARG A 2 -11.733 0.271 -3.230 1.00 1.27 C +ATOM 31 CD ARG A 2 -10.748 1.298 -3.773 1.00 2.13 C +ATOM 32 NE ARG A 2 -11.394 2.588 -4.010 1.00 2.80 N +ATOM 33 CZ ARG A 2 -10.752 3.715 -4.323 1.00 3.73 C +ATOM 34 NH1 ARG A 2 -9.435 3.720 -4.478 1.00 4.17 N +ATOM 35 NH2 ARG A 2 -11.442 4.836 -4.484 1.00 4.44 N +ATOM 36 H ARG A 2 -11.794 0.333 -0.782 1.00 0.59 H +ATOM 37 HA ARG A 2 -10.241 -1.945 -1.040 1.00 0.60 H +ATOM 38 HB2 ARG A 2 -10.383 -1.336 -3.585 1.00 0.87 H +ATOM 39 HB3 ARG A 2 -11.823 -1.794 -2.696 1.00 1.05 H +ATOM 40 HG2 ARG A 2 -12.458 0.051 -3.999 1.00 1.80 H +ATOM 41 HG3 ARG A 2 -12.241 0.696 -2.377 1.00 1.44 H +ATOM 42 HD2 ARG A 2 -9.951 1.431 -3.054 1.00 2.58 H +ATOM 43 HD3 ARG A 2 -10.337 0.933 -4.701 1.00 2.36 H +ATOM 44 HE ARG A 2 -12.381 2.620 -3.921 1.00 2.78 H +ATOM 45 HH11 ARG A 2 -8.910 2.877 -4.365 1.00 3.85 H +ATOM 46 HH12 ARG A 2 -8.955 4.574 -4.708 1.00 4.97 H +ATOM 47 HH21 ARG A 2 -12.440 4.833 -4.371 1.00 4.37 H +ATOM 48 HH22 ARG A 2 -10.972 5.693 -4.726 1.00 5.17 H +ATOM 49 N TRP A 3 -8.567 0.761 -1.644 1.00 0.34 N +ATOM 50 CA TRP A 3 -7.260 1.328 -1.957 1.00 0.29 C +ATOM 51 C TRP A 3 -6.185 0.883 -0.964 1.00 0.22 C +ATOM 52 O TRP A 3 -5.020 0.754 -1.328 1.00 0.20 O +ATOM 53 CB TRP A 3 -7.342 2.859 -2.020 1.00 0.42 C +ATOM 54 CG TRP A 3 -7.966 3.498 -0.808 1.00 0.53 C +ATOM 55 CD1 TRP A 3 -9.296 3.565 -0.506 1.00 0.60 C +ATOM 56 CD2 TRP A 3 -7.283 4.179 0.248 1.00 0.65 C +ATOM 57 NE1 TRP A 3 -9.475 4.230 0.682 1.00 0.75 N +ATOM 58 CE2 TRP A 3 -8.256 4.622 1.159 1.00 0.79 C +ATOM 59 CE3 TRP A 3 -5.938 4.453 0.512 1.00 0.67 C +ATOM 60 CZ2 TRP A 3 -7.927 5.326 2.315 1.00 0.95 C +ATOM 61 CZ3 TRP A 3 -5.614 5.151 1.657 1.00 0.83 C +ATOM 62 CH2 TRP A 3 -6.603 5.580 2.546 1.00 0.96 C +ATOM 63 H TRP A 3 -9.281 1.354 -1.333 1.00 0.39 H +ATOM 64 HA TRP A 3 -6.980 0.960 -2.933 1.00 0.31 H +ATOM 65 HB2 TRP A 3 -6.346 3.257 -2.124 1.00 0.44 H +ATOM 66 HB3 TRP A 3 -7.927 3.142 -2.885 1.00 0.48 H +ATOM 67 HD1 TRP A 3 -10.079 3.140 -1.114 1.00 0.57 H +ATOM 68 HE1 TRP A 3 -10.343 4.402 1.119 1.00 0.84 H +ATOM 69 HE3 TRP A 3 -5.157 4.128 -0.164 1.00 0.59 H +ATOM 70 HZ2 TRP A 3 -8.678 5.663 3.013 1.00 1.06 H +ATOM 71 HZ3 TRP A 3 -4.580 5.371 1.877 1.00 0.86 H +ATOM 72 HH2 TRP A 3 -6.302 6.123 3.429 1.00 1.10 H +ATOM 73 N ARG A 4 -6.584 0.634 0.282 1.00 0.25 N +ATOM 74 CA ARG A 4 -5.644 0.261 1.344 1.00 0.26 C +ATOM 75 C ARG A 4 -4.851 -0.999 0.988 1.00 0.20 C +ATOM 76 O ARG A 4 -3.708 -1.169 1.426 1.00 0.22 O +ATOM 77 CB ARG A 4 -6.375 0.061 2.673 1.00 0.39 C +ATOM 78 CG ARG A 4 -6.858 1.341 3.318 1.00 0.93 C +ATOM 79 CD ARG A 4 -5.711 2.185 3.848 1.00 0.78 C +ATOM 80 NE ARG A 4 -6.207 3.186 4.782 1.00 0.93 N +ATOM 81 CZ ARG A 4 -5.432 4.038 5.455 1.00 1.11 C +ATOM 82 NH1 ARG A 4 -4.121 4.040 5.261 1.00 1.09 N +ATOM 83 NH2 ARG A 4 -5.972 4.889 6.317 1.00 1.91 N +ATOM 84 H ARG A 4 -7.541 0.685 0.492 1.00 0.33 H +ATOM 85 HA ARG A 4 -4.948 1.075 1.456 1.00 0.29 H +ATOM 86 HB2 ARG A 4 -7.235 -0.562 2.510 1.00 0.67 H +ATOM 87 HB3 ARG A 4 -5.708 -0.431 3.362 1.00 0.82 H +ATOM 88 HG2 ARG A 4 -7.401 1.917 2.584 1.00 1.41 H +ATOM 89 HG3 ARG A 4 -7.519 1.089 4.137 1.00 1.45 H +ATOM 90 HD2 ARG A 4 -5.005 1.544 4.355 1.00 1.29 H +ATOM 91 HD3 ARG A 4 -5.221 2.682 3.023 1.00 1.06 H +ATOM 92 HE ARG A 4 -7.185 3.214 4.923 1.00 1.46 H +ATOM 93 HH11 ARG A 4 -3.711 3.407 4.604 1.00 1.34 H +ATOM 94 HH12 ARG A 4 -3.529 4.682 5.770 1.00 1.35 H +ATOM 95 HH21 ARG A 4 -6.965 4.900 6.455 1.00 2.46 H +ATOM 96 HH22 ARG A 4 -5.387 5.519 6.849 1.00 2.10 H +ATOM 97 N ARG A 5 -5.464 -1.878 0.208 1.00 0.22 N +ATOM 98 CA ARG A 5 -4.804 -3.105 -0.232 1.00 0.29 C +ATOM 99 C ARG A 5 -3.514 -2.803 -0.987 1.00 0.25 C +ATOM 100 O ARG A 5 -2.435 -3.257 -0.605 1.00 0.32 O +ATOM 101 CB ARG A 5 -5.734 -3.928 -1.125 1.00 0.37 C +ATOM 102 CG ARG A 5 -6.875 -4.591 -0.372 1.00 0.90 C +ATOM 103 CD ARG A 5 -7.703 -5.474 -1.288 1.00 0.89 C +ATOM 104 NE ARG A 5 -8.684 -6.258 -0.544 1.00 1.49 N +ATOM 105 CZ ARG A 5 -9.683 -6.932 -1.109 1.00 1.77 C +ATOM 106 NH1 ARG A 5 -9.849 -6.904 -2.428 1.00 1.45 N +ATOM 107 NH2 ARG A 5 -10.518 -7.632 -0.351 1.00 2.70 N +ATOM 108 H ARG A 5 -6.381 -1.693 -0.083 1.00 0.24 H +ATOM 109 HA ARG A 5 -4.563 -3.683 0.647 1.00 0.37 H +ATOM 110 HB2 ARG A 5 -6.156 -3.275 -1.877 1.00 0.92 H +ATOM 111 HB3 ARG A 5 -5.155 -4.696 -1.614 1.00 0.72 H +ATOM 112 HG2 ARG A 5 -6.461 -5.194 0.421 1.00 1.29 H +ATOM 113 HG3 ARG A 5 -7.510 -3.825 0.048 1.00 1.42 H +ATOM 114 HD2 ARG A 5 -8.220 -4.853 -2.005 1.00 1.52 H +ATOM 115 HD3 ARG A 5 -7.037 -6.148 -1.812 1.00 0.93 H +ATOM 116 HE ARG A 5 -8.583 -6.294 0.438 1.00 2.03 H +ATOM 117 HH11 ARG A 5 -9.221 -6.377 -3.004 1.00 1.37 H +ATOM 118 HH12 ARG A 5 -10.604 -7.415 -2.853 1.00 1.73 H +ATOM 119 HH21 ARG A 5 -10.393 -7.654 0.646 1.00 3.26 H +ATOM 120 HH22 ARG A 5 -11.271 -8.155 -0.766 1.00 2.93 H +ATOM 121 N TRP A 6 -3.639 -2.029 -2.051 1.00 0.21 N +ATOM 122 CA TRP A 6 -2.499 -1.688 -2.890 1.00 0.27 C +ATOM 123 C TRP A 6 -1.602 -0.711 -2.145 1.00 0.22 C +ATOM 124 O TRP A 6 -0.381 -0.718 -2.299 1.00 0.26 O +ATOM 125 CB TRP A 6 -2.990 -1.085 -4.208 1.00 0.34 C +ATOM 126 CG TRP A 6 -4.233 -1.749 -4.718 1.00 0.35 C +ATOM 127 CD1 TRP A 6 -4.416 -3.084 -4.942 1.00 0.43 C +ATOM 128 CD2 TRP A 6 -5.469 -1.111 -5.054 1.00 0.34 C +ATOM 129 NE1 TRP A 6 -5.691 -3.314 -5.384 1.00 0.49 N +ATOM 130 CE2 TRP A 6 -6.355 -2.121 -5.474 1.00 0.43 C +ATOM 131 CE3 TRP A 6 -5.913 0.214 -5.047 1.00 0.32 C +ATOM 132 CZ2 TRP A 6 -7.659 -1.846 -5.875 1.00 0.48 C +ATOM 133 CZ3 TRP A 6 -7.207 0.487 -5.449 1.00 0.37 C +ATOM 134 CH2 TRP A 6 -8.066 -0.539 -5.859 1.00 0.44 C +ATOM 135 H TRP A 6 -4.521 -1.672 -2.280 1.00 0.19 H +ATOM 136 HA TRP A 6 -1.944 -2.594 -3.093 1.00 0.34 H +ATOM 137 HB2 TRP A 6 -3.204 -0.035 -4.063 1.00 0.34 H +ATOM 138 HB3 TRP A 6 -2.220 -1.194 -4.957 1.00 0.47 H +ATOM 139 HD1 TRP A 6 -3.663 -3.839 -4.774 1.00 0.48 H +ATOM 140 HE1 TRP A 6 -6.062 -4.192 -5.606 1.00 0.58 H +ATOM 141 HE3 TRP A 6 -5.264 1.021 -4.733 1.00 0.32 H +ATOM 142 HZ2 TRP A 6 -8.336 -2.625 -6.195 1.00 0.57 H +ATOM 143 HZ3 TRP A 6 -7.565 1.504 -5.453 1.00 0.39 H +ATOM 144 HH2 TRP A 6 -9.067 -0.280 -6.170 1.00 0.50 H +ATOM 145 N TRP A 7 -2.247 0.113 -1.328 1.00 0.17 N +ATOM 146 CA TRP A 7 -1.582 1.062 -0.443 1.00 0.18 C +ATOM 147 C TRP A 7 -0.474 0.390 0.366 1.00 0.16 C +ATOM 148 O TRP A 7 0.677 0.820 0.322 1.00 0.19 O +ATOM 149 CB TRP A 7 -2.645 1.675 0.477 1.00 0.20 C +ATOM 150 CG TRP A 7 -2.133 2.533 1.590 1.00 0.34 C +ATOM 151 CD1 TRP A 7 -1.738 2.117 2.828 1.00 0.44 C +ATOM 152 CD2 TRP A 7 -1.999 3.955 1.582 1.00 0.51 C +ATOM 153 NE1 TRP A 7 -1.364 3.194 3.589 1.00 0.62 N +ATOM 154 CE2 TRP A 7 -1.512 4.334 2.843 1.00 0.65 C +ATOM 155 CE3 TRP A 7 -2.237 4.944 0.629 1.00 0.62 C +ATOM 156 CZ2 TRP A 7 -1.267 5.660 3.180 1.00 0.85 C +ATOM 157 CZ3 TRP A 7 -1.992 6.261 0.963 1.00 0.81 C +ATOM 158 CH2 TRP A 7 -1.511 6.608 2.229 1.00 0.91 C +ATOM 159 H TRP A 7 -3.229 0.094 -1.331 1.00 0.17 H +ATOM 160 HA TRP A 7 -1.149 1.843 -1.052 1.00 0.25 H +ATOM 161 HB2 TRP A 7 -3.304 2.288 -0.118 1.00 0.28 H +ATOM 162 HB3 TRP A 7 -3.222 0.875 0.921 1.00 0.20 H +ATOM 163 HD1 TRP A 7 -1.729 1.086 3.145 1.00 0.45 H +ATOM 164 HE1 TRP A 7 -1.039 3.151 4.513 1.00 0.74 H +ATOM 165 HE3 TRP A 7 -2.609 4.696 -0.351 1.00 0.59 H +ATOM 166 HZ2 TRP A 7 -0.901 5.942 4.153 1.00 0.97 H +ATOM 167 HZ3 TRP A 7 -2.175 7.039 0.241 1.00 0.92 H +ATOM 168 HH2 TRP A 7 -1.338 7.648 2.446 1.00 1.07 H +ATOM 169 N ARG A 8 -0.814 -0.677 1.085 1.00 0.16 N +ATOM 170 CA ARG A 8 0.165 -1.345 1.932 1.00 0.22 C +ATOM 171 C ARG A 8 1.177 -2.125 1.094 1.00 0.20 C +ATOM 172 O ARG A 8 2.335 -2.254 1.483 1.00 0.23 O +ATOM 173 CB ARG A 8 -0.508 -2.272 2.951 1.00 0.36 C +ATOM 174 CG ARG A 8 -1.228 -3.466 2.343 1.00 0.93 C +ATOM 175 CD ARG A 8 -1.663 -4.452 3.421 1.00 1.11 C +ATOM 176 NE ARG A 8 -2.620 -3.866 4.364 1.00 1.71 N +ATOM 177 CZ ARG A 8 -2.800 -4.300 5.619 1.00 2.38 C +ATOM 178 NH1 ARG A 8 -2.076 -5.305 6.096 1.00 2.43 N +ATOM 179 NH2 ARG A 8 -3.698 -3.720 6.402 1.00 3.45 N +ATOM 180 H ARG A 8 -1.737 -1.013 1.050 1.00 0.16 H +ATOM 181 HA ARG A 8 0.694 -0.571 2.467 1.00 0.28 H +ATOM 182 HB2 ARG A 8 0.245 -2.644 3.627 1.00 1.17 H +ATOM 183 HB3 ARG A 8 -1.227 -1.696 3.513 1.00 1.04 H +ATOM 184 HG2 ARG A 8 -2.102 -3.116 1.810 1.00 1.48 H +ATOM 185 HG3 ARG A 8 -0.559 -3.965 1.655 1.00 1.64 H +ATOM 186 HD2 ARG A 8 -2.121 -5.305 2.948 1.00 1.70 H +ATOM 187 HD3 ARG A 8 -0.789 -4.772 3.970 1.00 1.56 H +ATOM 188 HE ARG A 8 -3.165 -3.110 4.044 1.00 2.17 H +ATOM 189 HH11 ARG A 8 -1.385 -5.749 5.521 1.00 2.23 H +ATOM 190 HH12 ARG A 8 -2.208 -5.621 7.038 1.00 3.07 H +ATOM 191 HH21 ARG A 8 -4.247 -2.951 6.057 1.00 3.87 H +ATOM 192 HH22 ARG A 8 -3.836 -4.048 7.347 1.00 4.01 H +ATOM 193 N ARG A 9 0.736 -2.642 -0.051 1.00 0.21 N +ATOM 194 CA ARG A 9 1.627 -3.384 -0.942 1.00 0.25 C +ATOM 195 C ARG A 9 2.750 -2.491 -1.455 1.00 0.21 C +ATOM 196 O ARG A 9 3.929 -2.829 -1.333 1.00 0.26 O +ATOM 197 CB ARG A 9 0.855 -3.979 -2.113 1.00 0.33 C +ATOM 198 CG ARG A 9 -0.009 -5.168 -1.738 1.00 1.21 C +ATOM 199 CD ARG A 9 -0.769 -5.704 -2.943 1.00 1.46 C +ATOM 200 NE ARG A 9 0.127 -6.074 -4.046 1.00 2.08 N +ATOM 201 CZ ARG A 9 0.024 -7.206 -4.752 1.00 2.69 C +ATOM 202 NH1 ARG A 9 -0.885 -8.117 -4.425 1.00 2.94 N +ATOM 203 NH2 ARG A 9 0.864 -7.441 -5.756 1.00 3.48 N +ATOM 204 H ARG A 9 -0.206 -2.527 -0.298 1.00 0.22 H +ATOM 205 HA ARG A 9 2.060 -4.186 -0.373 1.00 0.30 H +ATOM 206 HB2 ARG A 9 0.219 -3.216 -2.530 1.00 0.74 H +ATOM 207 HB3 ARG A 9 1.559 -4.296 -2.868 1.00 0.93 H +ATOM 208 HG2 ARG A 9 0.622 -5.952 -1.346 1.00 1.80 H +ATOM 209 HG3 ARG A 9 -0.717 -4.860 -0.982 1.00 1.91 H +ATOM 210 HD2 ARG A 9 -1.331 -6.576 -2.638 1.00 1.70 H +ATOM 211 HD3 ARG A 9 -1.453 -4.939 -3.285 1.00 1.90 H +ATOM 212 HE ARG A 9 0.832 -5.432 -4.288 1.00 2.43 H +ATOM 213 HH11 ARG A 9 -1.497 -7.961 -3.642 1.00 2.79 H +ATOM 214 HH12 ARG A 9 -0.986 -8.954 -4.972 1.00 3.57 H +ATOM 215 HH21 ARG A 9 1.574 -6.762 -5.993 1.00 3.76 H +ATOM 216 HH22 ARG A 9 0.796 -8.298 -6.290 1.00 3.99 H +ATOM 217 N TRP A 10 2.374 -1.349 -2.013 1.00 0.18 N +ATOM 218 CA TRP A 10 3.334 -0.373 -2.502 1.00 0.18 C +ATOM 219 C TRP A 10 4.223 0.124 -1.365 1.00 0.15 C +ATOM 220 O TRP A 10 5.438 0.259 -1.521 1.00 0.15 O +ATOM 221 CB TRP A 10 2.588 0.789 -3.168 1.00 0.24 C +ATOM 222 CG TRP A 10 3.306 2.101 -3.092 1.00 0.27 C +ATOM 223 CD1 TRP A 10 3.029 3.123 -2.234 1.00 0.32 C +ATOM 224 CD2 TRP A 10 4.418 2.532 -3.888 1.00 0.33 C +ATOM 225 NE1 TRP A 10 3.897 4.162 -2.440 1.00 0.39 N +ATOM 226 CE2 TRP A 10 4.766 3.824 -3.446 1.00 0.39 C +ATOM 227 CE3 TRP A 10 5.157 1.950 -4.919 1.00 0.39 C +ATOM 228 CZ2 TRP A 10 5.816 4.542 -4.004 1.00 0.48 C +ATOM 229 CZ3 TRP A 10 6.201 2.666 -5.474 1.00 0.49 C +ATOM 230 CH2 TRP A 10 6.525 3.950 -5.013 1.00 0.53 C +ATOM 231 H TRP A 10 1.410 -1.152 -2.097 1.00 0.20 H +ATOM 232 HA TRP A 10 3.956 -0.860 -3.236 1.00 0.19 H +ATOM 233 HB2 TRP A 10 2.438 0.557 -4.211 1.00 0.29 H +ATOM 234 HB3 TRP A 10 1.626 0.905 -2.690 1.00 0.27 H +ATOM 235 HD1 TRP A 10 2.236 3.104 -1.502 1.00 0.36 H +ATOM 236 HE1 TRP A 10 3.894 5.013 -1.941 1.00 0.45 H +ATOM 237 HE3 TRP A 10 4.919 0.963 -5.287 1.00 0.39 H +ATOM 238 HZ2 TRP A 10 6.083 5.531 -3.651 1.00 0.54 H +ATOM 239 HZ3 TRP A 10 6.782 2.231 -6.273 1.00 0.57 H +ATOM 240 HH2 TRP A 10 7.350 4.474 -5.475 1.00 0.62 H +ATOM 241 N TRP A 11 3.603 0.369 -0.214 1.00 0.16 N +ATOM 242 CA TRP A 11 4.303 0.899 0.947 1.00 0.17 C +ATOM 243 C TRP A 11 5.396 -0.052 1.429 1.00 0.14 C +ATOM 244 O TRP A 11 6.562 0.332 1.539 1.00 0.18 O +ATOM 245 CB TRP A 11 3.308 1.157 2.079 1.00 0.23 C +ATOM 246 CG TRP A 11 3.549 2.448 2.801 1.00 0.36 C +ATOM 247 CD1 TRP A 11 2.756 3.558 2.773 1.00 0.48 C +ATOM 248 CD2 TRP A 11 4.661 2.773 3.646 1.00 0.43 C +ATOM 249 NE1 TRP A 11 3.305 4.550 3.553 1.00 0.61 N +ATOM 250 CE2 TRP A 11 4.473 4.090 4.099 1.00 0.58 C +ATOM 251 CE3 TRP A 11 5.793 2.073 4.063 1.00 0.44 C +ATOM 252 CZ2 TRP A 11 5.380 4.721 4.951 1.00 0.71 C +ATOM 253 CZ3 TRP A 11 6.694 2.700 4.905 1.00 0.57 C +ATOM 254 CH2 TRP A 11 6.483 4.012 5.342 1.00 0.69 C +ATOM 255 H TRP A 11 2.635 0.202 -0.152 1.00 0.19 H +ATOM 256 HA TRP A 11 4.759 1.834 0.666 1.00 0.20 H +ATOM 257 HB2 TRP A 11 2.308 1.184 1.672 1.00 0.28 H +ATOM 258 HB3 TRP A 11 3.376 0.354 2.797 1.00 0.24 H +ATOM 259 HD1 TRP A 11 1.833 3.632 2.217 1.00 0.51 H +ATOM 260 HE1 TRP A 11 2.924 5.441 3.694 1.00 0.72 H +ATOM 261 HE3 TRP A 11 5.975 1.061 3.729 1.00 0.37 H +ATOM 262 HZ2 TRP A 11 5.231 5.733 5.296 1.00 0.83 H +ATOM 263 HZ3 TRP A 11 7.580 2.173 5.236 1.00 0.61 H +ATOM 264 HH2 TRP A 11 7.216 4.462 5.998 1.00 0.80 H +ATOM 265 N ARG A 12 5.015 -1.291 1.700 1.00 0.16 N +ATOM 266 CA ARG A 12 5.930 -2.259 2.299 1.00 0.22 C +ATOM 267 C ARG A 12 6.993 -2.731 1.315 1.00 0.21 C +ATOM 268 O ARG A 12 8.111 -3.043 1.712 1.00 0.27 O +ATOM 269 CB ARG A 12 5.153 -3.451 2.861 1.00 0.33 C +ATOM 270 CG ARG A 12 4.179 -3.060 3.962 1.00 1.49 C +ATOM 271 CD ARG A 12 4.905 -2.513 5.184 1.00 1.87 C +ATOM 272 NE ARG A 12 4.001 -1.795 6.086 1.00 2.29 N +ATOM 273 CZ ARG A 12 3.884 -2.040 7.392 1.00 2.74 C +ATOM 274 NH1 ARG A 12 4.583 -3.019 7.961 1.00 3.00 N +ATOM 275 NH2 ARG A 12 3.052 -1.306 8.124 1.00 3.27 N +ATOM 276 H ARG A 12 4.092 -1.562 1.497 1.00 0.19 H +ATOM 277 HA ARG A 12 6.430 -1.762 3.116 1.00 0.27 H +ATOM 278 HB2 ARG A 12 4.597 -3.917 2.062 1.00 0.95 H +ATOM 279 HB3 ARG A 12 5.855 -4.164 3.269 1.00 0.86 H +ATOM 280 HG2 ARG A 12 3.508 -2.303 3.584 1.00 2.00 H +ATOM 281 HG3 ARG A 12 3.614 -3.935 4.252 1.00 2.03 H +ATOM 282 HD2 ARG A 12 5.352 -3.338 5.719 1.00 2.25 H +ATOM 283 HD3 ARG A 12 5.681 -1.839 4.852 1.00 1.95 H +ATOM 284 HE ARG A 12 3.463 -1.069 5.695 1.00 2.50 H +ATOM 285 HH11 ARG A 12 5.214 -3.586 7.408 1.00 2.91 H +ATOM 286 HH12 ARG A 12 4.497 -3.197 8.944 1.00 3.51 H +ATOM 287 HH21 ARG A 12 2.522 -0.569 7.694 1.00 3.44 H +ATOM 288 HH22 ARG A 12 2.949 -1.480 9.114 1.00 3.66 H +ATOM 289 N ARG A 13 6.649 -2.789 0.040 1.00 0.18 N +ATOM 290 CA ARG A 13 7.601 -3.215 -0.976 1.00 0.22 C +ATOM 291 C ARG A 13 8.658 -2.148 -1.250 1.00 0.21 C +ATOM 292 O ARG A 13 9.851 -2.402 -1.100 1.00 0.25 O +ATOM 293 CB ARG A 13 6.884 -3.593 -2.269 1.00 0.28 C +ATOM 294 CG ARG A 13 6.273 -4.989 -2.236 1.00 0.93 C +ATOM 295 CD ARG A 13 7.345 -6.072 -2.123 1.00 1.38 C +ATOM 296 NE ARG A 13 8.207 -6.110 -3.301 1.00 1.86 N +ATOM 297 CZ ARG A 13 9.529 -5.932 -3.275 1.00 2.76 C +ATOM 298 NH1 ARG A 13 10.161 -5.708 -2.128 1.00 3.47 N +ATOM 299 NH2 ARG A 13 10.215 -5.967 -4.405 1.00 3.35 N +ATOM 300 H ARG A 13 5.737 -2.543 -0.228 1.00 0.17 H +ATOM 301 HA ARG A 13 8.100 -4.092 -0.598 1.00 0.28 H +ATOM 302 HB2 ARG A 13 6.095 -2.879 -2.451 1.00 0.66 H +ATOM 303 HB3 ARG A 13 7.592 -3.551 -3.082 1.00 0.82 H +ATOM 304 HG2 ARG A 13 5.611 -5.060 -1.386 1.00 1.57 H +ATOM 305 HG3 ARG A 13 5.709 -5.146 -3.144 1.00 1.64 H +ATOM 306 HD2 ARG A 13 7.953 -5.872 -1.253 1.00 2.01 H +ATOM 307 HD3 ARG A 13 6.860 -7.032 -2.009 1.00 1.74 H +ATOM 308 HE ARG A 13 7.776 -6.282 -4.169 1.00 1.99 H +ATOM 309 HH11 ARG A 13 9.649 -5.669 -1.260 1.00 3.38 H +ATOM 310 HH12 ARG A 13 11.166 -5.587 -2.119 1.00 4.31 H +ATOM 311 HH21 ARG A 13 9.739 -6.136 -5.275 1.00 3.32 H +ATOM 312 HH22 ARG A 13 11.208 -5.819 -4.401 1.00 4.06 H +ATOM 313 N TRP A 14 8.223 -0.974 -1.681 1.00 0.20 N +ATOM 314 CA TRP A 14 9.150 0.076 -2.089 1.00 0.24 C +ATOM 315 C TRP A 14 9.813 0.760 -0.895 1.00 0.21 C +ATOM 316 O TRP A 14 11.040 0.802 -0.799 1.00 0.27 O +ATOM 317 CB TRP A 14 8.440 1.116 -2.956 1.00 0.31 C +ATOM 318 CG TRP A 14 9.388 1.993 -3.720 1.00 0.42 C +ATOM 319 CD1 TRP A 14 9.980 1.698 -4.912 1.00 0.54 C +ATOM 320 CD2 TRP A 14 9.853 3.298 -3.351 1.00 0.48 C +ATOM 321 NE1 TRP A 14 10.784 2.737 -5.310 1.00 0.64 N +ATOM 322 CE2 TRP A 14 10.722 3.733 -4.370 1.00 0.60 C +ATOM 323 CE3 TRP A 14 9.616 4.143 -2.263 1.00 0.49 C +ATOM 324 CZ2 TRP A 14 11.357 4.970 -4.327 1.00 0.70 C +ATOM 325 CZ3 TRP A 14 10.247 5.371 -2.223 1.00 0.62 C +ATOM 326 CH2 TRP A 14 11.106 5.776 -3.252 1.00 0.71 C +ATOM 327 H TRP A 14 7.258 -0.801 -1.716 1.00 0.19 H +ATOM 328 HA TRP A 14 9.920 -0.388 -2.680 1.00 0.30 H +ATOM 329 HB2 TRP A 14 7.805 0.612 -3.671 1.00 0.37 H +ATOM 330 HB3 TRP A 14 7.838 1.749 -2.327 1.00 0.26 H +ATOM 331 HD1 TRP A 14 9.830 0.774 -5.449 1.00 0.59 H +ATOM 332 HE1 TRP A 14 11.318 2.759 -6.138 1.00 0.74 H +ATOM 333 HE3 TRP A 14 8.953 3.849 -1.459 1.00 0.44 H +ATOM 334 HZ2 TRP A 14 12.022 5.298 -5.111 1.00 0.80 H +ATOM 335 HZ3 TRP A 14 10.075 6.039 -1.388 1.00 0.67 H +ATOM 336 HH2 TRP A 14 11.578 6.745 -3.180 1.00 0.80 H +ATOM 337 N ARG A 15 9.000 1.298 0.006 1.00 0.20 N +ATOM 338 CA ARG A 15 9.507 2.168 1.070 1.00 0.22 C +ATOM 339 C ARG A 15 10.351 1.422 2.102 1.00 0.26 C +ATOM 340 O ARG A 15 11.412 1.905 2.509 1.00 0.44 O +ATOM 341 CB ARG A 15 8.368 2.902 1.780 1.00 0.41 C +ATOM 342 CG ARG A 15 7.919 4.185 1.086 1.00 0.57 C +ATOM 343 CD ARG A 15 6.977 3.921 -0.084 1.00 0.40 C +ATOM 344 NE ARG A 15 6.587 5.163 -0.764 1.00 0.46 N +ATOM 345 CZ ARG A 15 5.616 5.974 -0.342 1.00 0.82 C +ATOM 346 NH1 ARG A 15 4.922 5.679 0.745 1.00 1.35 N +ATOM 347 NH2 ARG A 15 5.337 7.085 -1.010 1.00 0.88 N +ATOM 348 H ARG A 15 8.042 1.101 -0.037 1.00 0.25 H +ATOM 349 HA ARG A 15 10.136 2.905 0.597 1.00 0.28 H +ATOM 350 HB2 ARG A 15 7.519 2.238 1.848 1.00 0.94 H +ATOM 351 HB3 ARG A 15 8.694 3.152 2.778 1.00 1.01 H +ATOM 352 HG2 ARG A 15 7.409 4.808 1.805 1.00 1.12 H +ATOM 353 HG3 ARG A 15 8.794 4.700 0.720 1.00 1.13 H +ATOM 354 HD2 ARG A 15 7.476 3.275 -0.791 1.00 0.45 H +ATOM 355 HD3 ARG A 15 6.089 3.430 0.287 1.00 0.45 H +ATOM 356 HE ARG A 15 7.078 5.402 -1.584 1.00 0.63 H +ATOM 357 HH11 ARG A 15 5.115 4.843 1.254 1.00 1.40 H +ATOM 358 HH12 ARG A 15 4.194 6.292 1.058 1.00 1.76 H +ATOM 359 HH21 ARG A 15 5.847 7.316 -1.843 1.00 0.77 H +ATOM 360 HH22 ARG A 15 4.609 7.703 -0.688 1.00 1.22 H +ATOM 361 N ARG A 16 9.882 0.267 2.543 1.00 0.40 N +ATOM 362 CA ARG A 16 10.584 -0.483 3.575 1.00 0.55 C +ATOM 363 C ARG A 16 11.598 -1.438 2.967 1.00 1.46 C +ATOM 364 O ARG A 16 12.809 -1.143 3.037 1.00 2.20 O +ATOM 365 CB ARG A 16 9.601 -1.250 4.463 1.00 1.14 C +ATOM 366 CG ARG A 16 8.797 -0.359 5.396 1.00 2.07 C +ATOM 367 CD ARG A 16 9.701 0.573 6.190 1.00 2.76 C +ATOM 368 NE ARG A 16 10.727 -0.154 6.933 1.00 3.02 N +ATOM 369 CZ ARG A 16 11.848 0.404 7.392 1.00 3.81 C +ATOM 370 NH1 ARG A 16 12.063 1.703 7.233 1.00 4.43 N +ATOM 371 NH2 ARG A 16 12.750 -0.335 8.022 1.00 4.37 N +ATOM 372 OXT ARG A 16 11.181 -2.469 2.414 1.00 2.24 O +ATOM 373 H ARG A 16 9.057 -0.099 2.160 1.00 0.55 H +ATOM 374 HA ARG A 16 11.116 0.231 4.189 1.00 1.33 H +ATOM 375 HB2 ARG A 16 8.910 -1.790 3.833 1.00 1.66 H +ATOM 376 HB3 ARG A 16 10.155 -1.957 5.063 1.00 1.64 H +ATOM 377 HG2 ARG A 16 8.109 0.233 4.810 1.00 2.52 H +ATOM 378 HG3 ARG A 16 8.244 -0.983 6.084 1.00 2.56 H +ATOM 379 HD2 ARG A 16 10.182 1.256 5.506 1.00 3.30 H +ATOM 380 HD3 ARG A 16 9.092 1.133 6.887 1.00 3.15 H +ATOM 381 HE ARG A 16 10.575 -1.123 7.087 1.00 2.98 H +ATOM 382 HH11 ARG A 16 11.385 2.273 6.770 1.00 4.37 H +ATOM 383 HH12 ARG A 16 12.913 2.122 7.580 1.00 5.17 H +ATOM 384 HH21 ARG A 16 12.599 -1.323 8.151 1.00 4.32 H +ATOM 385 HH22 ARG A 16 13.584 0.087 8.383 1.00 5.07 H +TER 386 ARG A 16 +ENDMDL +MODEL 10 +ATOM 1 N ARG A 1 -12.564 0.342 1.043 1.00 0.94 N +ATOM 2 CA ARG A 1 -11.240 0.115 1.607 1.00 0.72 C +ATOM 3 C ARG A 1 -10.415 -0.803 0.706 1.00 0.60 C +ATOM 4 O ARG A 1 -9.385 -1.330 1.116 1.00 0.64 O +ATOM 5 CB ARG A 1 -11.367 -0.493 3.007 1.00 1.24 C +ATOM 6 CG ARG A 1 -12.065 0.413 4.011 1.00 1.81 C +ATOM 7 CD ARG A 1 -11.271 1.686 4.270 1.00 2.42 C +ATOM 8 NE ARG A 1 -11.942 2.579 5.215 1.00 3.29 N +ATOM 9 CZ ARG A 1 -11.579 2.716 6.489 1.00 4.10 C +ATOM 10 NH1 ARG A 1 -10.592 1.975 6.983 1.00 4.22 N +ATOM 11 NH2 ARG A 1 -12.213 3.579 7.275 1.00 5.01 N +ATOM 12 H ARG A 1 -13.140 -0.434 0.834 1.00 1.36 H +ATOM 13 HA ARG A 1 -10.743 1.068 1.673 1.00 0.90 H +ATOM 14 HB2 ARG A 1 -11.929 -1.410 2.933 1.00 1.52 H +ATOM 15 HB3 ARG A 1 -10.379 -0.716 3.381 1.00 1.64 H +ATOM 16 HG2 ARG A 1 -13.036 0.682 3.623 1.00 2.17 H +ATOM 17 HG3 ARG A 1 -12.182 -0.124 4.941 1.00 2.13 H +ATOM 18 HD2 ARG A 1 -10.306 1.415 4.671 1.00 2.35 H +ATOM 19 HD3 ARG A 1 -11.135 2.205 3.332 1.00 2.78 H +ATOM 20 HE ARG A 1 -12.694 3.111 4.876 1.00 3.48 H +ATOM 21 HH11 ARG A 1 -10.116 1.307 6.395 1.00 3.76 H +ATOM 22 HH12 ARG A 1 -10.322 2.066 7.946 1.00 4.94 H +ATOM 23 HH21 ARG A 1 -12.974 4.131 6.912 1.00 5.16 H +ATOM 24 HH22 ARG A 1 -11.941 3.683 8.237 1.00 5.67 H +ATOM 25 N ARG A 2 -10.864 -0.966 -0.532 1.00 0.54 N +ATOM 26 CA ARG A 2 -10.188 -1.837 -1.501 1.00 0.51 C +ATOM 27 C ARG A 2 -8.799 -1.304 -1.863 1.00 0.39 C +ATOM 28 O ARG A 2 -7.855 -2.069 -2.067 1.00 0.41 O +ATOM 29 CB ARG A 2 -11.023 -1.945 -2.775 1.00 0.59 C +ATOM 30 CG ARG A 2 -12.403 -2.560 -2.578 1.00 1.27 C +ATOM 31 CD ARG A 2 -12.426 -4.037 -2.942 1.00 2.13 C +ATOM 32 NE ARG A 2 -11.771 -4.883 -1.945 1.00 2.80 N +ATOM 33 CZ ARG A 2 -10.899 -5.845 -2.244 1.00 3.73 C +ATOM 34 NH1 ARG A 2 -10.486 -6.009 -3.495 1.00 4.17 N +ATOM 35 NH2 ARG A 2 -10.436 -6.631 -1.282 1.00 4.44 N +ATOM 36 H ARG A 2 -11.678 -0.497 -0.800 1.00 0.59 H +ATOM 37 HA ARG A 2 -10.088 -2.813 -1.060 1.00 0.60 H +ATOM 38 HB2 ARG A 2 -11.150 -0.956 -3.187 1.00 0.87 H +ATOM 39 HB3 ARG A 2 -10.484 -2.551 -3.490 1.00 1.05 H +ATOM 40 HG2 ARG A 2 -12.688 -2.454 -1.543 1.00 1.80 H +ATOM 41 HG3 ARG A 2 -13.112 -2.035 -3.204 1.00 1.44 H +ATOM 42 HD2 ARG A 2 -13.453 -4.352 -3.039 1.00 2.58 H +ATOM 43 HD3 ARG A 2 -11.925 -4.165 -3.889 1.00 2.36 H +ATOM 44 HE ARG A 2 -12.036 -4.758 -1.002 1.00 2.78 H +ATOM 45 HH11 ARG A 2 -10.824 -5.402 -4.222 1.00 3.85 H +ATOM 46 HH12 ARG A 2 -9.844 -6.753 -3.729 1.00 4.97 H +ATOM 47 HH21 ARG A 2 -10.742 -6.500 -0.336 1.00 4.37 H +ATOM 48 HH22 ARG A 2 -9.774 -7.363 -1.496 1.00 5.17 H +ATOM 49 N TRP A 3 -8.699 0.013 -1.925 1.00 0.34 N +ATOM 50 CA TRP A 3 -7.490 0.697 -2.383 1.00 0.29 C +ATOM 51 C TRP A 3 -6.350 0.599 -1.367 1.00 0.22 C +ATOM 52 O TRP A 3 -5.179 0.563 -1.743 1.00 0.20 O +ATOM 53 CB TRP A 3 -7.811 2.170 -2.682 1.00 0.42 C +ATOM 54 CG TRP A 3 -8.467 2.873 -1.532 1.00 0.53 C +ATOM 55 CD1 TRP A 3 -9.805 2.960 -1.274 1.00 0.60 C +ATOM 56 CD2 TRP A 3 -7.808 3.570 -0.470 1.00 0.65 C +ATOM 57 NE1 TRP A 3 -10.017 3.656 -0.109 1.00 0.75 N +ATOM 58 CE2 TRP A 3 -8.805 4.045 0.400 1.00 0.79 C +ATOM 59 CE3 TRP A 3 -6.470 3.833 -0.171 1.00 0.67 C +ATOM 60 CZ2 TRP A 3 -8.503 4.769 1.548 1.00 0.95 C +ATOM 61 CZ3 TRP A 3 -6.172 4.549 0.968 1.00 0.83 C +ATOM 62 CH2 TRP A 3 -7.185 5.009 1.817 1.00 0.96 C +ATOM 63 H TRP A 3 -9.466 0.549 -1.652 1.00 0.39 H +ATOM 64 HA TRP A 3 -7.172 0.221 -3.297 1.00 0.31 H +ATOM 65 HB2 TRP A 3 -6.895 2.694 -2.912 1.00 0.44 H +ATOM 66 HB3 TRP A 3 -8.475 2.224 -3.534 1.00 0.48 H +ATOM 67 HD1 TRP A 3 -10.575 2.528 -1.899 1.00 0.57 H +ATOM 68 HE1 TRP A 3 -10.894 3.846 0.292 1.00 0.84 H +ATOM 69 HE3 TRP A 3 -5.676 3.484 -0.817 1.00 0.59 H +ATOM 70 HZ2 TRP A 3 -9.272 5.130 2.214 1.00 1.06 H +ATOM 71 HZ3 TRP A 3 -5.144 4.760 1.214 1.00 0.86 H +ATOM 72 HH2 TRP A 3 -6.903 5.555 2.705 1.00 1.10 H +ATOM 73 N ARG A 4 -6.698 0.544 -0.083 1.00 0.25 N +ATOM 74 CA ARG A 4 -5.714 0.535 0.988 1.00 0.26 C +ATOM 75 C ARG A 4 -4.837 -0.712 0.898 1.00 0.20 C +ATOM 76 O ARG A 4 -3.688 -0.717 1.343 1.00 0.22 O +ATOM 77 CB ARG A 4 -6.417 0.633 2.345 1.00 0.39 C +ATOM 78 CG ARG A 4 -5.471 0.820 3.522 1.00 0.93 C +ATOM 79 CD ARG A 4 -4.730 2.155 3.475 1.00 0.78 C +ATOM 80 NE ARG A 4 -5.550 3.264 3.962 1.00 0.93 N +ATOM 81 CZ ARG A 4 -5.050 4.404 4.440 1.00 1.11 C +ATOM 82 NH1 ARG A 4 -3.737 4.585 4.488 1.00 1.09 N +ATOM 83 NH2 ARG A 4 -5.862 5.364 4.863 1.00 1.91 N +ATOM 84 H ARG A 4 -7.642 0.499 0.155 1.00 0.33 H +ATOM 85 HA ARG A 4 -5.087 1.402 0.856 1.00 0.29 H +ATOM 86 HB2 ARG A 4 -7.101 1.471 2.324 1.00 0.67 H +ATOM 87 HB3 ARG A 4 -6.981 -0.273 2.506 1.00 0.82 H +ATOM 88 HG2 ARG A 4 -6.050 0.783 4.428 1.00 1.41 H +ATOM 89 HG3 ARG A 4 -4.755 0.019 3.514 1.00 1.45 H +ATOM 90 HD2 ARG A 4 -3.841 2.086 4.086 1.00 1.29 H +ATOM 91 HD3 ARG A 4 -4.443 2.356 2.452 1.00 1.06 H +ATOM 92 HE ARG A 4 -6.525 3.152 3.931 1.00 1.46 H +ATOM 93 HH11 ARG A 4 -3.118 3.870 4.165 1.00 1.34 H +ATOM 94 HH12 ARG A 4 -3.358 5.446 4.856 1.00 1.35 H +ATOM 95 HH21 ARG A 4 -6.861 5.238 4.832 1.00 2.46 H +ATOM 96 HH22 ARG A 4 -5.484 6.229 5.206 1.00 2.10 H +ATOM 97 N ARG A 5 -5.404 -1.775 0.339 1.00 0.22 N +ATOM 98 CA ARG A 5 -4.666 -3.007 0.080 1.00 0.29 C +ATOM 99 C ARG A 5 -3.463 -2.757 -0.839 1.00 0.25 C +ATOM 100 O ARG A 5 -2.375 -3.292 -0.612 1.00 0.32 O +ATOM 101 CB ARG A 5 -5.598 -4.049 -0.544 1.00 0.37 C +ATOM 102 CG ARG A 5 -4.877 -5.278 -1.066 1.00 0.90 C +ATOM 103 CD ARG A 5 -5.834 -6.240 -1.747 1.00 0.89 C +ATOM 104 NE ARG A 5 -6.655 -5.571 -2.751 1.00 1.49 N +ATOM 105 CZ ARG A 5 -6.947 -6.095 -3.934 1.00 1.77 C +ATOM 106 NH1 ARG A 5 -6.399 -7.242 -4.310 1.00 1.45 N +ATOM 107 NH2 ARG A 5 -7.764 -5.455 -4.758 1.00 2.70 N +ATOM 108 H ARG A 5 -6.354 -1.730 0.099 1.00 0.24 H +ATOM 109 HA ARG A 5 -4.308 -3.380 1.027 1.00 0.37 H +ATOM 110 HB2 ARG A 5 -6.310 -4.365 0.203 1.00 0.92 H +ATOM 111 HB3 ARG A 5 -6.130 -3.593 -1.364 1.00 0.72 H +ATOM 112 HG2 ARG A 5 -4.129 -4.967 -1.779 1.00 1.29 H +ATOM 113 HG3 ARG A 5 -4.403 -5.783 -0.239 1.00 1.42 H +ATOM 114 HD2 ARG A 5 -5.262 -7.020 -2.229 1.00 1.52 H +ATOM 115 HD3 ARG A 5 -6.481 -6.680 -1.001 1.00 0.93 H +ATOM 116 HE ARG A 5 -7.031 -4.697 -2.514 1.00 2.03 H +ATOM 117 HH11 ARG A 5 -5.758 -7.720 -3.702 1.00 1.37 H +ATOM 118 HH12 ARG A 5 -6.621 -7.640 -5.203 1.00 1.73 H +ATOM 119 HH21 ARG A 5 -8.161 -4.571 -4.496 1.00 3.26 H +ATOM 120 HH22 ARG A 5 -8.003 -5.863 -5.652 1.00 2.93 H +ATOM 121 N TRP A 6 -3.655 -1.944 -1.872 1.00 0.21 N +ATOM 122 CA TRP A 6 -2.567 -1.613 -2.787 1.00 0.27 C +ATOM 123 C TRP A 6 -1.590 -0.676 -2.092 1.00 0.22 C +ATOM 124 O TRP A 6 -0.377 -0.761 -2.277 1.00 0.26 O +ATOM 125 CB TRP A 6 -3.104 -0.957 -4.062 1.00 0.34 C +ATOM 126 CG TRP A 6 -4.128 -1.787 -4.784 1.00 0.35 C +ATOM 127 CD1 TRP A 6 -4.053 -3.120 -5.075 1.00 0.43 C +ATOM 128 CD2 TRP A 6 -5.376 -1.330 -5.324 1.00 0.34 C +ATOM 129 NE1 TRP A 6 -5.182 -3.519 -5.747 1.00 0.49 N +ATOM 130 CE2 TRP A 6 -6.008 -2.438 -5.914 1.00 0.43 C +ATOM 131 CE3 TRP A 6 -6.023 -0.090 -5.356 1.00 0.32 C +ATOM 132 CZ2 TRP A 6 -7.255 -2.341 -6.531 1.00 0.48 C +ATOM 133 CZ3 TRP A 6 -7.256 0.005 -5.969 1.00 0.37 C +ATOM 134 CH2 TRP A 6 -7.862 -1.116 -6.549 1.00 0.44 C +ATOM 135 H TRP A 6 -4.542 -1.541 -2.010 1.00 0.19 H +ATOM 136 HA TRP A 6 -2.052 -2.527 -3.046 1.00 0.34 H +ATOM 137 HB2 TRP A 6 -3.564 -0.014 -3.805 1.00 0.34 H +ATOM 138 HB3 TRP A 6 -2.283 -0.778 -4.738 1.00 0.47 H +ATOM 139 HD1 TRP A 6 -3.227 -3.759 -4.805 1.00 0.48 H +ATOM 140 HE1 TRP A 6 -5.363 -4.428 -6.058 1.00 0.58 H +ATOM 141 HE3 TRP A 6 -5.571 0.786 -4.914 1.00 0.32 H +ATOM 142 HZ2 TRP A 6 -7.737 -3.196 -6.985 1.00 0.57 H +ATOM 143 HZ3 TRP A 6 -7.769 0.956 -6.004 1.00 0.39 H +ATOM 144 HH2 TRP A 6 -8.828 -0.997 -7.020 1.00 0.50 H +ATOM 145 N TRP A 7 -2.157 0.206 -1.285 1.00 0.17 N +ATOM 146 CA TRP A 7 -1.396 1.148 -0.470 1.00 0.18 C +ATOM 147 C TRP A 7 -0.331 0.436 0.371 1.00 0.16 C +ATOM 148 O TRP A 7 0.848 0.789 0.323 1.00 0.19 O +ATOM 149 CB TRP A 7 -2.376 1.911 0.425 1.00 0.20 C +ATOM 150 CG TRP A 7 -1.740 2.778 1.466 1.00 0.34 C +ATOM 151 CD1 TRP A 7 -1.317 2.395 2.709 1.00 0.44 C +ATOM 152 CD2 TRP A 7 -1.479 4.180 1.370 1.00 0.51 C +ATOM 153 NE1 TRP A 7 -0.815 3.474 3.389 1.00 0.62 N +ATOM 154 CE2 TRP A 7 -0.899 4.580 2.587 1.00 0.65 C +ATOM 155 CE3 TRP A 7 -1.674 5.137 0.373 1.00 0.62 C +ATOM 156 CZ2 TRP A 7 -0.519 5.892 2.834 1.00 0.85 C +ATOM 157 CZ3 TRP A 7 -1.295 6.441 0.617 1.00 0.81 C +ATOM 158 CH2 TRP A 7 -0.721 6.809 1.843 1.00 0.91 C +ATOM 159 H TRP A 7 -3.138 0.235 -1.241 1.00 0.17 H +ATOM 160 HA TRP A 7 -0.910 1.847 -1.134 1.00 0.25 H +ATOM 161 HB2 TRP A 7 -2.990 2.544 -0.199 1.00 0.28 H +ATOM 162 HB3 TRP A 7 -3.012 1.198 0.930 1.00 0.20 H +ATOM 163 HD1 TRP A 7 -1.383 1.387 3.091 1.00 0.45 H +ATOM 164 HE1 TRP A 7 -0.448 3.455 4.299 1.00 0.74 H +ATOM 165 HE3 TRP A 7 -2.112 4.873 -0.577 1.00 0.59 H +ATOM 166 HZ2 TRP A 7 -0.080 6.189 3.771 1.00 0.97 H +ATOM 167 HZ3 TRP A 7 -1.441 7.192 -0.145 1.00 0.92 H +ATOM 168 HH2 TRP A 7 -0.439 7.840 1.996 1.00 1.07 H +ATOM 169 N ARG A 8 -0.749 -0.569 1.135 1.00 0.16 N +ATOM 170 CA ARG A 8 0.171 -1.291 2.010 1.00 0.22 C +ATOM 171 C ARG A 8 1.205 -2.081 1.209 1.00 0.20 C +ATOM 172 O ARG A 8 2.335 -2.265 1.662 1.00 0.23 O +ATOM 173 CB ARG A 8 -0.588 -2.217 2.970 1.00 0.36 C +ATOM 174 CG ARG A 8 -1.494 -3.224 2.281 1.00 0.93 C +ATOM 175 CD ARG A 8 -2.155 -4.165 3.278 1.00 1.11 C +ATOM 176 NE ARG A 8 -2.950 -3.447 4.278 1.00 1.71 N +ATOM 177 CZ ARG A 8 -3.314 -3.966 5.454 1.00 2.38 C +ATOM 178 NH1 ARG A 8 -2.982 -5.214 5.763 1.00 2.43 N +ATOM 179 NH2 ARG A 8 -4.015 -3.241 6.321 1.00 3.45 N +ATOM 180 H ARG A 8 -1.697 -0.826 1.112 1.00 0.16 H +ATOM 181 HA ARG A 8 0.697 -0.553 2.595 1.00 0.28 H +ATOM 182 HB2 ARG A 8 0.131 -2.761 3.562 1.00 1.17 H +ATOM 183 HB3 ARG A 8 -1.197 -1.614 3.626 1.00 1.04 H +ATOM 184 HG2 ARG A 8 -2.261 -2.692 1.743 1.00 1.48 H +ATOM 185 HG3 ARG A 8 -0.904 -3.806 1.586 1.00 1.64 H +ATOM 186 HD2 ARG A 8 -2.803 -4.841 2.737 1.00 1.70 H +ATOM 187 HD3 ARG A 8 -1.386 -4.735 3.781 1.00 1.56 H +ATOM 188 HE ARG A 8 -3.222 -2.529 4.060 1.00 2.17 H +ATOM 189 HH11 ARG A 8 -2.464 -5.771 5.116 1.00 2.23 H +ATOM 190 HH12 ARG A 8 -3.245 -5.602 6.654 1.00 3.07 H +ATOM 191 HH21 ARG A 8 -4.275 -2.299 6.102 1.00 3.87 H +ATOM 192 HH22 ARG A 8 -4.296 -3.645 7.203 1.00 4.01 H +ATOM 193 N ARG A 9 0.819 -2.542 0.021 1.00 0.21 N +ATOM 194 CA ARG A 9 1.736 -3.274 -0.844 1.00 0.25 C +ATOM 195 C ARG A 9 2.832 -2.337 -1.348 1.00 0.21 C +ATOM 196 O ARG A 9 4.018 -2.661 -1.281 1.00 0.26 O +ATOM 197 CB ARG A 9 0.981 -3.902 -2.023 1.00 0.33 C +ATOM 198 CG ARG A 9 1.794 -4.941 -2.778 1.00 1.21 C +ATOM 199 CD ARG A 9 0.997 -5.563 -3.916 1.00 1.46 C +ATOM 200 NE ARG A 9 1.652 -6.761 -4.440 1.00 2.08 N +ATOM 201 CZ ARG A 9 1.081 -7.620 -5.283 1.00 2.69 C +ATOM 202 NH1 ARG A 9 -0.135 -7.385 -5.763 1.00 2.94 N +ATOM 203 NH2 ARG A 9 1.737 -8.713 -5.648 1.00 3.48 N +ATOM 204 H ARG A 9 -0.102 -2.379 -0.281 1.00 0.22 H +ATOM 205 HA ARG A 9 2.191 -4.056 -0.255 1.00 0.30 H +ATOM 206 HB2 ARG A 9 0.085 -4.375 -1.652 1.00 0.74 H +ATOM 207 HB3 ARG A 9 0.704 -3.120 -2.716 1.00 0.93 H +ATOM 208 HG2 ARG A 9 2.675 -4.468 -3.186 1.00 1.80 H +ATOM 209 HG3 ARG A 9 2.088 -5.721 -2.090 1.00 1.91 H +ATOM 210 HD2 ARG A 9 0.017 -5.831 -3.552 1.00 1.70 H +ATOM 211 HD3 ARG A 9 0.902 -4.838 -4.712 1.00 1.90 H +ATOM 212 HE ARG A 9 2.561 -6.951 -4.118 1.00 2.43 H +ATOM 213 HH11 ARG A 9 -0.633 -6.564 -5.491 1.00 2.79 H +ATOM 214 HH12 ARG A 9 -0.557 -8.031 -6.417 1.00 3.57 H +ATOM 215 HH21 ARG A 9 2.668 -8.889 -5.294 1.00 3.76 H +ATOM 216 HH22 ARG A 9 1.302 -9.388 -6.257 1.00 3.99 H +ATOM 217 N TRP A 10 2.418 -1.172 -1.837 1.00 0.18 N +ATOM 218 CA TRP A 10 3.341 -0.122 -2.250 1.00 0.18 C +ATOM 219 C TRP A 10 4.288 0.239 -1.108 1.00 0.15 C +ATOM 220 O TRP A 10 5.499 0.363 -1.301 1.00 0.15 O +ATOM 221 CB TRP A 10 2.529 1.095 -2.717 1.00 0.24 C +ATOM 222 CG TRP A 10 3.174 2.423 -2.452 1.00 0.27 C +ATOM 223 CD1 TRP A 10 2.894 3.255 -1.411 1.00 0.32 C +ATOM 224 CD2 TRP A 10 4.185 3.078 -3.232 1.00 0.33 C +ATOM 225 NE1 TRP A 10 3.675 4.377 -1.479 1.00 0.39 N +ATOM 226 CE2 TRP A 10 4.473 4.296 -2.590 1.00 0.39 C +ATOM 227 CE3 TRP A 10 4.878 2.756 -4.403 1.00 0.39 C +ATOM 228 CZ2 TRP A 10 5.421 5.187 -3.076 1.00 0.48 C +ATOM 229 CZ3 TRP A 10 5.819 3.647 -4.887 1.00 0.49 C +ATOM 230 CH2 TRP A 10 6.084 4.850 -4.223 1.00 0.53 C +ATOM 231 H TRP A 10 1.451 -1.011 -1.925 1.00 0.20 H +ATOM 232 HA TRP A 10 3.922 -0.495 -3.075 1.00 0.19 H +ATOM 233 HB2 TRP A 10 2.365 1.018 -3.781 1.00 0.29 H +ATOM 234 HB3 TRP A 10 1.572 1.081 -2.213 1.00 0.27 H +ATOM 235 HD1 TRP A 10 2.166 3.040 -0.644 1.00 0.36 H +ATOM 236 HE1 TRP A 10 3.655 5.119 -0.843 1.00 0.45 H +ATOM 237 HE3 TRP A 10 4.690 1.830 -4.929 1.00 0.39 H +ATOM 238 HZ2 TRP A 10 5.640 6.115 -2.568 1.00 0.54 H +ATOM 239 HZ3 TRP A 10 6.363 3.417 -5.792 1.00 0.57 H +ATOM 240 HH2 TRP A 10 6.826 5.516 -4.636 1.00 0.62 H +ATOM 241 N TRP A 11 3.728 0.373 0.079 1.00 0.16 N +ATOM 242 CA TRP A 11 4.493 0.709 1.267 1.00 0.17 C +ATOM 243 C TRP A 11 5.566 -0.350 1.526 1.00 0.14 C +ATOM 244 O TRP A 11 6.759 -0.067 1.462 1.00 0.18 O +ATOM 245 CB TRP A 11 3.532 0.790 2.461 1.00 0.23 C +ATOM 246 CG TRP A 11 3.992 1.634 3.621 1.00 0.36 C +ATOM 247 CD1 TRP A 11 3.320 2.696 4.156 1.00 0.48 C +ATOM 248 CD2 TRP A 11 5.196 1.496 4.395 1.00 0.43 C +ATOM 249 NE1 TRP A 11 4.021 3.213 5.217 1.00 0.61 N +ATOM 250 CE2 TRP A 11 5.174 2.498 5.380 1.00 0.58 C +ATOM 251 CE3 TRP A 11 6.284 0.623 4.352 1.00 0.44 C +ATOM 252 CZ2 TRP A 11 6.195 2.651 6.315 1.00 0.71 C +ATOM 253 CZ3 TRP A 11 7.299 0.775 5.278 1.00 0.57 C +ATOM 254 CH2 TRP A 11 7.247 1.782 6.251 1.00 0.69 C +ATOM 255 H TRP A 11 2.754 0.253 0.158 1.00 0.19 H +ATOM 256 HA TRP A 11 4.967 1.666 1.110 1.00 0.20 H +ATOM 257 HB2 TRP A 11 2.595 1.201 2.117 1.00 0.28 H +ATOM 258 HB3 TRP A 11 3.357 -0.213 2.829 1.00 0.24 H +ATOM 259 HD1 TRP A 11 2.369 3.062 3.792 1.00 0.51 H +ATOM 260 HE1 TRP A 11 3.739 3.972 5.772 1.00 0.72 H +ATOM 261 HE3 TRP A 11 6.340 -0.152 3.601 1.00 0.37 H +ATOM 262 HZ2 TRP A 11 6.163 3.420 7.071 1.00 0.83 H +ATOM 263 HZ3 TRP A 11 8.147 0.109 5.260 1.00 0.61 H +ATOM 264 HH2 TRP A 11 8.061 1.865 6.956 1.00 0.80 H +ATOM 265 N ARG A 12 5.130 -1.577 1.779 1.00 0.16 N +ATOM 266 CA ARG A 12 6.036 -2.641 2.211 1.00 0.22 C +ATOM 267 C ARG A 12 7.071 -2.978 1.143 1.00 0.21 C +ATOM 268 O ARG A 12 8.213 -3.310 1.461 1.00 0.27 O +ATOM 269 CB ARG A 12 5.243 -3.892 2.601 1.00 0.33 C +ATOM 270 CG ARG A 12 4.280 -3.649 3.754 1.00 1.49 C +ATOM 271 CD ARG A 12 5.016 -3.303 5.042 1.00 1.87 C +ATOM 272 NE ARG A 12 4.174 -2.541 5.965 1.00 2.29 N +ATOM 273 CZ ARG A 12 4.307 -2.551 7.289 1.00 2.74 C +ATOM 274 NH1 ARG A 12 5.201 -3.342 7.873 1.00 3.00 N +ATOM 275 NH2 ARG A 12 3.529 -1.779 8.030 1.00 3.27 N +ATOM 276 H ARG A 12 4.172 -1.774 1.665 1.00 0.19 H +ATOM 277 HA ARG A 12 6.558 -2.282 3.084 1.00 0.27 H +ATOM 278 HB2 ARG A 12 4.677 -4.227 1.744 1.00 0.95 H +ATOM 279 HB3 ARG A 12 5.937 -4.668 2.890 1.00 0.86 H +ATOM 280 HG2 ARG A 12 3.627 -2.828 3.497 1.00 2.00 H +ATOM 281 HG3 ARG A 12 3.692 -4.542 3.915 1.00 2.03 H +ATOM 282 HD2 ARG A 12 5.325 -4.218 5.524 1.00 2.25 H +ATOM 283 HD3 ARG A 12 5.887 -2.715 4.799 1.00 1.95 H +ATOM 284 HE ARG A 12 3.482 -1.969 5.569 1.00 2.50 H +ATOM 285 HH11 ARG A 12 5.786 -3.937 7.320 1.00 2.91 H +ATOM 286 HH12 ARG A 12 5.283 -3.355 8.878 1.00 3.51 H +ATOM 287 HH21 ARG A 12 2.837 -1.196 7.598 1.00 3.44 H +ATOM 288 HH22 ARG A 12 3.636 -1.758 9.029 1.00 3.66 H +ATOM 289 N ARG A 13 6.673 -2.905 -0.118 1.00 0.18 N +ATOM 290 CA ARG A 13 7.591 -3.186 -1.214 1.00 0.22 C +ATOM 291 C ARG A 13 8.576 -2.048 -1.428 1.00 0.21 C +ATOM 292 O ARG A 13 9.782 -2.221 -1.266 1.00 0.25 O +ATOM 293 CB ARG A 13 6.831 -3.458 -2.510 1.00 0.28 C +ATOM 294 CG ARG A 13 6.197 -4.835 -2.565 1.00 0.93 C +ATOM 295 CD ARG A 13 5.439 -5.052 -3.866 1.00 1.38 C +ATOM 296 NE ARG A 13 6.237 -4.692 -5.043 1.00 1.86 N +ATOM 297 CZ ARG A 13 6.883 -5.570 -5.812 1.00 2.76 C +ATOM 298 NH1 ARG A 13 6.922 -6.852 -5.482 1.00 3.47 N +ATOM 299 NH2 ARG A 13 7.523 -5.158 -6.901 1.00 3.35 N +ATOM 300 H ARG A 13 5.747 -2.639 -0.321 1.00 0.17 H +ATOM 301 HA ARG A 13 8.147 -4.072 -0.951 1.00 0.28 H +ATOM 302 HB2 ARG A 13 6.053 -2.719 -2.622 1.00 0.66 H +ATOM 303 HB3 ARG A 13 7.519 -3.371 -3.338 1.00 0.82 H +ATOM 304 HG2 ARG A 13 6.974 -5.580 -2.486 1.00 1.57 H +ATOM 305 HG3 ARG A 13 5.512 -4.938 -1.736 1.00 1.64 H +ATOM 306 HD2 ARG A 13 5.168 -6.095 -3.934 1.00 2.01 H +ATOM 307 HD3 ARG A 13 4.543 -4.450 -3.851 1.00 1.74 H +ATOM 308 HE ARG A 13 6.264 -3.740 -5.291 1.00 1.99 H +ATOM 309 HH11 ARG A 13 6.467 -7.178 -4.645 1.00 3.38 H +ATOM 310 HH12 ARG A 13 7.405 -7.509 -6.074 1.00 4.31 H +ATOM 311 HH21 ARG A 13 7.531 -4.185 -7.153 1.00 3.32 H +ATOM 312 HH22 ARG A 13 8.004 -5.821 -7.480 1.00 4.06 H +ATOM 313 N TRP A 14 8.054 -0.888 -1.793 1.00 0.20 N +ATOM 314 CA TRP A 14 8.891 0.229 -2.194 1.00 0.24 C +ATOM 315 C TRP A 14 9.570 0.913 -1.006 1.00 0.21 C +ATOM 316 O TRP A 14 10.792 1.083 -0.991 1.00 0.27 O +ATOM 317 CB TRP A 14 8.068 1.239 -2.981 1.00 0.31 C +ATOM 318 CG TRP A 14 8.909 2.085 -3.877 1.00 0.42 C +ATOM 319 CD1 TRP A 14 9.328 1.771 -5.137 1.00 0.54 C +ATOM 320 CD2 TRP A 14 9.444 3.377 -3.586 1.00 0.48 C +ATOM 321 NE1 TRP A 14 10.095 2.785 -5.646 1.00 0.64 N +ATOM 322 CE2 TRP A 14 10.179 3.787 -4.718 1.00 0.60 C +ATOM 323 CE3 TRP A 14 9.372 4.230 -2.488 1.00 0.49 C +ATOM 324 CZ2 TRP A 14 10.841 5.009 -4.774 1.00 0.70 C +ATOM 325 CZ3 TRP A 14 10.029 5.446 -2.548 1.00 0.62 C +ATOM 326 CH2 TRP A 14 10.753 5.824 -3.685 1.00 0.71 C +ATOM 327 H TRP A 14 7.078 -0.778 -1.788 1.00 0.19 H +ATOM 328 HA TRP A 14 9.657 -0.160 -2.839 1.00 0.30 H +ATOM 329 HB2 TRP A 14 7.346 0.715 -3.588 1.00 0.37 H +ATOM 330 HB3 TRP A 14 7.554 1.889 -2.292 1.00 0.26 H +ATOM 331 HD1 TRP A 14 9.086 0.848 -5.645 1.00 0.59 H +ATOM 332 HE1 TRP A 14 10.515 2.792 -6.541 1.00 0.74 H +ATOM 333 HE3 TRP A 14 8.814 3.952 -1.600 1.00 0.44 H +ATOM 334 HZ2 TRP A 14 11.405 5.317 -5.646 1.00 0.80 H +ATOM 335 HZ3 TRP A 14 9.987 6.123 -1.705 1.00 0.67 H +ATOM 336 HH2 TRP A 14 11.250 6.783 -3.685 1.00 0.80 H +ATOM 337 N ARG A 15 8.768 1.321 -0.026 1.00 0.20 N +ATOM 338 CA ARG A 15 9.280 2.046 1.136 1.00 0.22 C +ATOM 339 C ARG A 15 10.247 1.178 1.927 1.00 0.26 C +ATOM 340 O ARG A 15 11.376 1.590 2.192 1.00 0.44 O +ATOM 341 CB ARG A 15 8.133 2.509 2.045 1.00 0.41 C +ATOM 342 CG ARG A 15 7.561 3.874 1.695 1.00 0.57 C +ATOM 343 CD ARG A 15 7.130 3.956 0.241 1.00 0.40 C +ATOM 344 NE ARG A 15 6.678 5.299 -0.135 1.00 0.46 N +ATOM 345 CZ ARG A 15 7.467 6.382 -0.186 1.00 0.82 C +ATOM 346 NH1 ARG A 15 8.750 6.304 0.144 1.00 1.35 N +ATOM 347 NH2 ARG A 15 6.965 7.549 -0.566 1.00 0.88 N +ATOM 348 H ARG A 15 7.813 1.110 -0.073 1.00 0.25 H +ATOM 349 HA ARG A 15 9.814 2.914 0.774 1.00 0.28 H +ATOM 350 HB2 ARG A 15 7.333 1.786 1.988 1.00 0.94 H +ATOM 351 HB3 ARG A 15 8.495 2.544 3.063 1.00 1.01 H +ATOM 352 HG2 ARG A 15 6.702 4.059 2.320 1.00 1.12 H +ATOM 353 HG3 ARG A 15 8.312 4.627 1.881 1.00 1.13 H +ATOM 354 HD2 ARG A 15 7.965 3.680 -0.381 1.00 0.45 H +ATOM 355 HD3 ARG A 15 6.319 3.255 0.085 1.00 0.45 H +ATOM 356 HE ARG A 15 5.733 5.397 -0.389 1.00 0.63 H +ATOM 357 HH11 ARG A 15 9.147 5.434 0.437 1.00 1.40 H +ATOM 358 HH12 ARG A 15 9.340 7.126 0.087 1.00 1.76 H +ATOM 359 HH21 ARG A 15 5.988 7.625 -0.816 1.00 0.77 H +ATOM 360 HH22 ARG A 15 7.553 8.360 -0.607 1.00 1.22 H +ATOM 361 N ARG A 16 9.785 -0.021 2.289 1.00 0.40 N +ATOM 362 CA ARG A 16 10.606 -1.007 2.995 1.00 0.55 C +ATOM 363 C ARG A 16 10.976 -0.494 4.386 1.00 1.46 C +ATOM 364 O ARG A 16 10.243 -0.802 5.345 1.00 2.20 O +ATOM 365 CB ARG A 16 11.868 -1.336 2.179 1.00 1.14 C +ATOM 366 CG ARG A 16 12.400 -2.754 2.356 1.00 2.07 C +ATOM 367 CD ARG A 16 13.250 -2.924 3.614 1.00 2.76 C +ATOM 368 NE ARG A 16 12.447 -2.960 4.830 1.00 3.02 N +ATOM 369 CZ ARG A 16 12.943 -2.800 6.052 1.00 3.81 C +ATOM 370 NH1 ARG A 16 14.250 -2.676 6.237 1.00 4.43 N +ATOM 371 NH2 ARG A 16 12.128 -2.762 7.097 1.00 4.37 N +ATOM 372 OXT ARG A 16 12.003 0.205 4.514 1.00 2.24 O +ATOM 373 H ARG A 16 8.854 -0.249 2.078 1.00 0.55 H +ATOM 374 HA ARG A 16 10.015 -1.906 3.106 1.00 1.33 H +ATOM 375 HB2 ARG A 16 11.649 -1.193 1.133 1.00 1.66 H +ATOM 376 HB3 ARG A 16 12.649 -0.650 2.468 1.00 1.64 H +ATOM 377 HG2 ARG A 16 11.561 -3.431 2.417 1.00 2.52 H +ATOM 378 HG3 ARG A 16 12.998 -3.006 1.494 1.00 2.56 H +ATOM 379 HD2 ARG A 16 13.802 -3.849 3.536 1.00 3.30 H +ATOM 380 HD3 ARG A 16 13.945 -2.099 3.676 1.00 3.15 H +ATOM 381 HE ARG A 16 11.476 -3.082 4.723 1.00 2.98 H +ATOM 382 HH11 ARG A 16 14.880 -2.705 5.452 1.00 4.37 H +ATOM 383 HH12 ARG A 16 14.615 -2.547 7.159 1.00 5.17 H +ATOM 384 HH21 ARG A 16 11.139 -2.849 6.965 1.00 4.32 H +ATOM 385 HH22 ARG A 16 12.499 -2.641 8.019 1.00 5.07 H +TER 386 ARG A 16 +ENDMDL +MASTER 87 0 0 1 0 0 0 6 195 1 0 2 +END diff --git a/EXAMPLE_SUB.sh b/EXAMPLE_SUB.sh deleted file mode 100644 index 678f3cd..0000000 --- a/EXAMPLE_SUB.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/bash -#SBATCH --account=ACCOUNT -#SBATCH --gres=gpu:v100:1 -#SBATCH --cpus-per-task=1 -#SBATCH --mem=4G -#SBATCH --time=0-4:00 -#SBATCH --mail-user=YOUR EMAIL -#SBATCH --mail-type=END - -export LD_LIBRARY_PATH= # put your MMB path here - -module load python/3.7 -module load StdEnv/2020 -module load gcc/9.3.0 -module load openmpi/4.0.3 -module load cuda/11.0 -module load python openmm - -virtualenv --no-download $SLURM_TMPDIR/env -source $SLURM_TMPDIR/env/bin/activate -pip install --no-index --upgrade pip -pip install --no-index MDAnalysis -pip install --no-index lightdock -pip install --no-index -r requirements.txt -pip install numpy==1.20.2 -pip install ~/projects/def-simine/programs/opendnaWheels/seqfold-0.7.7-py3-none-any.whl -pip install ~/projects/def-simine/programs/opendnaWheels/PeptideBuilder-1.1.0-py3-none-any.whl -pip install ~/projects/def-simine/programs/opendnaWheels/nupack-4.0.0.23-cp37-cp37m-linux_x86_64.whl -python -c "import simtk.openmm" - -python ./main.py --run_num=0 --sequence='AACGCTTTTTGCGTT' --peptide='YQTQTNSPRRAR' --walltime=4 diff --git a/README_CONSTRAINTS.md b/Module_Readme/README_CONSTRAINTS.md similarity index 100% rename from README_CONSTRAINTS.md rename to Module_Readme/README_CONSTRAINTS.md diff --git a/README_E2EDNA.md b/Module_Readme/README_E2EDNA.md similarity index 99% rename from README_E2EDNA.md rename to Module_Readme/README_E2EDNA.md index 936bc4e..e08c239 100644 --- a/README_E2EDNA.md +++ b/Module_Readme/README_E2EDNA.md @@ -70,4 +70,4 @@ OpenDNA will repeat simulations of this length until either a predetermined maxi The two current conditions for calling off an MD run are: * The system has reached equilibrium, within a target thereshold. Equilibration here is defined by the eigenvalue-weighted average slopes of the principal components of the 3D trajectory approaching zero, indicating either static behaviour or a sufficiently well-explored potential energy surface. -* Unbinding: if OpenDNA detects that the analyte has detached from the aptamer and does not make contact for a preset amount of time (default = 1 nanosecond), the binding simulation will cut off, and the analyte-peptide pair are considered to be non-binding. \ No newline at end of file +* Unbinding: if OpenDNA detects that the analyte has detached from the aptamer and does not make contact for a preset amount of time (default = 1 nanosecond), the binding simulation will cut off, and the analyte-peptide pair are considered to be non-binding. diff --git a/README_LightDock.md b/Module_Readme/README_LightDock.md similarity index 100% rename from README_LightDock.md rename to Module_Readme/README_LightDock.md diff --git a/README_MDAnalysis.md b/Module_Readme/README_MDAnalysis.md similarity index 97% rename from README_MDAnalysis.md rename to Module_Readme/README_MDAnalysis.md index ab1ea21..6ab7889 100644 --- a/README_MDAnalysis.md +++ b/Module_Readme/README_MDAnalysis.md @@ -9,4 +9,4 @@ We undertake a wide range of manipulations on this object, using mostly straight One point worth mentioning is on the functions for analysis of nucleic acids. While there are preexisting functions for analysis e.g., of Watson-Crick hydrogen bond lengths in mda.analysis.nuclinfo, these functions are somewhat old, and prohibitively slow for analysis of lengthy trajectories. To remedy this, we have written the functions `getWCDistTraj` and `getNucDATraj` using modern, very fast MDA methods, for Watson-Crick hydrogen bond length and nucleic dihedral angle analysis respectively. -When we have time, we hope to clean these functions up for incorporation into MDA proper. \ No newline at end of file +When we have time, we hope to clean these functions up for incorporation into MDA proper. diff --git a/README_MMB.md b/Module_Readme/README_MMB.md similarity index 97% rename from README_MMB.md rename to Module_Readme/README_MMB.md index 0f36874..0d28706 100644 --- a/README_MMB.md +++ b/Module_Readme/README_MMB.md @@ -17,4 +17,4 @@ It is worth noting that MMB outputs, while technically valid 3D representations One may consider the raw MMB output as a 'coarse' or highly strained version of the 3D structure of the aptamer, which generally benefits from relaxation via MD simulation. Finally, MMB output .pdb files are a bit quirky, and require post-processing to run properly in OpenMM. -See the comments in opendna.prepPDB for details. \ No newline at end of file +See the comments in opendna.prepPDB for details. diff --git a/README_NUPACK.md b/Module_Readme/README_NUPACK.md similarity index 96% rename from README_NUPACK.md rename to Module_Readme/README_NUPACK.md index af5ea04..4d29dd6 100644 --- a/README_NUPACK.md +++ b/Module_Readme/README_NUPACK.md @@ -12,4 +12,4 @@ A few key NUPACK features we take advantage of are: * Output explicit probability of observing the most likely secondary structure for a given sequence. * Output suboptimal structures and their probabilities for a given sequence. -NUPACK has also a wealth of design and utility functions we encourage users to play with on their own. \ No newline at end of file +NUPACK has also a wealth of design and utility functions we encourage users to play with on their own. diff --git a/README_OpenMM.md b/Module_Readme/README_OpenMM.md similarity index 96% rename from README_OpenMM.md rename to Module_Readme/README_OpenMM.md index 6e25425..ea21abf 100644 --- a/README_OpenMM.md +++ b/Module_Readme/README_OpenMM.md @@ -10,4 +10,4 @@ In the future, we hope to implement implicit solvation in OpenMM, which unfortun The OpenMM code itself is fairly self-explanatory, and we direct users to the excellent [documentation](http://docs.openmm.org/latest/userguide/index.html). One final point worth noting is that is is not clear whether the AMOEBA force field functional form implemented in OpenMM (corresponding the AMOEBA13) is fully compatible with e.g., the new nucleic acid parameters in AMOEBABIO18, even if one appropriately converts the TINKER .prm files to OpenMM .xml parameter files. -For this reason, we advise users interested in AMOEBA simulations to look at our TINKER-based implementation of [E2EDNA](https://github.com/InfluenceFunctional/E2EDNA), which while less automated, is tailor-made for usage with AMOEBA. \ No newline at end of file +For this reason, we advise users interested in AMOEBA simulations to look at our TINKER-based implementation of [E2EDNA](https://github.com/InfluenceFunctional/E2EDNA), which while less automated, is tailor-made for usage with AMOEBA. diff --git a/README.MD b/README.MD index 1e6b7cb..70b7c31 100644 --- a/README.MD +++ b/README.MD @@ -1,59 +1,51 @@ -# E2EDNA - OpenMM Implementation - OpenDNA! +# Documentation +## E2EDNA 2.0 - OpenMM Implementation of E2EDNA ! -### A fully-automated code for DNA aptamer 2D and 3D structure analysis, and binding analysis with small molecules and short peptides. +### N.B. Please redirect yourself to this repository for the updated codebase: https://github.com/siminegroup/E2EDNA2 + +### An automated pipeline for simulation of DNA aptamers complexed with small molecules and short peptides. **Michael Kilgour, Tao Liu, Ilya S. Dementyev, Lena Simine** _mjakilgour gmail com_ -## INSTALLATION -* Get the repository -``` -git clone git@github.com:InfluenceFunctional/OpenDNA.git WHAT_YOU_WANT_IT_TO_BE_CALLED -``` -* Setup python environment with the following packages - * Note to Simine Group Members running on Compute Canada - skip this section and go directly to paths. Your virtual environment is automatically setup via the instructions in EXAMPLE_SUB.sh -``` -biopython==1.78 -certifi==2020.12.5 -cycler==0.10.0 -decorator==4.4.2 -GridDataFormats==0.5.0 -gsd==1.9.3 -joblib==1.0.1 -kiwisolver==1.3.1 -matplotlib==3.3.2 -mmtf-python==1.1.2 -mock==4.0.3 -msgpack==0.6.2 -networkx==2.5 -pandas==1.1.3 -ParmEd==3.2.0 -Pillow==7.2.0 -pyparsing==2.4.7 -python-dateutil==2.8.1 -pytz==2021.1 -scipy==1.4.1 -six==1.15.0 -tqdm==4.59.0 -scikit_learn==0.24.2 -Cython==0.29.23 -mdtraj==1.9.5 -``` -* Download appropriate MacroMoleculeBuilder for your system from [SimTK here](https://simtk.org/projects/rnatoolbox) - old and new versions have been tested and seem to work. We'll need the 'Installer' directory and MMB executable. -* Create working directory where runs will take place on your system. - Each new run will create a serially-numbered directory in this folder containing all the relevant outputs. -* Set paths in main.py and submission shell script, if relevant (example enclosed). Note, there is a toggle for running on a 'local' machine vs 'cluster', with distinct paths for e.g., developing on a local vs cluster environment. -``` -* params['mmb'] --> set to the MacroMoleculeBuilder executable on your system -* params['mmb dir'] --> set to the MMB directory, usually a name like /Installer.#_##.Linux -- params['mmb template'] and params['mmb params'] --> included in this repository, should not have to be changed -* params['ld path'] --> paths to various lightdock python scripts (included in this repository, alternatively automatically come with a lightdock pip installation). Depending on your installation, you may need to call 'python' before these scripts in the path. -* params['workdir'] --> the working directory you created in the previous step -``` - -## Modes -OpenDNA takes in a DNA aptamer sequence in FASTA format, and optionally a short peptide or other small molecule, and returns details of the aptamer structure and binding behaviour. +For original version of E2EDNA: J. Chem. Inf. Model. 2021, 61, 9, 4139–4144 (https://doi.org/10.1021/acs.jcim.1c00696) + +## Installation +This installation path has been tested on macOS and it relies on conda and pip package managers. +1. Download the E2EDNA 2.0 package from this repository. +2. Register and download NUPACK from http://www.nupack.org/downloads, you will need the path to ~/nupack-###/source/package directory +3. In the E2EDNA2 directory please modify the [``macos_installation.sh``](https://github.com/InfluenceFunctional/E2EDNA2/blob/main/macos_installation.sh) script: update the path to nupack (see step 2) +4. From E2EDNA2 folder run [``macos_installation.sh``](https://github.com/InfluenceFunctional/E2EDNA2/blob/main/macos_installation.sh). + * Caveat: in case `conda activate e2edna` command gives an error or if after the script finishes e2edna enviroment has not been activated, please either replace the activation command with with `source activate /path-to-env/e2edna` + * OR alternatively copy paste commands from the script without modifications to command line and run one by one, this will go around the unconfigured shell issue. +6. Register and download MMB from https://simtk.org/projects/rnatoolbox . Place the Installer### folder into the e2edna folder. NB: Do not specify `DYLD_LIBRARY_PATH` against the recommendations of the MMB installation guide. This is to avoid interference with the OpenMM module. +7. Update 3 paths in main.py: +``` + params['workdir'] = '/path-to-e2edna/localruns' # working directory + + params['mmb dir'] = '/path-to-e2edna/e2edna/Installer.###/lib' # path to MMB dylib files + + params['mmb'] = '/path-to-e2edna/Installer.###/bin/MMB-executable' # path to MMB executable +``` +## Running a job + +### Quickstart +* Set 'params' in [``main.py``](https://github.com/InfluenceFunctional/E2EDNA2/blob/main/main.py), as indicated in "Installation". +* Run the bash script [``automate_tests.sh``](https://github.com/InfluenceFunctional/E2EDNA2/blob/main/automate_tests.sh) to test all 8 modes automatically. +* Alternatively, a single run can be carried out by run_num, mode, aptamer sequence, and ligand's structural file. For example, +``` +python main.py --run_num=1 --mode='free aptamer' --aptamerSeq='TAATGTTAATTG' --ligand='False' --ligandType='' --ligandSeq='' +python main.py --run_num=2 --mode='full dock' --aptamerSeq='TAATGTTAATTG' --ligand='YQTQ.pdb' --ligandType='peptide' --ligandSeq='YQTQTNSPRRAR' + +# --ligand='False' # if no ligand. --ligandType and --ligandSeq will be ignored. +# --ligandType='peptide' # or 'DNA' or 'RNA' or 'other'. Assuming 'other' ligand can be described by Amber14 force field. +# --ligandSeq='' # if no sequence. For instance, when ligandType is 'other' + +``` + +## Functionality: Eight different modes of operation +E2EDNA 2.0 takes in a DNA aptamer sequence in FASTA format, and optionally a short peptide or other small molecule, and returns details of the aptamer structure and binding behaviour. This code implements several distinct analysis modes so users may customize the level of computational cost and accuracy. * `2d structure` → returns NUPACK or seqfold analysis of aptamer secondary structure. Very fast, O(<1s). If using NUPACK, includes probability of observing a certain fold and of suboptimal folds within kT of the minimum. @@ -62,21 +54,137 @@ This code implements several distinct analysis modes so users may customize the * `coarse dock` → uses the 3D structure from '3d coarse' as the initial condition for a LightDock simulation, and returns best docking configurations and scores. Depending on docking parameters, adds O(5-30mins) to '3d coarse'. * `smooth dock` → identical to 'coarse dock', instead using the relaxed structure from '3d smooth'. Similar cost. * `free aptamer` → fold the aptamer in MMB and run extended MD sampling to identify a representative, equilibrated 2D and 3D structure. Slow O(hours). -* `full docking` → Return best docking configurations and scores from a LightDock run using the fully-equilibrated aptamer structure 'free aptamer'. Similar cost (LightDock is relatively cheap) +* `full dock` → Return best docking configurations and scores from a LightDock run using the fully-equilibrated aptamer structure 'free aptamer'. Similar cost (LightDock is relatively cheap) * `full binding` → Same steps as 'full docking', with follow-up extended MD simulation of the best binding configuration. Slowest O(hours). -# __ work in progress__ +# Test run: inputs and outcomes +Running this script [``automate_tests.sh``](https://github.com/InfluenceFunctional/E2EDNA2/blob/main/automate_tests.sh) will automatically run simple very light simulations of all 8 modes. +Here we explain what outputs to look for and what success looks like. +* Mode 1:`2d structure` +Input: fasta sequence, e.g, CGCGCGCGCGCGC -## Running a job +Outputs: -### Quickstart -* Set 'params' in main.py -* Set sequence = 'ATGC' where ATGC is your desired FASTA sequence -* Set peptide = 'YYYY' where YYYY is your desired peptide (restricted structures TBD) -* Run main, with desired run num. Zero for a fresh run, nonzero for either picking up on a prior run or explicitly enumerated new run (TEST) +Success evaluation: observe the dot-parenthesis representation for 2d structure, e.g., ..(...).. + +* Mode 2:`3d coarse` + +Input: ‘3d unrefined’, fasta sequence, e.g, CGCGCGCGCGCGC + +Outputs: + +Success evaluation: Visualize foldedAptamer_0.pdb in VMD or PyMOL + + +* Mode 3:`3d coarse` + +Input: fasta sequence, e.g, CGCGCGCGCGCGC + +Outputs: + +Success evaluation: + +* Mode 4:`coarse dock` + +Input: fasta sequence, e.g, CGCGCGCGCGCGC; PDB of target ligand, e.g., ‘target.pdb’ + +Outputs: + +Success evaluation: + +* Mode 5:`smooth dock` +Input: fasta sequence, e.g, CGCGCGCGCGCGC; PDB of target ligand, e.g., ‘target.pdb’ + +Outputs: + +Success evaluation: -`python main.py --run-num=0` In cluster mode, or set manually in local mode + +* Mode 6: `free aptamer` +Given a DNA sequence, its secondary structure will be predicted and represented by a contact map of dot-parenthesis notation. Under the guidance of the predicted secondary structure, the sequence will then be folded into an initial three dimensional conformation. Last step is to run a molecular-dynamics simulation to sample its conformational space and find out the representative conformation from the MD trajectory. (if we ask contact predictor for >1 ssStructure) + +Input: fasta sequence, e.g, CGCGCGCGCGCGC + +Modifications to the code: +set params[‘mode’] = ‘free aptamer’ +params['sequence'] =’CGCGCGCGCGCGC’ + +Outputs: +Secondary structure prediction: such as ((....))....((.(...).)).. in “record.txt” +MMB folded structure: “foldedAptamer_0.pdb” + +MD simulation: +Binary trajectory: “clean_foldedAptamer_0_processed_complete_trajectory.dcd” +Topology: “clean_foldedAptamer_0_processed.pdb” +Representative conformation: “repStructure_0.pdb” + +Success evaluation: +The DCD trajectory file is generated, and file “log.txt” shows that the MD sampling of free aptamer is 100% complete. +Visualize MD trajectory of free aptamer using the topology and the binary trajectory file. +Visualize representative conformation of the DNA aptamer. + +* Mode 7: `full dock` +Given a DNA sequence, its secondary structure will be predicted and represented by a contact map of dot-parenthesis notation. Under the guidance of the predicted secondary structure, the sequence will then be folded into an initial three dimensional conformation. Next is to run a molecular-dynamics simulation to sample its conformational space and find out the representative conformation from the MD trajectory. Finally, the representative structure will be docked by a target ligand of interest (its structure must be provided as a PDB file). + +Input: fasta sequence, e.g, CGCGCGCGCGCGC; PDB of target ligand, e.g., ‘target.pdb’ +Modifications to the code: +set params[‘mode’] = ‘full docking’ +params['sequence'] =’CGCGCGCGCGCGC’ +params[‘target’] = ‘target.pdb’ # need to update the code for this. + +Outputs: +Secondary structure prediction: such as ((....))....((.(...).)).. in “record.txt” +MMB folded structure: “foldedAptamer_0.pdb” + +MD simulation: +Binary trajectory: “clean_foldedAptamer_0_processed_complete_trajectory.dcd” +Topology: “clean_foldedAptamer_0_processed.pdb” +Representative conformation: “repStructure_0.pdb” +Docking: Aptamer-ligand complex structure: “top_1.pdb”. Docking score is in “record.txt”. + +Success evaluation: +The DCD trajectory file is generated, and file “log.txt” shows that the MD sampling of free aptamer is 100% complete. +Visualize MD trajectory of free aptamer using the topology and the binary trajectory file. +Visualize representative conformation of the DNA aptamer. +Visualize aptamer-ligand complex structure. + +* Mode 8: `full binding` +Given a DNA sequence, its secondary structure will be predicted and represented by a contact map of dot-parenthesis notation. Under the guidance of the predicted secondary structure, the sequence will then be folded into an initial three dimensional conformation. Next is to run a molecular-dynamics simulation to sample its conformational space and find out the representative conformation from the MD trajectory. The representative structure will be docked by a target ligand of interest (its structure must be provided as a PDB file). Finally, the aptamer-ligand complex molecule will be sampled by MD simulation to investigate its dynamics. + +Input: fasta sequence, e.g, CGCGCGCGCGCGC; PDB of target ligand, e.g., ‘target.pdb’ +Modifications: +set params[‘mode’] = ‘full binding’ +params['sequence'] =’CGCGCGCGCGCGC’ +params[‘target’] = ‘target.pdb’ # need to update the code for this. + +Outputs: +Secondary structure prediction: such as ((....))....((.(...).)).. in “record.txt” +MMB folded structure: “foldedAptamer_0.pdb” +MD simulation of free aptamer: +Binary trajectory: “clean_foldedAptamer_0_processed_complete_trajectory.dcd” +Topology: “clean_foldedAptamer_0_processed.pdb” +Representative conformation: “repStructure_0.pdb” +Docking: Aptamer-ligand complex structure: “top_1.pdb”. Docking score is in “record.txt”. +MD simulation of aptamer-ligand complex: +Binary trajectory: “clean_complex_0_0_processed_trajectory.dcd” +Topology: “clean_complex_0_0_processed.pdb” + +Success evaluation: +File “log.txt” shows that the MD sampling of free aptamer is 100% complete and the DCD trajectory file is generated. +Visualize MD trajectory of free aptamer using the topology and the binary trajectory file. +Visualize representative conformation of the DNA aptamer. +Visualize aptamer-ligand complex structure +The DCD trajectory file is generated, and file “log_complex.txt” shows that the MD sampling of aptamer-ligand is 100% complete. +Visualize MD trajectory of aptamer-ligand using its binary and topolog file. It is worth noting that the aptamer might seem far apart from the target ligand, which could be a result of the periodic boundary condition. Should we correct it or leave user to do it? + +MD simulation might stop at the onset with “Particle coordinate is nan” error. It could be due to the energy minimization being too aggressive so tha the coordinate gets out of boundary, then integrator cannot work on those non-sense coordinate values. In this case, re-run the pipeline. + +MMB folding could take a while if multiple refolding takes place for any tricky sequence. + + + +# __ work in progress__ ### Physical Parameters @@ -122,3 +230,19 @@ For more info, please read README_CONSTRAINTS.md. ``` params['peptide backbone constraint constant'] = 10000 ``` +#### Implicit Solvent +``` +params['implicit solvent'] = True +if params['implicit solvent']: + params['implicit solvent model'] = OBC1 # only meaningful if implicit solvent is True + params['leap template'] = 'leap_template.in' + # TODO add more options to params: implicitSolventSaltConc, soluteDielectric, solventDielectric, implicitSolventKappa +``` + +#### Starting with a folded DNA aptamer structure (instead of just a FASTA sequence) +``` +params['skip MMB'] = True # it will skip '2d analysis' and 'do MMB' +if params['skip MMB'] is True: + params['folded initial structure'] = 'foldedSequence_0.pdb' # if wishing to skip MMB, must provide a folded structure +``` + diff --git a/YQTQ.pdb b/YQTQ.pdb new file mode 100644 index 0000000..cf39808 --- /dev/null +++ b/YQTQ.pdb @@ -0,0 +1,105 @@ +ATOM 1 N TYR A 1 -0.522 1.364 0.000 1.00 0.00 N +ATOM 2 CA TYR A 1 0.000 0.000 0.000 1.00 0.00 C +ATOM 3 C TYR A 1 1.520 0.000 0.000 1.00 0.00 C +ATOM 4 O TYR A 1 2.144 0.530 -0.918 1.00 0.00 O +ATOM 5 CB TYR A 1 -0.507 -0.772 -1.207 1.00 0.00 C +ATOM 6 CG TYR A 1 -2.003 -0.976 -1.215 1.00 0.00 C +ATOM 7 CD1 TYR A 1 -2.844 -0.084 -1.870 1.00 0.00 C +ATOM 8 CE1 TYR A 1 -4.218 -0.292 -1.864 1.00 0.00 C +ATOM 9 CD2 TYR A 1 -2.577 -2.063 -0.566 1.00 0.00 C +ATOM 10 CE2 TYR A 1 -3.957 -2.235 -0.584 1.00 0.00 C +ATOM 11 CZ TYR A 1 -4.752 -1.392 -1.203 1.00 0.00 C +ATOM 12 OH TYR A 1 -6.127 -1.595 -1.200 1.00 0.00 O +ATOM 13 N GLN A 2 2.116 -0.594 1.030 1.00 0.00 N +ATOM 14 CA GLN A 2 3.571 -0.655 1.134 1.00 0.00 C +ATOM 15 C GLN A 2 4.058 -2.094 1.171 1.00 0.00 C +ATOM 16 O GLN A 2 3.692 -2.855 2.066 1.00 0.00 O +ATOM 17 CB GLN A 2 4.056 0.077 2.375 1.00 0.00 C +ATOM 18 CG GLN A 2 3.687 1.551 2.400 1.00 0.00 C +ATOM 19 CD GLN A 2 4.445 2.366 1.366 1.00 0.00 C +ATOM 20 OE1 GLN A 2 5.680 2.288 1.275 1.00 0.00 O +ATOM 21 NE2 GLN A 2 3.717 3.154 0.580 1.00 0.00 N +ATOM 22 N THR A 3 4.884 -2.470 0.199 1.00 0.00 N +ATOM 23 CA THR A 3 5.414 -3.829 0.134 1.00 0.00 C +ATOM 24 C THR A 3 6.932 -3.817 0.206 1.00 0.00 C +ATOM 25 O THR A 3 7.593 -3.224 -0.644 1.00 0.00 O +ATOM 26 CB THR A 3 4.972 -4.534 -1.138 1.00 0.00 C +ATOM 27 OG1 THR A 3 5.447 -3.802 -2.271 1.00 0.00 O +ATOM 28 CG2 THR A 3 3.447 -4.633 -1.212 1.00 0.00 C +ATOM 29 N GLN A 4 7.486 -4.474 1.222 1.00 0.00 N +ATOM 30 CA GLN A 4 8.935 -4.530 1.392 1.00 0.00 C +ATOM 31 C GLN A 4 9.434 -5.965 1.358 1.00 0.00 C +ATOM 32 O GLN A 4 9.034 -6.786 2.182 1.00 0.00 O +ATOM 33 CB GLN A 4 9.353 -3.878 2.700 1.00 0.00 C +ATOM 34 CG GLN A 4 8.967 -2.412 2.804 1.00 0.00 C +ATOM 35 CD GLN A 4 9.765 -1.524 1.862 1.00 0.00 C +ATOM 36 OE1 GLN A 4 11.002 -1.587 1.825 1.00 0.00 O +ATOM 37 NE2 GLN A 4 9.065 -0.692 1.095 1.00 0.00 N +ATOM 38 N THR A 5 10.309 -6.270 0.403 1.00 0.00 N +ATOM 39 CA THR A 5 10.856 -7.617 0.275 1.00 0.00 C +ATOM 40 C THR A 5 12.369 -7.599 0.421 1.00 0.00 C +ATOM 41 O THR A 5 13.062 -6.946 -0.357 1.00 0.00 O +ATOM 42 CB THR A 5 10.482 -8.241 -1.060 1.00 0.00 C +ATOM 43 OG1 THR A 5 11.002 -7.432 -2.118 1.00 0.00 O +ATOM 44 CG2 THR A 5 8.963 -8.346 -1.213 1.00 0.00 C +ATOM 45 N ASN A 6 12.881 -8.317 1.416 1.00 0.00 N +ATOM 46 CA ASN A 6 14.321 -8.373 1.651 1.00 0.00 C +ATOM 47 C ASN A 6 14.847 -9.796 1.549 1.00 0.00 C +ATOM 48 O ASN A 6 14.422 -10.673 2.299 1.00 0.00 O +ATOM 49 CB ASN A 6 14.674 -7.798 3.013 1.00 0.00 C +ATOM 50 CG ASN A 6 14.377 -6.311 3.114 1.00 0.00 C +ATOM 51 OD1 ASN A 6 14.898 -5.509 2.340 1.00 0.00 O +ATOM 52 ND2 ASN A 6 13.535 -5.938 4.074 1.00 0.00 N +ATOM 53 N SER A 7 15.771 -10.025 0.621 1.00 0.00 N +ATOM 54 CA SER A 7 16.347 -11.353 0.433 1.00 0.00 C +ATOM 55 C SER A 7 17.852 -11.338 0.650 1.00 0.00 C +ATOM 56 O SER A 7 18.572 -10.629 -0.052 1.00 0.00 O +ATOM 57 CB SER A 7 16.041 -11.879 -0.960 1.00 0.00 C +ATOM 58 OG SER A 7 14.645 -12.042 -1.139 1.00 0.00 O +ATOM 59 N PRO A 8 18.323 -12.117 1.619 1.00 0.00 N +ATOM 60 CA PRO A 8 19.751 -12.181 1.916 1.00 0.00 C +ATOM 61 C PRO A 8 20.322 -13.581 1.755 1.00 0.00 C +ATOM 62 O PRO A 8 19.887 -14.515 2.427 1.00 0.00 O +ATOM 63 CB PRO A 8 19.843 -11.761 3.374 1.00 0.00 C +ATOM 64 CG PRO A 8 18.546 -12.196 3.963 1.00 0.00 C +ATOM 65 CD PRO A 8 17.538 -12.004 2.869 1.00 0.00 C +ATOM 66 N ARG A 9 21.297 -13.728 0.862 1.00 0.00 N +ATOM 67 CA ARG A 9 21.920 -15.026 0.624 1.00 0.00 C +ATOM 68 C ARG A 9 23.410 -14.978 0.919 1.00 0.00 C +ATOM 69 O ARG A 9 24.145 -14.207 0.302 1.00 0.00 O +ATOM 70 CB ARG A 9 21.702 -15.477 -0.811 1.00 0.00 C +ATOM 71 CG ARG A 9 20.246 -15.746 -1.156 1.00 0.00 C +ATOM 72 CD ARG A 9 20.083 -16.211 -2.594 1.00 0.00 C +ATOM 73 NE ARG A 9 18.682 -16.453 -2.927 1.00 0.00 N +ATOM 74 CZ ARG A 9 18.247 -16.890 -4.105 1.00 0.00 C +ATOM 75 NH1 ARG A 9 19.102 -17.144 -5.092 1.00 0.00 N +ATOM 76 NH2 ARG A 9 16.944 -17.075 -4.297 1.00 0.00 N +ATOM 77 N ARG A 10 23.858 -15.800 1.863 1.00 0.00 N +ATOM 78 CA ARG A 10 25.271 -15.839 2.230 1.00 0.00 C +ATOM 79 C ARG A 10 25.855 -17.223 1.999 1.00 0.00 C +ATOM 80 O ARG A 10 25.396 -18.201 2.587 1.00 0.00 O +ATOM 81 CB ARG A 10 25.465 -15.442 3.684 1.00 0.00 C +ATOM 82 CG ARG A 10 25.090 -14.000 3.983 1.00 0.00 C +ATOM 83 CD ARG A 10 25.320 -13.647 5.443 1.00 0.00 C +ATOM 84 NE ARG A 10 24.944 -12.266 5.731 1.00 0.00 N +ATOM 85 CZ ARG A 10 25.061 -11.679 6.919 1.00 0.00 C +ATOM 86 NH1 ARG A 10 25.549 -12.348 7.960 1.00 0.00 N +ATOM 87 NH2 ARG A 10 24.686 -10.412 7.066 1.00 0.00 N +ATOM 88 N ALA A 11 26.870 -17.307 1.143 1.00 0.00 N +ATOM 89 CA ALA A 11 27.509 -18.585 0.845 1.00 0.00 C +ATOM 90 C ALA A 11 28.985 -18.556 1.208 1.00 0.00 C +ATOM 91 O ALA A 11 29.743 -17.746 0.678 1.00 0.00 O +ATOM 92 CB ALA A 11 27.355 -18.935 -0.626 1.00 0.00 C +ATOM 93 N ARG A 12 29.394 -19.441 2.112 1.00 0.00 N +ATOM 94 CA ARG A 12 30.789 -19.505 2.537 1.00 0.00 C +ATOM 95 C ARG A 12 31.388 -20.870 2.238 1.00 0.00 C +ATOM 96 O ARG A 12 32.558 -21.115 2.525 1.00 0.00 O +ATOM 97 CB ARG A 12 30.918 -19.208 4.022 1.00 0.00 C +ATOM 98 CG ARG A 12 30.526 -17.789 4.401 1.00 0.00 C +ATOM 99 CD ARG A 12 30.691 -17.538 5.891 1.00 0.00 C +ATOM 100 NE ARG A 12 30.298 -16.180 6.255 1.00 0.00 N +ATOM 101 CZ ARG A 12 30.361 -15.675 7.484 1.00 0.00 C +ATOM 102 NH1 ARG A 12 30.806 -16.413 8.498 1.00 0.00 N +ATOM 103 NH2 ARG A 12 29.975 -14.421 7.701 1.00 0.00 N +TER 104 ARG A 12 +END diff --git a/analysisTools.py b/analysisTools.py index ea0125d..87cbf06 100644 --- a/analysisTools.py +++ b/analysisTools.py @@ -101,7 +101,7 @@ def getPairTraj(wcTraj): return pairedBases -def getPepBaseDistTraj(u, peptide, sequence): +def getPepBaseDistTraj(u, peptideSeq, aptamerSeq): """ given an MDA universe return distances between each peptide and each base @@ -109,16 +109,16 @@ def getPepBaseDistTraj(u, peptide, sequence): :return: pepNucDists - peptide-nucleicacid distances """ - pepNucDists = np.zeros((len(u.trajectory), len(peptide), len(sequence))) # distances between peptides and nucleotiedes + pepNucDists = np.zeros((len(u.trajectory), len(peptideSeq), len(aptamerSeq))) # distances between peptides and nucleotiedes tt = 0 for ts in u.trajectory: - analyteResidues = u.segments[1] + targetResidues = u.segments[1] baseResidues = u.segments[0] - posMat1 = np.zeros((len(peptide), 3)) - posMat2 = np.zeros((len(sequence), 3)) - for i in range(len(peptide)): - posMat1[i] = analyteResidues.residues[i].atoms.center_of_geometry() - for i in range(len(sequence)): + posMat1 = np.zeros((len(peptideSeq), 3)) + posMat2 = np.zeros((len(aptamerSeq), 3)) + for i in range(len(peptideSeq)): + posMat1[i] = targetResidues.residues[i].atoms.center_of_geometry() + for i in range(len(aptamerSeq)): posMat2[i] = baseResidues.residues[i].atoms.center_of_geometry() pepNucDists[tt, :, :] = distances.distance_array(posMat1, posMat2, box=u.dimensions) @@ -286,18 +286,16 @@ def numbers2letters(sequences): # Transforming letters to numbers: return my_seq - - -def getSeqfoldStructure(sequence, temperature): +def getSeqfoldStructure(aptamerSeq, temperature): """ output the secondary structure for a given sequence at a given condition formats - ss string and pair list """ - dg(sequence, temp=temperature) # get energy of the structure + dg(aptamerSeq, temp=temperature) # get energy of the structure # printRecord(round(sum(s.e for s in structs), 2)) # predicted energy of the final structure - structs = fold(sequence) # identify structural features - desc = ["."] * len(sequence) + structs = fold(aptamerSeq) # identify structural features + desc = ["."] * len(aptamerSeq) pairList = [] for s in structs: pairList.append(s.ij[0]) @@ -567,18 +565,20 @@ def doTrajectoryDimensionalityReduction(trajectory): :param trajectory: :return: """ - converged = False - nComponents = 10 - while converged == False: # add components until some threshold, then take components greater than the average - components, eigenvalues, reducedTrajectory, pcaModel = trajectoryPCA(nComponents, trajectory, False) # do it with a bunch of components, then re-do it with only the necessary number - totVariance = np.sum(eigenvalues) - if totVariance > 0.85: - converged = True - else: - nComponents += 1 - - # we want there to be a gap in this spectrum, or at least, to neglect only the small contributions - n_components = min(5, np.sum(eigenvalues > np.average(eigenvalues))) # with the threshold above, this removes some of the variation from having too many components + # converged = False + # nComponents = 10 + # while converged == False: # add components until some threshold, then take components greater than the average + # components, eigenvalues, reducedTrajectory, pcaModel = trajectoryPCA(nComponents, trajectory, False) # do it with a bunch of components, then re-do it with only the necessary number + # totVariance = np.sum(eigenvalues) + # if totVariance > 0.85: + # converged = True + # else: + # nComponents += 1 + # # we want there to be a gap in this spectrum, or at least, to neglect only the small contributions + # n_components = min(5, np.sum(eigenvalues > np.average(eigenvalues))) # with the threshold above, this removes some of the variation from having too many components + # components, eigenvalues, reducedTrajectory, pcaModel = trajectoryPCA(n_components, trajectory, True) + + n_components = 5 components, eigenvalues, reducedTrajectory, pcaModel = trajectoryPCA(n_components, trajectory, True) return n_components, reducedTrajectory, pcaModel @@ -616,20 +616,22 @@ def isolateRepresentativeStructure(trajectory): return representativeIndex, reducedTrajectory, eigenvalues -def bindingAnalysis(bindu, freeu, peptide, sequence): +def bindingAnalysis(bindu, freeu, peptideSeq, aptamerSeq): """ - analyze the binding of analyte to aptamer by computing relative distances + analyze the binding of target to aptamer by computing relative distances :param u: + :peptideSeq: peptide sequence + :aptamerSeq: aptamer sequence :return: """ assert bindu.segments.n_segments == 2 - # identify base-analyte distances - pepNucDists = getPepBaseDistTraj(bindu, peptide, sequence) + # identify base-target distances + pepNucDists = getPepBaseDistTraj(bindu, peptideSeq, aptamerSeq) contacts, nContacts = getPepContactTraj(pepNucDists) if np.nonzero(nContacts[:,0])[0] != []: firstContact = np.nonzero(nContacts[:, 0])[0][0] # first time when the peptide and aptamer were in close-range contact closeContactRatio = np.average(nContacts[firstContact:, 0] > 0) # amount of time peptide spends in close contact with aptamer - contactScore = np.average(nContacts[firstContact:, :] / len(peptide)) # per-peptide average contact score, linear average over 8-12 angstrom + contactScore = np.average(nContacts[firstContact:, :] / len(peptideSeq)) # per-peptide average contact score, linear average over 8-12 angstrom else: print('Never made contact!') closeContactRatio = 0 @@ -654,7 +656,7 @@ def getConformationChange(bindu, freeu): compare the pre-complexation (free aptamer) conformation with post-complexation NOTE intimately depends on naming conventions for trajectory files! """ - # function to analyze analyte impact on aptamer conformation + # function to analyze target impact on aptamer conformation freeAngles = getNucDATraj(freeu) bindAngles = getNucDATraj(bindu) @@ -671,14 +673,13 @@ def getConformationChange(bindu, freeu): return reducedDifference -def checkMidTrajectoryBinding(structure, trajectory, peptide, sequence, params, cutoffTime=1): +def checkMidTrajectoryBinding(structure, trajectory, peptideSeq, aptamerSeq, params, cutoffTime=1): """ - check if the analyte has come unbound from the aptamer - and stayed unbound for a certain amount of time + check if the target has come unbound from the aptamer and stayed unbound for a certain amount of time :return: True or False """ u = mda.Universe(structure, trajectory) # load up trajectory - pepNucDists = getPepBaseDistTraj(u, peptide, sequence) + pepNucDists = getPepBaseDistTraj(u, peptideSeq, aptamerSeq) contacts, nContacts = getPepContactTraj(pepNucDists) try: lastContact = np.nonzero(nContacts[:, 0])[0][-1] # last time when the peptide and aptamer were in close-range contact diff --git a/automate_tests.sh b/automate_tests.sh new file mode 100644 index 0000000..f43bf98 --- /dev/null +++ b/automate_tests.sh @@ -0,0 +1,46 @@ +# What should we set as command inputs to automate the tests? +# assumption: lcoal, macos; user has defined work dir, MMB path in main.py and provided target ligand's pdb etc. +# in short, it is ready to run and test different modes + +printf "Starting the automated testing...\n" +printf "====================================" + +printf "\nTESTING MODE #1: '2d structure'\n" +python main.py --run_num=1 --mode='2d structure' --aptamerSeq='TAATGTTAATTG' --ligand='False' --ligandType='' --ligandSeq='' > run1.out +printf "\nEND OF TEST #1: should see info of 2d structure in \"record.txt\" of working dir \"run1\"\n" +printf "====================================" + +# printf "\nTESTING MODE #2: '3d coarse'\n" +# python main.py --run_num=2 --mode='3d coarse' --aptamerSeq='TAATGTTAATTG' --ligand='False' --ligandType='' --ligandSeq='' > run2.out +# printf "\nEND OF TEST #2: should see info of 2d structure + MMB folded structure in \"run2\"\n" +# printf "====================================" + +printf "\nTESTING MODE #3: '3d smooth'\n" +python main.py --run_num=3 --mode='3d smooth' --aptamerSeq='TAATGTTAATTG' --ligand='False' --ligandType='' --ligandSeq='' > run3.out +printf "\nEND OF TEST #3: should see info of 2d structure + MMB folded structure + short MD relaxation in \"run3\"\n" +printf "====================================" + +printf "\nTESTING MODE #4: 'coarse dock'\n" +python main.py --run_num=4 --mode='coarse dock' --aptamerSeq='TAATGTTAATTG' --ligand='YQTQ.pdb' --ligandType='peptide' --ligandSeq='YQTQTNSPRRAR' > run4.out +printf "\nEND OF TEST #4: should see info of 2d structure + MMB folded structure + docking by provided target ligand in \"run4\"\n" +printf "====================================" + +printf "\nTESTING MODE #5: 'smooth dock'\n" +python main.py --run_num=5 --mode='smooth dock' --aptamerSeq='TAATGTTAATTG' --ligand='YQTQ.pdb' --ligandType='peptide' --ligandSeq='YQTQTNSPRRAR' > run5.out +printf "\nEND OF TEST #5: should see info of 2d structure + MMB folded structure + short MD relaxation + docked by provided target ligand in \"run5\"\n" +printf "====================================" + +# printf "\nTESTING MODE #6: 'free aptamer'\n" +# python main.py --run_num=6 --mode='free aptamer' --aptamerSeq='TAATGTTAATTG' --ligand='False' --ligandType='' --ligandSeq='' > run6.out +# printf "\nEND OF TEST #6: should see info of 2d structure + MMB folded structure + long MD sampling in \"run6\"\n" +# printf "====================================" + +# printf "\nTESTING MODE #7: 'full dock'\n" +# python main.py --run_num=7 --mode='full dock' --aptamerSeq='TAATGTTAATTG' --ligand='YQTQ.pdb' --ligandType='peptide' --ligandSeq='YQTQTNSPRRAR' > run7.out +# printf "\nEND OF TEST #7: should see info of 2d structure + MMB folded structure + long MD sampling + docked by provided target ligand in \"run7\"\n" +# printf "====================================" + +# printf "\nTESTING MODE #8: 'full binding'\n" +# python main.py --run_num=8 --mode='full binding' --aptamerSeq='TAATGTTAATTG' --ligand='YQTQ.pdb' --ligandType='peptide' --ligandSeq='YQTQTNSPRRAR' > run8.out +# printf "\nEND OF TEST #8: should see info of 2d structure + MMB folded structure + long MD sampling + docked by provided target ligand + long MD sampling in \"run8\"\n" +# printf "====================================\n" diff --git a/e2edna-env.yml b/e2edna-env.yml new file mode 100644 index 0000000..001dce4 --- /dev/null +++ b/e2edna-env.yml @@ -0,0 +1,173 @@ +name: e2edna +channels: + - conda-forge + - defaults +dependencies: + - ambertools=21.11=py39hf80593e_0 + - arpack=3.7.0=hefb7bc6_2 + - astunparse=1.6.3=pyhd8ed1ab_0 + - biopython=1.78=py39h9ed2024_0 + - blas=1.0=mkl + - blosc=1.21.0=he49afe7_0 + - boost-cpp=1.74.0=hf3dc895_5 + - brotli=1.0.9=h0d85af4_6 + - brotli-bin=1.0.9=h0d85af4_6 + - bzip2=1.0.8=h0d85af4_4 + - c-ares=1.18.1=h0d85af4_0 + - c-compiler=1.3.0=h0d85af4_0 + - ca-certificates=2021.10.8=h033912b_0 + - cctools=973.0.1=hd9211c8_5 + - cctools_osx-64=973.0.1=hb41342b_5 + - certifi=2021.10.8=py39h6e9494a_1 + - cftime=1.5.1.1=py39hc89836e_1 + - clang=11.1.0=h694c41f_1 + - clang-11=11.1.0=default_he082bbe_1 + - clang_osx-64=11.1.0=hc8532ff_6 + - clangxx=11.1.0=default_he082bbe_1 + - clangxx_osx-64=11.1.0=h2c55bc3_6 + - colorama=0.4.4=pyh9f0ad1d_0 + - compiler-rt=11.1.0=h654b07c_0 + - compiler-rt_osx-64=11.1.0=h8c5fa43_0 + - compilers=1.3.0=h694c41f_0 + - curl=7.81.0=hf45b732_0 + - cxx-compiler=1.3.0=h940c156_0 + - cycler=0.11.0=pyhd8ed1ab_0 + - cython=0.29.26=py39h9fcab8e_0 + - fftw=3.3.10=nompi_hf082fe4_102 + - fonttools=4.28.5=py39h89e85a6_0 + - fortran-compiler=1.3.0=h6818c3e_0 + - freetype=2.10.4=h4cff582_1 + - gfortran=9.3.0=h768ea0c_15 + - gfortran_impl_osx-64=9.3.0=h9cc0e5e_23 + - gfortran_osx-64=9.3.0=h18f7dce_15 + - gmp=6.2.1=h2e338ed_0 + - griddataformats=0.6.0=pyhd8ed1ab_0 + - gsd=2.5.1=py39hc89836e_0 + - hdf4=4.2.15=hefd3b78_3 + - hdf5=1.12.1=nompi_h2f0ef1a_103 + - icu=69.1=he49afe7_0 + - intel-openmp=2021.4.0=hecd8cb5_3538 + - isl=0.22.1=hb1e8313_2 + - jbig=2.1=h0d85af4_2003 + - joblib=1.1.0=pyhd8ed1ab_0 + - jpeg=9d=hbcb3906_0 + - khronos-opencl-icd-loader=2022.01.04=h0d85af4_0 + - kiwisolver=1.3.2=py39hf018cea_1 + - krb5=1.19.2=hcfbf3a7_3 + - lcms2=2.12=h577c468_0 + - ld64=609=hd2e7500_5 + - ld64_osx-64=609=h6adca69_5 + - lerc=3.0=he49afe7_0 + - libblas=3.9.0=12_osx64_mkl + - libbrotlicommon=1.0.9=h0d85af4_6 + - libbrotlidec=1.0.9=h0d85af4_6 + - libbrotlienc=1.0.9=h0d85af4_6 + - libcblas=3.9.0=12_osx64_mkl + - libclang-cpp11.1=11.1.0=default_he082bbe_1 + - libcurl=7.81.0=hf45b732_0 + - libcxx=12.0.0=h2f01273_0 + - libdeflate=1.8=h0d85af4_0 + - libedit=3.1.20210910=hca72f7f_0 + - libev=4.33=haf1e3a3_1 + - libffi=3.3=hb1e8313_2 + - libgfortran=5.0.0=9_3_0_h6c81a4c_23 + - libgfortran-devel_osx-64=9.3.0=h6c81a4c_23 + - libgfortran5=9.3.0=h6c81a4c_23 + - libiconv=1.16=haf1e3a3_0 + - liblapack=3.9.0=12_osx64_mkl + - libllvm11=11.1.0=hd011deb_2 + - libnetcdf=4.8.1=nompi_h6609ca0_101 + - libnghttp2=1.43.0=h6f36284_1 + - libpng=1.6.37=h7cec526_2 + - libssh2=1.10.0=h52ee1ee_2 + - libtiff=4.3.0=hd146c10_2 + - libwebp-base=1.2.1=h0d85af4_0 + - libxcb=1.13=h0d85af4_1004 + - libzip=1.8.0=h8b0c345_1 + - libzlib=1.2.11=h9173be1_1013 + - llvm-openmp=12.0.1=hda6cdc1_1 + - llvm-tools=11.1.0=hd011deb_2 + - lz4-c=1.9.3=he49afe7_1 + - matplotlib-base=3.5.1=py39hb07454d_0 + - mdanalysis=2.0.0=py39h9fcab8e_1 + - mdtraj=1.9.7=py39h996af62_1 + - mkl=2021.4.0=hecd8cb5_637 + - mkl-service=2.4.0=py39h9ed2024_0 + - mkl_fft=1.3.1=py39h4ab4a9b_0 + - mkl_random=1.2.2=py39hb2f4e1b_0 + - mmtf-python=1.1.2=py_0 + - mock=4.0.3=py39h6e9494a_2 + - mpc=1.2.1=hbb51d92_0 + - mpfr=4.1.0=h0f52abe_1 + - msgpack-python=1.0.3=py39hf018cea_0 + - munkres=1.1.4=pyh9f0ad1d_0 + - ncurses=6.3=hca72f7f_2 + - netcdf-fortran=4.5.4=nompi_h9ed14b0_100 + - netcdf4=1.5.8=nompi_py39he7d1c46_101 + - networkx=2.6.3=pyhd8ed1ab_1 + - numexpr=2.8.0=py39h4d6be9b_0 + - numpy=1.21.2=py39h4b4dc7a_0 + - numpy-base=1.21.2=py39he0bd621_0 + - ocl_icd_wrapper_apple=1.0.0=hbcb3906_0 + - olefile=0.46=pyh9f0ad1d_1 + - openjpeg=2.4.0=h6e7aa92_1 + - openmm=7.7.0=py39h8d72adf_0_khronos + - openssl=1.1.1l=h0d85af4_0 + - packaging=21.3=pyhd8ed1ab_0 + - packmol=20.010=h508aa58_0 + - pandas=1.3.5=py39h4d6be9b_0 + - patsy=0.5.2=pyhd8ed1ab_0 + - perl=5.32.1=1_h0d85af4_perl5 + - pillow=8.4.0=py39he9bb72f_0 + - pip=21.2.4=py39hecd8cb5_0 + - pthread-stubs=0.4=hc929b4f_1001 + - pyparsing=3.0.6=pyhd8ed1ab_0 + - pytables=3.6.1=py39hfd850c7_5 + - python=3.9.7=h88f2d9e_1 + - python-dateutil=2.8.2=pyhd8ed1ab_0 + - python_abi=3.9=2_cp39 + - pytz=2021.3=pyhd8ed1ab_0 + - readline=8.1=h05e3726_0 + - scikit-learn=1.0.2=py39hd4eea88_0 + - scipy=1.7.3=py39h056f1c0_0 + - seaborn=0.11.2=hd8ed1ab_0 + - seaborn-base=0.11.2=pyhd8ed1ab_0 + - setuptools=58.0.4=py39hecd8cb5_0 + - sigtool=0.1.2=h504443f_1 + - six=1.16.0=pyhd3eb1b0_0 + - snappy=1.1.8=hb1e8313_3 + - sqlite=3.37.0=h707629a_0 + - statsmodels=0.13.1=py39hc89836e_0 + - tapi=1100.0.11=h9ce4665_0 + - threadpoolctl=3.0.0=pyh8a188c0_0 + - tk=8.6.11=h7bc2e8c_0 + - tqdm=4.62.3=pyhd8ed1ab_0 + - tzdata=2021e=hda174b7_0 + - wheel=0.37.1=pyhd3eb1b0_0 + - xorg-kbproto=1.0.7=h35c211d_1002 + - xorg-libice=1.0.10=h0d85af4_0 + - xorg-libsm=1.2.3=h0d85af4_1000 + - xorg-libx11=1.7.2=h0d85af4_0 + - xorg-libxau=1.0.9=h35c211d_0 + - xorg-libxdmcp=1.1.3=h35c211d_0 + - xorg-libxext=1.3.4=h0d85af4_1 + - xorg-libxt=1.2.1=h0d85af4_2 + - xorg-xextproto=7.3.0=h35c211d_1002 + - xorg-xproto=7.0.31=h35c211d_1007 + - xz=5.2.5=h1de35cc_0 + - zlib=1.2.11=h9173be1_1013 + - zstd=1.5.1=h582d3a0_0 + - pip: + - amberlite==16.0 + - amberutils==21.0 + - jinja2==3.0.3 + - markupsafe==2.0.1 + - mmpbsa-py==16.0 + - packmol-memgen==1.2.1rc0 + - parmed==3.2.0 + - pdb4amber==20.1 + - peptidebuilder==1.1.0 + - pytraj==2.0.6 + - sander==16.0 + - seqfold==0.7.11 + diff --git a/interfaces.py b/interfaces.py index 44648bb..da089a0 100644 --- a/interfaces.py +++ b/interfaces.py @@ -1,94 +1,201 @@ -''' +""" interfaces for other major software used by OpenDNA -Macromolecule builder (mmb) +MacroMolecule Builder (MMB) +PeptideBuilder: installed by pip OpenMM (omm) LightDock (ld) -''' +NUPACK +""" + from shutil import copyfile +from numpy import pi +from nupack import * + +from openmm import * +from openmm.app import * +import openmm.unit as unit + from utils import * from analysisTools import * -from simtk.openmm import * -import simtk.unit as unit -from simtk.openmm.app import * -from numpy import pi -''' -=> write docstrings -=> clean up functions & formatting -=> test -''' +# installed openmm: http://docs.openmm.org/7.5.0/userguide/application.html#installing-openmm +# openmm is installed as an individual package; +# package simtk is created with packages "openmm" and "unit" inside but literally import the stand-alone openmm. + + +class nupack: + def __init__(self, aptamerSeq, temperature, ionicStrength, mgConc=0): + self.aptamerSeq = aptamerSeq + self.temperature = temperature + self.naConc = ionicStrength + self.mgConc = mgConc + self.R = 0.0019872 # ideal gas constant in kcal/mol/K + + def run(self): + self.energyCalc() + self.structureAnalysis() + return self.ssDict + + def energyCalc(self): + """ + aptamerSeq is in FASTA format + temperature in C or K + ionicStrength in Molar + Ouput a lot of analysis results in self.output + :return: + """ + if self.temperature > 273: # auto-detect Kelvins + gap = 2 * self.R * self.temperature + CelsiusTemprature = self.temperature - 273 + else: + gap = 2 * self.R * (self.temperature + 273) # convert to Kelvin fir kT + CelsiusTemprature = self.temperature + + A = Strand(self.aptamerSeq, name='A') + comp = Complex([A], name='AA') + set1 = ComplexSet(strands=[A], complexes=SetSpec(max_size=1, include=[comp])) + model1 = Model(material='dna', celsius=CelsiusTemprature, sodium=self.naConc, magnesium=self.mgConc) + results = complex_analysis(set1, model=model1, compute=['pfunc', 'mfe', 'subopt', 'pairs'], options={'energy_gap': gap}) + self.output = results[comp] + # TODO: what do these nupack functions do? + + def structureAnalysis(self): + """ + Input nupack structure. return a bunch of analysis results + :return: + """ + nStructures = len(self.output.subopt) + self.ssDict = {} + self.ssDict['2d string'] = [] + self.ssDict['pair list'] = [] + self.ssDict['config'] = np.zeros((nStructures, len(self.aptamerSeq))) + self.ssDict['num pairs'] = np.zeros(nStructures).astype(int) + self.ssDict['pair frac'] = np.zeros(nStructures) + self.ssDict['num pins'] = np.zeros(nStructures).astype(int) + self.ssDict['state prob'] = np.zeros(nStructures) + + for i in range(nStructures): + ssString = str(self.output.subopt[i].structure) + self.ssDict['2d string'].append(ssString) + self.ssDict['pair list'].append(ssToList(ssString)) + self.ssDict['config'][i] = pairListToConfig(self.ssDict['pair list'][-1], len(self.aptamerSeq)) + self.ssDict['state prob'][i] = np.exp(-self.output.subopt[i].energy / self.R / self.temperature / float(self.output.pfunc)) + self.ssDict['num pairs'][i] = ssString.count('(') # number of pairs + self.ssDict['pair frac'][i] = 2 * self.ssDict['num pairs'][i] / len(self.aptamerSeq) + + nPins = 0 # number of distinct hairpins + indA = 0 + for j in range(len(self.aptamerSeq)): + if ssString[j] == '(': + indA += 1 + elif ssString[j] == ')': + indA -= 1 + if indA == 0: # if we come to the end of a distinct hairpin + nPins += 1 + + self.ssDict['num pins'][i] = nPins -class mmb(): # macromolecule builder - def __init__(self, sequence, pairList, params, ind1, intervalLength=None): +class mmb: # MacroMolecule Builder (MMB) + def __init__(self, aptamerSeq, pairList, params, ind1, intervalLength=None): if params['fold speed'] == 'quick': - self.template = 'commands.template_quick.dat' # only for debugging runs - very short + self.template = 'commands.template_quick.dat' # can be used for debugging runs - very short elif params['fold speed'] == 'normal': - self.template = 'commands.template.dat' # default folding algorithm + self.template = 'commands.template.dat' # default folding algorithm elif params['fold speed'] == 'long': - self.template = 'commands.template_long.dat' # extended annealing - for difficult sequences + self.template = 'commands.template_long.dat' # extended annealing - for difficult sequences self.comFile = 'commands.run_fold.dat' self.foldSpeed = params['fold speed'] - self.sequence = sequence + self.aptamerSeq = aptamerSeq self.temperature = params['temperature'] self.pairList = pairList self.mmbPath = params['mmb'] - + + # Conditions used to decide how to run MMB executable + self.device = params['device'] # 'local' or 'cluster' + self.devicePlatform = params['device platform'] # 'macos' or 'linux' or 'WSL' + self.mmbDylibPath = params['mmb dir'] + self.ind1 = ind1 + self.foldedAptamerSeq = 'foldedAptamer_{}.pdb'.format(ind1) # output structures of MMB + self.intervalLength = intervalLength + self.fileDump = 'mmbFiles_%d' % self.ind1 # directory to save the mmb run files - self.foldedSequence = 'foldedSequence_{}.pdb'.format(ind1) + self.foldFidelity = 0 - self.intervalLength = intervalLength - - self.fileDump = 'mmbFiles_%d'%self.ind1 + def run(self): + self.generateCommandFile() + self.fold() + self.check2DAgreement() + + return self.MDAfoldFidelity, self.MMBfoldFidelity def generateCommandFile(self): - copyfile(self.template, self.comFile) # make command file - replaceText(self.comFile, 'SEQUENCE', self.sequence) - replaceText(self.comFile, 'TEMPERATURE', str(self.temperature - 273)) # probably not important, but we can add the temperature in C + copyfile(self.template, self.comFile) # make a command file + replaceText(self.comFile, 'SEQUENCE', self.aptamerSeq) + replaceText(self.comFile, 'TEMPERATURE', str(self.temperature - 273)) # probably not important, but we can add the temperature in C + if self.foldSpeed == 'long': replaceText(self.comFile, 'INTERVAL', str(self.intervalLength)) - baseString = '#baseInteraction A IND WatsonCrick A IND2 WatsonCrick Cis' - lineNum = findLine(self.comFile, baseString) # find the line number to start enumerating base pairs + baseString = '#baseInteraction A IND WatsonCrick A IND2 WatsonCrick Cis' + lineNum = findLine(self.comFile, baseString) # this line defines the attractive forces in MMB for i in range(len(self.pairList)): filledString = 'baseInteraction A {} WatsonCrick A {} WatsonCrick Cis'.format(self.pairList[i, 0], self.pairList[i, 1]) addLine(self.comFile, filledString, lineNum + 1) def fold(self): - # run fold - sometimes this errors for no known reason - keep trying till it works - Result = None + # run fold - sometimes this errors for no known reasons - keep trying till it works + result = None attempts = 0 - while (Result is None) and (attempts < 100): + while (result is None) and (attempts < 100): try: - attempts += 1 - os.system(self.mmbPath + ' -c ' + self.comFile + ' > outfiles/fold.out') - os.replace('frame.pdb', self.foldedSequence) - - Result = 1 - # cleanup - self.fileDump = 'mmbFiles_%d'%self.ind1 - os.mkdir(self.fileDump) + attempts += 1 + if (self.device == 'local') and (self.devicePlatform == 'macos'): # special care for macos. Assume no cluster is on macos + os.system('export DYLD_LIBRARY_PATH=' + self.mmbDylibPath + ';' + self.mmbPath + ' -c ' + self.comFile + ' > outfiles/fold.out') + else: # linux or WSL: "LD_LIBRARY_PATH" is specified in opendna.py ('local') or sub.sh ('cluster') + os.system(self.mmbPath + ' -c ' + self.comFile + ' > outfiles/fold.out') # should we append new outputs to the fold.out? + os.replace('frame.pdb', self.foldedAptamerSeq) + result = 1 + + # clean up + self.fileDump = 'mmbFiles_%d' % self.ind1 + if os.path.isdir('./' + self.fileDump): # this is refolding the aptamer + self.fileDump = self.fileDump + '/refolding' + if os.path.isdir('./' + self.fileDump): + pass + else: + os.mkdir(self.fileDump) + else: + os.mkdir(self.fileDump) os.system('mv last* ' + self.fileDump) - os.system('mv trajectory.* ' + self.fileDump) - os.system('mv match.* ' + self.fileDump) - - except: + os.system('mv trajectory.* ' + self.fileDump) + # os.system('mv watch.* ' + self.fileDump) + os.system('mv match.4*.pdb ' + self.fileDump) # the intermediate files are updated during each stage + except: # TODO look up this warning: "do not use bare except; Too broad except clause" pass def check2DAgreement(self): - ''' + """ check agreement between prescribed 2D structure and the actual fold - ''' - ''' do it with mda - u = mda.Universe(self.foldedSequence) + :return: + """ + # do it with MDA: MDAnalysis + u = mda.Universe(self.foldedAptamerSeq) + # extract distance info through the trajectory wcTraj = getWCDistTraj(u) # watson-crick base pairing distances (H-bonding) - pairTraj = getPairTraj(wcTraj) - trueConfig = pairListToConfig(self.pairList, len(self.sequence)) - foldDiscrepancy = getSecondaryStructureDistance([pairTraj[0],trueConfig])[0,1] - self.foldFidelity = 1-foldDiscrepancy # return the fraction of correctly paired bases - ''' + pairTraj = getPairTraj(wcTraj) + + # 2D structure analysis + secondaryStructure = analyzeSecondaryStructure(pairTraj) # find equilibrium secondary structure + printRecord('2D structure after MMB folding (from MDAnalysis): ' + configToString(secondaryStructure)) + + # MDAnalysis: fidelity score + trueConfig = pairListToConfig(self.pairList, len(self.aptamerSeq)) + foldDiscrepancy = getSecondaryStructureDistance([pairTraj[0], trueConfig])[0,1] + self.MDAfoldFidelity = 1-foldDiscrepancy + # do it with MMB f = open('outfiles/fold.out') text = f.read() @@ -96,147 +203,59 @@ def check2DAgreement(self): text = text.split('\n') scores = [] for i in range(len(text)): - if "Satisfied baseInteraction's" in text[i]: + if "Satisfied baseInteraction's" in text[i]: # eg, Satisfied baseInteraction's: : 8 out of : 13 line = text[i].split(':') numerator = float(line[-2].split(' ')[1]) denominator = float(line[-1]) - if denominator == 0: # if there are no pairs, the denominator will be zero (no constraints) - scores.append(1) + if denominator == 0: # if there are no pairs, there are no constraints + scores.append(1) # then ofc, any folded structure satisfies no constraints. else: scores.append(numerator/denominator) scores = np.asarray(scores) - self.foldFidelity = np.amax(scores) - - def run(self): - self.generateCommandFile() - self.fold() - self.check2DAgreement() - - return self.foldFidelity - - -class ld(): # lightdock - def __init__(self, aptamer, peptide, params, ind1): - self.setupPath = params['ld setup path'] - self.runPath = params['ld run path'] - self.genPath = params['lgd generate path'] - self.clusterPath = params['lgd cluster path'] - self.rankPath = params['lgd rank path'] - self.topPath = params['lgd top path'] - - self.aptamerPDB = aptamer - self.peptidePDB = peptide - - self.glowWorms = 300 # params['glowworms'] - self.dockingSteps = params['docking steps'] - self.numTopStructures = params['N docked structures'] - - self.pH = params['pH'] - - self.ind1 = ind1 - - def getSwarmCount(self): - # identify aptamer size - dimensions = getMoleculeSize(self.aptamerPDB) - # compute surface area of rectangular prism with no offset - surfaceArea = 2 * (dimensions[0] * dimensions[1] + dimensions[1] * dimensions[2] + dimensions[2] * dimensions[1]) # in angstroms - # compute number of swarms which cover this surface area - swarms are spheres 2 nm in diameter - this is only approximately the right number of swarms, since have no offset, and are using a rectangle - nSwarms = np.ceil(surfaceArea / (np.pi * 10 ** 2)) + self.MMBfoldFidelity = np.amax(scores) # the score would increase with more and more stages - self.swarms = int(nSwarms) # number of glowworm swarms - - def prepPDBs(self): - killH(self.aptamerPDB) # DNA needs to be deprotonated - addH(self.peptidePDB, self.pH) # peptide needs to be hydrogenated - self.aptamerPDB2 = self.aptamerPDB.split('.')[0] + "_noH.pdb" - self.peptidePDB2 = self.peptidePDB.split('.')[0] + "_H.pdb" - changeSegment(self.peptidePDB2, 'A', 'B') - - def runLightDock(self): - # run setup - os.system(self.setupPath + ' ' + self.aptamerPDB2 + ' ' + self.peptidePDB2 + ' -s ' + str(self.swarms) + ' -g ' + str(self.glowWorms) + ' >> outfiles/lightdockSetup.out') - - # run docking - os.system(self.runPath + ' setup.json ' + str(self.dockingSteps) + ' -s dna >> outfiles/lightdockRun.out') - - def generateAndCluster(self): - # generate docked structures and cluster them - for i in range(self.swarms): - os.chdir('swarm_%d' % i) - os.system(self.genPath + ' ../' + self.aptamerPDB2 + ' ../' + self.peptidePDB2 + ' gso_%d' % self.dockingSteps + '.out' + ' %d' % self.glowWorms + ' > /dev/null 2> /dev/null; >> generate_lightdock.list') # generate configurations - os.system(self.clusterPath + ' gso_%d' % self.dockingSteps + '.out >> cluster_lightdock.list') # cluster glowworms - os.chdir('../') - - def rank(self): - os.system(self.rankPath + ' %d' % self.swarms + ' %d' % self.dockingSteps + ' >> outfiles/ld_rank.out') # rank the clustered docking setups - - def extractTopStructures(self): - # generate top structures - os.system(self.topPath + ' ' + self.aptamerPDB2 + ' ' + self.peptidePDB2 + ' rank_by_scoring.list %d' % self.numTopStructures + ' >> outfiles/ld_top.out') - os.mkdir('top_%d'%self.ind1) - os.system('mv top*.pdb top_%d'%self.ind1 + '/') # collect top structures (clustering currently dubiously working) - def extractTopScores(self): - self.topScores = readInitialLines('rank_by_scoring.list', self.numTopStructures + 1)[1:] - for i in range(len(self.topScores)): - self.topScores[i] = float(self.topScores[i].split(' ')[-1]) # get the last number, which is the score +# openmm +class omm: + def __init__(self, structurePDB, params, simTime=None, binding=False, implicitSolvent=False): + """ + pass on the pre-set and user-defined params to openmm engine + """ + self.structureName = structurePDB.split('.')[0] # e.g., structurePDB: relaxedAptamer_0_amb_processed.pdb or complex_1_2_processed.pdb + self.chkFile = params['chk file'] # if not resuming the simulation, it is empty string "" - return self.topScores - - def run(self): - self.getSwarmCount() - self.prepPDBs() - self.runLightDock() - self.generateAndCluster() - self.rank() - self.extractTopStructures() - self.extractTopScores() - # cleanup - dir = 'lightdockOutputs_{}'.format(self.ind1) - os.mkdir(dir) - os.system('mv swarm* ' + dir) - os.system('mv lightdock_* ' + dir) - os.system('mv setup.json ' + dir) - os.system('mv *.list ' + dir) - os.system('mv lightdock.info ' + dir) - os.system('mv init ' + dir) + if implicitSolvent is False: + self.pdb = PDBFile(structurePDB) + self.waterModel = params['water model'] + self.forcefield = ForceField('amber14-all.xml', 'amber14/' + self.waterModel + '.xml') -class omm(): # openmm - def __init__(self, structure, params, simTime=None): - self.pdb = PDBFile(structure) - self.structureName = structure.split('.')[0] - self.waterModel = params['water model'] - self.forcefield = ForceField('amber14-all.xml', 'amber14/' + self.waterModel + '.xml') - self.peptide = params['peptide'] - self.sequence = params['sequence'] - - # System Configuration - self.nonbondedMethod = params['nonbonded method'] + # System configuration + self.nonbondedMethod = params['nonbonded method'] # Currently PME!!! It's used with periodic boundary condition applied self.nonbondedCutoff = params['nonbonded cutoff'] * unit.nanometer self.ewaldErrorTolerance = params['ewald error tolerance'] self.constraints = params['constraints'] self.rigidWater = params['rigid water'] self.constraintTolerance = params['constraint tolerance'] self.hydrogenMass = params['hydrogen mass'] * unit.amu - - # Integration Options - self.dt = params['time step'] / 1000 * unit.picoseconds self.temperature = params['temperature'] * unit.kelvin - self.friction = params['friction'] / unit.picosecond + # Integration options + self.dt = params['time step'] / 1000 * unit.picosecond + self.quickSim = params['test mode'] - # Simulation Options - if simTime != None: # we can override the simulation time here - self.steps = int(simTime * 1e6 // params['time step']) # - self.equilibrationSteps = int(params['equilibration time'] * 1e6 // params['time step']) - - else: + # Simulation options + self.timeStep = params['time step'] # fs + self.equilibrationSteps = int(params['equilibration time'] * 1e6 // params['time step']) + if simTime is not None: # override the default "sampling time": e.g., when running smoothing. + self.steps = int(simTime * 1e6 // params['time step']) + self.simTime = simTime + else: # default sampling time = params['sampling time'] self.steps = int(params['sampling time'] * 1e6 // params['time step']) # number of steps - self.equilibrationSteps = int(params['equilibration time'] * 1e6 // params['time step']) - - #platform + self.simTime = params['sampling time'] + + # Platform if params['platform'] == 'CUDA': # 'CUDA' or 'cpu' self.platform = Platform.getPlatformByName('CUDA') if params['platform precision'] == 'single': @@ -246,60 +265,127 @@ def __init__(self, structure, params, simTime=None): else: self.platform = Platform.getPlatformByName('CPU') - self.reportSteps = int(params['print step'] * 1000 / params['time step']) # report step in ps, time step in fs + # Can resumed run append the old log.txt or .dcd file? + self.reportSteps = int(params['print step'] * 1000 / params['time step']) # report steps in ps, time step in fs self.dcdReporter = DCDReporter(self.structureName + '_trajectory.dcd', self.reportSteps) - #self.pdbReporter = PDBReporter(self.structureName + '_trajectory.pdb', self.reportSteps) # huge files - self.dataReporter = StateDataReporter('log.txt', self.reportSteps, totalSteps=self.steps, step=True, speed=True, progress=True, potentialEnergy=True, kineticEnergy=True, totalEnergy=True, temperature=True, separator='\t') - self.checkpointReporter = CheckpointReporter(structure.split('.')[0] + '_state.chk', 10000) - - # Prepare the Simulation - #printRecord('Building system...') # waste of space - self.topology = self.pdb.topology - self.positions = self.pdb.positions - self.system = self.forcefield.createSystem(self.topology, nonbondedMethod=self.nonbondedMethod, nonbondedCutoff=self.nonbondedCutoff, constraints=self.constraints, rigidWater=self.rigidWater, ewaldErrorTolerance=self.ewaldErrorTolerance, hydrogenMass=self.hydrogenMass) - - for atom in self.topology.atoms(): - if atom.residue.name == 'Y' or atom.residue.name == 'TYR': - printRecord("The first amino acid of the peptide (TYR) belongs to chain ID = " + str(atom.residue.chain.index)) - - if (params['peptide backbone constraint constant'] != 0) and ('CA' in [atom.name for atom in self.topology.atoms()]): + # self.pdbReporter = PDBReporter(self.structureName + '_trajectory.pdb', self.reportSteps) # huge files + if simTime is None: + if binding is True: + logFileName = 'log_complex.txt' + else: + logFileName = 'log.txt' + else: # MD smoothing: simTime is specified as 'smoothing time' + logFileName = 'log_smoothing.txt' + self.dataReporter = StateDataReporter(logFileName, self.reportSteps, totalSteps=self.steps, step=True, speed=True, progress=True, potentialEnergy=True, kineticEnergy=True, totalEnergy=True, temperature=True, volume=True, density=True,separator='\t') + + if (params['pick up from freeAptamerChk'] is False) and (params['pick up from complexChk'] is False): # or if not self.chkFile: + self.checkpointReporter = CheckpointReporter(self.structureName + '_state.chk', 10000) + else: # ie, we are resuming a sampling, chkFile must exist. + self.checkpointReporter = CheckpointReporter(self.chkFile, 10000) + + # Prepare the simulation + if implicitSolvent is False: + self.topology = self.pdb.topology + self.positions = self.pdb.positions + printRecord('Creating a simulation system under explicit solvent') + + self.system = self.forcefield.createSystem(self.topology, nonbondedMethod=self.nonbondedMethod, nonbondedCutoff=self.nonbondedCutoff, constraints=self.constraints, rigidWater=self.rigidWater, hydrogenMass=self.hydrogenMass, ewaldErrorTolerance=self.ewaldErrorTolerance) + # ewaldErrorTolerance: as "**args": Arbitrary additional keyword arguments may also be specified. This allows extra parameters to be specified that are specific to particular force fields. + + else: # create a system using prmtop file and use implicit solvent + self.prmtop = AmberPrmtopFile(self.structureName + '.top') # e.g. foldedAptamer_amb_processed.top or relaxedAptamer_0_amb_processed.top or complex_1_2_amb_processed.pdb + self.inpcrd = AmberInpcrdFile(self.structureName + '.crd') + self.topology = self.prmtop.topology + self.positions = self.inpcrd.positions + printRecord('Creating a simulation system under implicit solvent model of {}'.format(params['implicit solvent model'])) + + self.implicitSolventModel = params['implicit solvent model'] + self.implicitSolventSaltConc = params['implicit solvent salt conc'] * (unit.moles / unit.liter) + self.implicitSolventKappa = params['implicit solvent Kappa'] # add this in main_resume/main.py + self.soluteDielectric = params['soluteDielectric'] + self.solventDielectric = params['solventDielectric'] + + self.system = self.prmtop.createSystem(nonbondedMethod=self.nonbondedMethod, nonbondedCutoff=self.nonbondedCutoff, constraints=self.constraints, rigidWater=self.rigidWater, + implicitSolvent=self.implicitSolventModel, implicitSolventSaltConc=self.implicitSolventSaltConc, implicitSolventKappa=self.implicitSolventKappa, temperature=self.temperature, + soluteDielectric=self.soluteDielectric, solventDielectric=self.solventDielectric, removeCMMotion=True, hydrogenMass=self.hydrogenMass, ewaldErrorTolerance=self.ewaldErrorTolerance, switchDistance=0.0*unit.nanometer) + ''' + temperature : + Temperture of the system, only used to compute the Debye length from implicitSolventSoltConc + implicitSolventSaltConc : + Concentration of all cations (or anions): because it's to replace ionic strength, which = [cation] = [anion] for any monovalent electrolyte + The salt concentration for GB calculations (modelled as a debye screening parameter). + It's converted to the debye length (kappa) using the provided temperature and solventDielectric + implicitSolventKappa: + float unit of 1/length: 1/angstroms. No need to * unit.xxx; + If this value is set, implicitSolventSaltConc will be ignored. + If not set, it's calculated as follows in OpenMM: + implicitSolventKappa = 50.33355 * sqrt(implicitSolventSaltConc / solventDielectric / temperature) + # The constant is 1 / sqrt( epsilon_0 * kB / (2 * NA * q^2 * 1000) ), + # where NA is avogadro's number, epsilon_0 is the permittivity of free space, q is the elementary charge (this number matches Amber's kappa conversion factor) + # The equation above is for Debye screening parameter, Kappa, for a monovalent electrolyte in an electrolyte or a colloidal suspension. Debye length = 1/Kappa + # Then Multiply by 0.73 to account for ion exclusions, and multiply by 10 to convert to 1/nm from 1/angstroms + implicitSolventKappa *= 7.3 + soluteDielectric : + The solute dielectric constant to use in the implicit solvent model. + Default value = 1.0, meaning no screening effect at all. + solventDielectric : + The solvent dielectric constant to use in the implicit solvent model. + Default value = 78.5, which is the value for water. + This offers a way to model non-aqueous system. + rigidWater: default = True + If true, water molecules will be fully rigid regardless of the value passed for the constraints argument. + Even using implicit solvent models, the simulation system could still contain water molecules, but just not from the solvent. + switchDistance: + The distance at which the potential energy switching function is turned on for Lennard-Jones interactions. + If the switchDistance is 0 or evaluates to boolean False, no switching function will be used. + Values greater than nonbondedCutoff or less than 0 raise ValueError + ''' + if self.inpcrd.boxVectors is not None: + self.simulation.context.setPeriodicBoxVectors(*self.inpcrd.boxVectors) + + # Apply constraint if specified so + if params['peptide backbone constraint constant'] != 0: self.force = CustomTorsionForce('0.5*K*dtheta^2; dtheta = min(diff, 2*' + str(round(pi, 3)) + '-diff); diff = abs(theta - theta0)') self.force.addGlobalParameter('K', params['peptide backbone constraint constant']) self.force.addPerTorsionParameter('theta0') - + self.angles_to_constrain = findAngles() - + self.phi_tup = ('C', 'N', 'CA', 'C') self.psi_tup = ('N', 'CA', 'C', 'N') self.angle_tups = self.phi_tup, self.psi_tup + radians = unit.radians - + rad_conv = pi / 180 self.nchains = len(self.topology._chains) - + printRecord("Number of chains = " + str(self.nchains)) printRecord("Beginning to iterate through chains...\n") - + for row in self.angles_to_constrain: aa_id, phi, psi, chain_id = row[0], row[1], row[2], row[3] aa_id, phi, psi, chain_id = int(aa_id), float(phi), float(psi), int(chain_id) - + printRecord(f"aa_id = {aa_id}, phi = {phi}, psi = {psi}, chain_id = {chain_id}") printRecord("Printing first 5 atoms in topology.atoms()...") - - first5 = [atom for atom in self.topology.atoms()] - first5 = first5[:5] - - for atom in first5: - printRecord(f"Atom name={atom.name}, Atom residue chain index = {atom.residue.chain.index}, Atom residue index = {atom.residue.index}") - self.da_atoms = [atom for atom in self.topology.atoms() if atom.residue.chain.index == chain_id and atom.name in {'N', 'CA', 'C'} and atom.residue.index - len(self.sequence) in {aa_id, aa_id - 1}] + # first5 = [atom for atom in self.topology.atoms()] + # first5 = first5[:5] + + # for atom in first5: + # printRecord(f"Atom name={atom.name}, Atom residue chain index = {atom.residue.chain.index}, Atom residue index = {atom.residue.index}") + + self.da_atoms = [atom for atom in self.topology.atoms() if + atom.residue.chain.index == chain_id and atom.name in {'N', 'CA', + 'C'} and atom.residue.index in { + aa_id, aa_id - 1}] printRecord("Identified da_atoms.\n") # aa_id - 1 is included to account for the atoms in the previous residue being part of the current residue's dihedrals - printRecord("da_atoms length = " + str(len(self.da_atoms))) # returns 0 for some reason + printRecord("da_atoms length = " + str(len(self.da_atoms))) # returns 0 for some reason for i in range(len(self.da_atoms) - 3): self.tup = tuple([atom.name for atom in self.da_atoms[i:i + 4]]) @@ -310,134 +396,177 @@ def __init__(self, structure, params, simTime=None): printRecord("Beginning to add torsions...\n") if self.tup == self.phi_tup: - self.force.addTorsion(self.tupIndex[0], - self.tupIndex[1], - self.tupIndex[2], + self.force.addTorsion(self.tupIndex[0], + self.tupIndex[1], + self.tupIndex[2], self.tupIndex[3], (phi * rad_conv,) * radians) printRecord("Successfully added a phi torsion restraint.\n") elif self.tup == self.psi_tup: - self.force.addTorsion(self.tupIndex[0], - self.tupIndex[1], - self.tupIndex[2], + self.force.addTorsion(self.tupIndex[0], + self.tupIndex[1], + self.tupIndex[2], self.tupIndex[3], (psi * rad_conv,) * radians) printRecord("Successfully added a phi torsion restraint.\n") self.system.addForce(self.force) printRecord("Successfully added the force.\n") - - self.integrator = LangevinMiddleIntegrator(self.temperature, self.friction, self.dt) - self.integrator.setConstraintTolerance(self.constraintTolerance) + # done with constraint + + # # Need to create a Simulation class, even to load checkpoint file + # self.integrator = LangevinMiddleIntegrator(self.temperature, self.friction, self.dt) # another object + # print("Using LangevinMiddleIntegrator integrator, at T={}.".format(self.temperature)) + self.friction = params['friction'] / unit.picosecond + self.integrator = LangevinIntegrator(self.temperature, self.friction, self.dt) # another object + printRecord("Using LangevinIntegrator integrator, at T={}.".format(self.temperature)) + + self.integrator.setConstraintTolerance(self.constraintTolerance) # What is this tolerance for? For constraint? + if params['platform'] == 'CUDA': self.simulation = Simulation(self.topology, self.system, self.integrator, self.platform, self.platformProperties) elif params['platform'] == 'CPU': self.simulation = Simulation(self.topology, self.system, self.integrator, self.platform) - self.simulation.context.setPositions(self.positions) - - printRecord("Positions set.") + + if (params['pick up from freeAptamerChk'] is False) and (params['pick up from complexChk'] is False): + self.simulation.context.setPositions(self.positions) + printRecord("Initial positions set.") + else: + pass # if resuming a run, the initial position comes from the chk file. - def doMD(self): - if not os.path.exists(self.structureName.split('.')[0] + '_state.chk'): + def doMD(self): # no need to be aware of the implicitSolvent + # if not os.path.exists(self.structureName + '_state.chk'): + if not self.chkFile: # "self.chkFile is not empty" is equivalent to "either params['pick up from freeAptamerChk'] or params['pick up from complexChk'] is True" + # User did not specify a .chk file ==> we are doing a fresh sampling, not resuming. # Minimize and Equilibrate printRecord('Performing energy minimization...') - if self.quickSim: # if want to do it fast, loosen the tolerances - self.simulation.minimizeEnergy(tolerance = 20, maxIterations = 100) # default is 10 kJ/mol - also set a max number of iterations + if self.quickSim: # if want to do it fast, loosen the tolerances + self.simulation.minimizeEnergy(tolerance=20, maxIterations=100) # default is 10 kJ/mol - also set a max number of iterations else: - self.simulation.minimizeEnergy() # (tolerance = 1 * unit.kilojoules / unit.mole) - printRecord('Equilibrating...') + self.simulation.minimizeEnergy() # (tolerance = 1 * unit.kilojoules / unit.mole) + printRecord('Equilibrating({} steps, time step={} fs)...'.format(self.equilibrationSteps, self.timeStep)) self.simulation.context.setVelocitiesToTemperature(self.temperature) self.simulation.step(self.equilibrationSteps) else: - self.simulation.loadCheckpoint(self.structureName.split('.')[0] + '_state.chk') + # Resume a sampling: no need to minimize and equilibrate + printRecord("Loading checkpoint file: " + self.chkFile + " to resume sampling") + self.simulation.loadCheckpoint(self.chkFile) # Resume the simulation - # Simulate - printRecord('Simulating...') + # Simulation + printRecord('Simulating({} steps, time step={} fs, simTime={} ns)...'.format(self.steps, self.timeStep, self.simTime)) self.simulation.reporters.append(self.dcdReporter) - #self.simulation.reporters.append(self.pdbReporter) + # self.simulation.reporters.append(self.pdbReporter) self.simulation.reporters.append(self.dataReporter) self.simulation.reporters.append(self.checkpointReporter) self.simulation.currentStep = 0 with Timer() as md_time: self.simulation.step(self.steps) # run the dynamics - self.simulation.saveCheckpoint(self.structureName.split('.')[0] + '_state.chk') + # Update the chk file with info from the final step + if not self.chkFile: + # User did not specify a .chk file ==> we are doing a fresh sampling, not resuming. + self.simulation.saveCheckpoint(self.structureName + '_state.chk') + else: + self.simulation.saveCheckpoint(self.chkFile) self.ns_per_day = (self.steps * self.dt) / (md_time.interval * unit.seconds) / (unit.nanoseconds / unit.day) - + return self.ns_per_day + def extractLastFrame(self, lastFrameFileName): + lastpositions = self.simulation.context.getState(getPositions=True).getPositions() + PDBFile.writeFile(self.topology, lastpositions, open(lastFrameFileName, 'w')) + printRecord('OpenMM: save the last frame into: {}'.format(lastFrameFileName)) -class nupack(): - def __init__(self, sequence, temperature, ionicStrength, mgConc=0): - self.sequence = sequence - self.temperature = temperature - self.ionicStrength = ionicStrength - self.naConc = ionicStrength - self.mgConc = mgConc - self.R = 0.0019872 # ideal gas constant in kcal/mol/K +class ld: # lightdock + def __init__(self, aptamerPDB, targetPDB, params, ind1): + self.setupPath = params['ld setup path'] # ld_scripts/... there should be a directory ld/scripts in workdir + self.runPath = params['ld run path'] + self.genPath = params['lgd generate path'] + self.clusterPath = params['lgd cluster path'] + self.rankPath = params['lgd rank path'] + self.topPath = params['lgd top path'] - def energyCalc(self): - ''' - sequence is DNA FASTA - temperature in C or K - ionicStrength in M - return a bunch of analysis - ''' - if self.temperature > 273: # auto-detect Kelvins - gap = 2 * self.R * self.temperature - CelsiusTemperature = self.temperature - 273 - else: - gap = 2 * self.R * (self.temperature + 273) # convert to Kelvin for kT - CelsiusTemperature = self.temperature + self.aptamerPDB = aptamerPDB + self.targetPDB = targetPDB - A = Strand(self.sequence, name='A') - comp = Complex([A], name='AA') - set1 = ComplexSet(strands=[A], complexes=SetSpec(max_size=1, include=[comp])) - model1 = Model(material='dna', celsius=CelsiusTemperature, sodium=self.naConc, magnesium=self.mgConc) - results = complex_analysis(set1, model=model1, compute=['pfunc', 'mfe', 'subopt', 'pairs'], options={'energy_gap': gap}) - self.output = results[comp] + self.glowWorms = 300 # params['glowworms'] + self.dockingSteps = params['docking steps'] + self.numTopStructures = params['N docked structures'] + self.pH = params['pH'] - def structureAnalysis(self): - ''' - input nupack structure and return a bunch of analysis - :param nupackStructure: - :return: - ''' - nStructures = len(self.output.subopt) - self.ssDict = {} # best structure dictionary - self.ssDict['2d string'] = [] - self.ssDict['pair list'] = [] - self.ssDict['config'] = np.zeros((nStructures,len(self.sequence))) - self.ssDict['num pairs'] = np.zeros(nStructures).astype(int) - self.ssDict['pair frac'] = np.zeros(nStructures) - self.ssDict['num pins'] = np.zeros(nStructures).astype(int) - self.ssDict['state prob'] = np.zeros(nStructures) + self.ind1 = ind1 - for i in range(nStructures): - ssString = str(self.output.subopt[i].structure) - self.ssDict['2d string'].append(ssString) - self.ssDict['pair list'].append(ssToList(ssString)) - self.ssDict['config'][i] = pairListToConfig(self.ssDict['pair list'][-1],len(self.sequence)) - self.ssDict['state prob'][i] = np.exp(-self.output.subopt[i].energy / self.R / self.temperature) / float(self.output.pfunc) - self.ssDict['num pairs'][i] = ssString.count('(') # number of pairs - self.ssDict['pair frac'][i] = 2 * self.ssDict['num pairs'][i] / len(self.sequence) # fraction of paired bases + def run(self): + self.getSwarmCount() + self.prepPDBs() + self.runLightDock() + self.generateAndCluster() + self.rank() + self.extractTopStructures() + self.extractTopScores() + # cleanup + dir = 'lightdockOutputs_{}'.format(self.ind1) + os.mkdir(dir) + os.system('mv swarm* ' + dir) + os.system('mv lightdock_* ' + dir) + os.system('mv setup.json ' + dir) + os.system('mv *.list ' + dir) + os.system('mv lightdock.info ' + dir) + os.system('mv init ' + dir) - nPins = 0 # number of distinct hairpins - indA = 0 - for j in range(len(self.sequence)): - if ssString[j] == '(': - indA += 1 - elif ssString[j] == ')': - indA -= 1 - if indA == 0: # if we come to the end of a distinct hairpin - nPins += 1 + def getSwarmCount(self): + # identify aptamer size + dimensions = getMoleculeSize(self.aptamerPDB) + # compute surface area of rectangular prism with no offset + surfaceArea = 2 * (dimensions[0] * dimensions[1] + dimensions[1] * dimensions[2] + dimensions[2] * dimensions[1]) # in angstroms + # compute number of swarms which cover this surface area - swarms are spheres 2 nm in diameter - this is only approximately the right number of swarms, since have no offset, and are using a rectangle + nSwarms = np.ceil(surfaceArea / (np.pi * 10 ** 2)) - self.ssDict['num pins'][i] = nPins + self.swarms = int(nSwarms) # number of glowworm swarms - def run(self): - self.energyCalc() - self.structureAnalysis() - return self.ssDict + def prepPDBs(self): # different from prepPDB in utils.py + killH(self.aptamerPDB) # DNA needs to be deprotonated on the phosphate groups + addH(self.targetPDB, self.pH) # peptide needs to be hydrogenated: side chains or terminal amino and carbonate groups? + self.aptamerPDB2 = self.aptamerPDB.split('.')[0] + "_noH.pdb" + self.targetPDB2 = self.targetPDB.split('.')[0] + "_H.pdb" + changeSegment(self.targetPDB2, 'A', 'B') + def runLightDock(self): + # Run setup + os.system(self.setupPath + ' ' + self.aptamerPDB2 + ' ' + self.targetPDB2 + ' -s ' + str(self.swarms) + ' -g ' + str(self.glowWorms) + ' >> outfiles/lightdockSetup.out') + + # Run docking + os.system(self.runPath + ' setup.json ' + str(self.dockingSteps) + ' -s dna >> outfiles/lightdockRun.out') + + def generateAndCluster(self): + # Generate docked structures and cluster them + for i in range(self.swarms): + os.chdir('swarm_%d' % i) + os.system(self.genPath + ' ../' + self.aptamerPDB2 + ' ../' + self.targetPDB2 + ' gso_%d' % self.dockingSteps + '.out' + ' %d' % self.glowWorms + ' > /dev/null 2> /dev/null; >> generate_lightdock.list') # generate configurations + os.system(self.clusterPath + ' gso_%d' % self.dockingSteps + '.out >> cluster_lightdock.list') # cluster glowworms + os.chdir('../') + + def rank(self): + # Rank the clustered docking setups + os.system(self.rankPath + ' %d' % self.swarms + ' %d' % self.dockingSteps + ' >> outfiles/ld_rank.out') + + def extractTopStructures(self): + # Generate top structures + os.system(self.topPath + ' ' + self.aptamerPDB2 + ' ' + self.targetPDB2 + ' rank_by_scoring.list %d' % self.numTopStructures + ' >> outfiles/ld_top.out') + os.mkdir('top_%d'%self.ind1) + os.system('mv top*.pdb top_%d'%self.ind1 + '/') # collect top structures (clustering currently dubiously working) + # If no top*.pdb at all: there will be an warning message: "mv: rename top*.pdb to top_0/top*.pdb: No such file or directory". Will not stop the pipeline though. + + def extractTopScores(self): + self.topScores = [] + topScoresFromFile = readInitialLines('rank_by_scoring.list', self.numTopStructures + 1)[1:] # always read the header but not record to self.topScores + if len(topScoresFromFile) < self.numTopStructures: + printRecord('Number of identified docked structures is less than what you are looking for!') + for i in range(len(topScoresFromFile)): + score = topScoresFromFile[i].split(' ')[-1] # get the last number, which is the score + if type(score) == float: # there is indeed a score + self.topScores.append(float(score)) + printRecord('Number of identified docked structures = {}'.format(len(self.topScores))) + # return self.topScores diff --git a/leap.in b/leap.in new file mode 100644 index 0000000..79232ab --- /dev/null +++ b/leap.in @@ -0,0 +1,7 @@ +# source leaprc.protein.ff14SB +pdb4amber 6j2w.pdb > 6j2w_amb.pdb 2> pdb4amber_out.log +source leaprc.DNA.OL15 # or leaprc.DNA.bsc1 +# source leaprc.RNA.OL3 +myPDB = loadPdb "6j2w_amb.pdb" +saveAmberParm myPDB 6j2w_amb.top 6j2w_amb.crd +quit \ No newline at end of file diff --git a/leap_template.in b/leap_template.in new file mode 100644 index 0000000..ebd26ab --- /dev/null +++ b/leap_template.in @@ -0,0 +1,6 @@ +# TARGET_IS_PEPTIDE source leaprc.protein.ff14SB +source leaprc.DNA_FF # leaprc.DNA.OL15 or leaprc.DNA.bsc1 +# TARGET_IS_RNA source leaprc.RNA.OL3 +myPDB = loadPdb "mySTRUCTURE_amb_processed.pdb" +saveAmberParm myPDB mySTRUCTURE_amb_processed.top mySTRUCTURE_amb_processed.crd +quit diff --git a/lib/lightdock/ant_thony.py b/lib/lightdock/ant_thony.py index f70c258..796fbb5 100644 --- a/lib/lightdock/ant_thony.py +++ b/lib/lightdock/ant_thony.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """A tool for parallel execution of tasks""" diff --git a/lib/lightdock/lgd_calculate_diameter.py b/lib/lightdock/lgd_calculate_diameter.py index 05cafdb..809c395 100644 --- a/lib/lightdock/lgd_calculate_diameter.py +++ b/lib/lightdock/lgd_calculate_diameter.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Calculates the diameter of a given PDB structure""" diff --git a/lib/lightdock/lgd_calculate_reference_points.py b/lib/lightdock/lgd_calculate_reference_points.py index a68102c..6dfc592 100644 --- a/lib/lightdock/lgd_calculate_reference_points.py +++ b/lib/lightdock/lgd_calculate_reference_points.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Calculates the reference points of the simulation""" diff --git a/lib/lightdock/lgd_calculate_scoring.py b/lib/lightdock/lgd_calculate_scoring.py index 67201cf..36469e3 100644 --- a/lib/lightdock/lgd_calculate_scoring.py +++ b/lib/lightdock/lgd_calculate_scoring.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Calculates the scoring function value for a pair of receptor and ligand PDB structures""" diff --git a/lib/lightdock/lgd_cluster_bsas.py b/lib/lightdock/lgd_cluster_bsas.py index 54cd5cf..c8157db 100644 --- a/lib/lightdock/lgd_cluster_bsas.py +++ b/lib/lightdock/lgd_cluster_bsas.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Cluster LightDock final swarm results using BSAS algorithm""" diff --git a/lib/lightdock/lgd_copy_structures.py b/lib/lightdock/lgd_copy_structures.py index 34a6e69..0223d85 100644 --- a/lib/lightdock/lgd_copy_structures.py +++ b/lib/lightdock/lgd_copy_structures.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Copy clustered structures to new folder for analysis""" diff --git a/lib/lightdock/lgd_create_membrane.py b/lib/lightdock/lgd_create_membrane.py index 7bf1649..92b45bd 100644 --- a/lib/lightdock/lgd_create_membrane.py +++ b/lib/lightdock/lgd_create_membrane.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + import os import argparse diff --git a/lib/lightdock/lgd_filter_membrane.py b/lib/lightdock/lgd_filter_membrane.py index bfef955..e9f5eab 100644 --- a/lib/lightdock/lgd_filter_membrane.py +++ b/lib/lightdock/lgd_filter_membrane.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Filter LightDock final swarm results depending on the compatibility with the membrane""" diff --git a/lib/lightdock/lgd_filter_restraints.py b/lib/lightdock/lgd_filter_restraints.py index b36a766..43c4616 100644 --- a/lib/lightdock/lgd_filter_restraints.py +++ b/lib/lightdock/lgd_filter_restraints.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Filter LightDock final swarm results depending on the percentage of restraints satisfied""" diff --git a/lib/lightdock/lgd_flatten.py b/lib/lightdock/lgd_flatten.py index 4e78bef..3d91fcc 100644 --- a/lib/lightdock/lgd_flatten.py +++ b/lib/lightdock/lgd_flatten.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Transforms a saved ANM NumPy matrix from 3D to 1D""" diff --git a/lib/lightdock/lgd_generate_conformations.py b/lib/lightdock/lgd_generate_conformations.py index 457444e..3d1bbf3 100644 --- a/lib/lightdock/lgd_generate_conformations.py +++ b/lib/lightdock/lgd_generate_conformations.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Generates the PDB structures given a LightDock swarm results file""" diff --git a/lib/lightdock/lgd_generate_glowworm_positions.py b/lib/lightdock/lgd_generate_glowworm_positions.py index 3422d88..6748b43 100644 --- a/lib/lightdock/lgd_generate_glowworm_positions.py +++ b/lib/lightdock/lgd_generate_glowworm_positions.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Creates a PDB with atom points representing the position for each of the glowworms of a swarm""" diff --git a/lib/lightdock/lgd_generate_trajectory.py b/lib/lightdock/lgd_generate_trajectory.py index ac26b91..21b9a69 100644 --- a/lib/lightdock/lgd_generate_trajectory.py +++ b/lib/lightdock/lgd_generate_trajectory.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Generates the simulated trajectory of a given glowworm in a swarm""" diff --git a/lib/lightdock/lgd_gso_to_csv.py b/lib/lightdock/lgd_gso_to_csv.py index c4887cc..63c84bd 100644 --- a/lib/lightdock/lgd_gso_to_csv.py +++ b/lib/lightdock/lgd_gso_to_csv.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Translates a LightDock output file to CSV format""" diff --git a/lib/lightdock/lgd_move_anm.py b/lib/lightdock/lgd_move_anm.py index caea765..245c95c 100644 --- a/lib/lightdock/lgd_move_anm.py +++ b/lib/lightdock/lgd_move_anm.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Calculates the new PDB structure of an input PDB structure using ANM""" diff --git a/lib/lightdock/lgd_rank.py b/lib/lightdock/lgd_rank.py index ae2d835..89e851b 100644 --- a/lib/lightdock/lgd_rank.py +++ b/lib/lightdock/lgd_rank.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Calculates the ranking files depending of different metrics""" diff --git a/lib/lightdock/lgd_rank_swarm.py b/lib/lightdock/lgd_rank_swarm.py index b2e74b1..d61b256 100644 --- a/lib/lightdock/lgd_rank_swarm.py +++ b/lib/lightdock/lgd_rank_swarm.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Calculates the ranking file by scoring intra-swarm""" diff --git a/lib/lightdock/lgd_top.py b/lib/lightdock/lgd_top.py index 69ddd73..c450320 100644 --- a/lib/lightdock/lgd_top.py +++ b/lib/lightdock/lgd_top.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Generates the top N structures in PDB format given a ranking file""" diff --git a/lib/lightdock/lightdock3.py b/lib/lightdock/lightdock3.py index b8b1eef..1751020 100644 --- a/lib/lightdock/lightdock3.py +++ b/lib/lightdock/lightdock3.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Execution controller diff --git a/lib/lightdock/lightdock3_setup.py b/lib/lightdock/lightdock3_setup.py index a698f71..658925c 100644 --- a/lib/lightdock/lightdock3_setup.py +++ b/lib/lightdock/lightdock3_setup.py @@ -1,4 +1,4 @@ -#!/home/mkilgour/miniconda3/bin/python + """Before launching the LightDock simulation, a setup step is required. diff --git a/lib/mmb/commands.template -old.dat b/lib/mmb/Michael recipe/commands.template -old.dat similarity index 100% rename from lib/mmb/commands.template -old.dat rename to lib/mmb/Michael recipe/commands.template -old.dat diff --git a/lib/mmb/Michael recipe/commands.template.dat b/lib/mmb/Michael recipe/commands.template.dat new file mode 100644 index 0000000..fa366ae --- /dev/null +++ b/lib/mmb/Michael recipe/commands.template.dat @@ -0,0 +1,41 @@ +#sequence +DNA A 1 SEQUENCE + +# stages +firstStage 1 +lastStage 4 + +#general simulation parameters +readAtStage 1 +baseInteractionScaleFactor 100 +reportingInterval 1.0 +numReportingIntervals 10 +readBlockEnd +readAtStage 2 +baseInteractionScaleFactor 200 +reportingInterval 1.0 +numReportingIntervals 10 +readBlockEnd +readAtStage 3 +baseInteractionScaleFactor 500 +reportingInterval 1.0 +numReportingIntervals 20 +readBlockEnd +readAtStage 4 +baseInteractionScaleFactor 1000 +reportingInterval 1.0 +numReportingIntervals 20 +readBlockEnd + +# scrubber +# dutyCycle .9 +# scrubberPeriod 40 + +temperature TEMPERATURE +randomizeInitialVelocities TRUE + +# attractive forces +#baseInteraction A IND WatsonCrick A IND2 WatsonCrick Cis + + +setDefaultMDParameters diff --git a/lib/mmb/Michael recipe/commands.template_long.dat b/lib/mmb/Michael recipe/commands.template_long.dat new file mode 100644 index 0000000..06a3f2e --- /dev/null +++ b/lib/mmb/Michael recipe/commands.template_long.dat @@ -0,0 +1,86 @@ +#sequence +DNA A 1 SEQUENCE + +# stages +firstStage 1 +lastStage 10 + +#general simulation parameters +readAtStage 1 +baseInteractionScaleFactor 100 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +readAtStage 1 +baseInteractionScaleFactor 100 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +readAtStage 2 +baseInteractionScaleFactor 200 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +readAtStage 3 +baseInteractionScaleFactor 300 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +readAtStage 4 +baseInteractionScaleFactor 400 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +readAtStage 5 +baseInteractionScaleFactor 500 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +readAtStage 6 +baseInteractionScaleFactor 600 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +readAtStage 7 +baseInteractionScaleFactor 700 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +readAtStage 8 +baseInteractionScaleFactor 800 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +readAtStage 9 +baseInteractionScaleFactor 900 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +readAtStage 10 +baseInteractionScaleFactor 1000 +reportingInterval 1.0 +numReportingIntervals INTERVAL +readBlockEnd + +# scrubber +# dutyCycle .9 +# scrubberPeriod 40 + +temperature TEMPERATURE +randomizeInitialVelocities TRUE + +# attractive forces +#baseInteraction A IND WatsonCrick A IND2 WatsonCrick Cis + + +setDefaultMDParameters diff --git a/lib/mmb/Michael recipe/commands.template_quick.dat b/lib/mmb/Michael recipe/commands.template_quick.dat new file mode 100644 index 0000000..3930f45 --- /dev/null +++ b/lib/mmb/Michael recipe/commands.template_quick.dat @@ -0,0 +1,37 @@ +#sequence +DNA A 1 SEQUENCE + +# stages +firstStage 1 +lastStage 3 + +#general simulation parameters +readAtStage 1 +baseInteractionScaleFactor 50 +reportingInterval 1.0 +numReportingIntervals 5 +readBlockEnd +readAtStage 2 +baseInteractionScaleFactor 200 +reportingInterval 1.0 +numReportingIntervals 5 +readBlockEnd +readAtStage 3 +baseInteractionScaleFactor 500 +reportingInterval 1.0 +numReportingIntervals 10 +readBlockEnd + + +# scrubber +# dutyCycle .9 +# scrubberPeriod 40 + +temperature TEMPERATURE +randomizeInitialVelocities TRUE + +# attractive forces +#baseInteraction A IND WatsonCrick A IND2 WatsonCrick Cis + + +setDefaultMDParameters diff --git a/lib/mmb/commands.template.dat b/lib/mmb/commands.template.dat index fa366ae..f971668 100644 --- a/lib/mmb/commands.template.dat +++ b/lib/mmb/commands.template.dat @@ -3,30 +3,33 @@ DNA A 1 SEQUENCE # stages firstStage 1 -lastStage 4 +lastStage 3 #general simulation parameters readAtStage 1 baseInteractionScaleFactor 100 -reportingInterval 1.0 +reportingInterval 2.0 numReportingIntervals 10 readBlockEnd + readAtStage 2 -baseInteractionScaleFactor 200 -reportingInterval 1.0 -numReportingIntervals 10 -readBlockEnd -readAtStage 3 -baseInteractionScaleFactor 500 +baseInteractionScaleFactor 1500 reportingInterval 1.0 numReportingIntervals 20 readBlockEnd -readAtStage 4 + +readAtStage 3 baseInteractionScaleFactor 1000 reportingInterval 1.0 numReportingIntervals 20 readBlockEnd +# readAtStage 4 +# baseInteractionScaleFactor 1000 +# reportingInterval 1.0 +# numReportingIntervals 20 +# readBlockEnd + # scrubber # dutyCycle .9 # scrubberPeriod 40 diff --git a/lib/mmb/commands.template_long.dat b/lib/mmb/commands.template_long.dat index 06a3f2e..ad6be9e 100644 --- a/lib/mmb/commands.template_long.dat +++ b/lib/mmb/commands.template_long.dat @@ -3,7 +3,7 @@ DNA A 1 SEQUENCE # stages firstStage 1 -lastStage 10 +lastStage 4 #general simulation parameters readAtStage 1 @@ -12,66 +12,60 @@ reportingInterval 1.0 numReportingIntervals INTERVAL readBlockEnd -readAtStage 1 -baseInteractionScaleFactor 100 -reportingInterval 1.0 -numReportingIntervals INTERVAL -readBlockEnd - readAtStage 2 -baseInteractionScaleFactor 200 +baseInteractionScaleFactor 2000 reportingInterval 1.0 numReportingIntervals INTERVAL readBlockEnd readAtStage 3 -baseInteractionScaleFactor 300 +baseInteractionScaleFactor 1500 reportingInterval 1.0 numReportingIntervals INTERVAL readBlockEnd readAtStage 4 -baseInteractionScaleFactor 400 -reportingInterval 1.0 -numReportingIntervals INTERVAL -readBlockEnd - -readAtStage 5 -baseInteractionScaleFactor 500 -reportingInterval 1.0 -numReportingIntervals INTERVAL -readBlockEnd - -readAtStage 6 -baseInteractionScaleFactor 600 -reportingInterval 1.0 -numReportingIntervals INTERVAL -readBlockEnd - -readAtStage 7 -baseInteractionScaleFactor 700 -reportingInterval 1.0 -numReportingIntervals INTERVAL -readBlockEnd - -readAtStage 8 -baseInteractionScaleFactor 800 -reportingInterval 1.0 -numReportingIntervals INTERVAL -readBlockEnd - -readAtStage 9 -baseInteractionScaleFactor 900 -reportingInterval 1.0 -numReportingIntervals INTERVAL -readBlockEnd - -readAtStage 10 baseInteractionScaleFactor 1000 reportingInterval 1.0 numReportingIntervals INTERVAL readBlockEnd +# readAtStage 5 +# baseInteractionScaleFactor 500 +# reportingInterval 1.0 +# numReportingIntervals INTERVAL +# readBlockEnd + +# readAtStage 6 +# baseInteractionScaleFactor 600 +# reportingInterval 1.0 +# numReportingIntervals INTERVAL +# readBlockEnd + +# readAtStage 7 +# baseInteractionScaleFactor 700 +# reportingInterval 1.0 +# numReportingIntervals INTERVAL +# readBlockEnd + +# readAtStage 8 +# baseInteractionScaleFactor 800 +# reportingInterval 1.0 +# numReportingIntervals INTERVAL +# readBlockEnd + +# readAtStage 9 +# baseInteractionScaleFactor 900 +# reportingInterval 1.0 +# numReportingIntervals INTERVAL +# readBlockEnd + +# readAtStage 10 +# baseInteractionScaleFactor 1000 +# reportingInterval 1.0 +# numReportingIntervals INTERVAL +# readBlockEnd + # scrubber # dutyCycle .9 # scrubberPeriod 40 diff --git a/local_install_script.sh b/local_install_script.sh new file mode 100644 index 0000000..f97a299 --- /dev/null +++ b/local_install_script.sh @@ -0,0 +1,35 @@ +#!/bin/bash +# Installation for a local run + +# Create a conda environment ``myDNAEnv`` with python 3.7.11 +conda create -n myDNAEnv python=3.7.11 +# Activate the conda envs (using miniconda3 as an example) +source activate ~/miniconda3/envs/myDNAEnv + +# Make sure to install all the required packages and their dependence +pip install --upgrade pip +pip install -r requirements.txt + +# MDAnalysis: https://www.mdanalysis.org/pages/installation_quick_start/ +conda config --add channels conda-forge +conda install mdanalysis + +# OpenMM: http://docs.openmm.org/7.5.0/userguide/application.html#installing-openmm +conda install -c conda-forge openmm + +# AmberTools21: https://ambermd.org/GetAmber.php#ambertools +conda install -c conda-forge ambertools=21 compilers + +# LightDock: # https://lightdock.org/ +pip install lightdock + +# Seqfold: https://pypi.org/project/seqfold/ +pip install seqfold + +# NUPACK: download wheel from here: http://www.nupack.org/downloads +pip install + +# PeptideBuilder: # https://pypi.org/project/PeptideBuilder/1.1.0/ # https://www.wheelodex.org/projects/peptidebuilder/ +pip install PeptideBuilder + +# MMB: see the README on the main branch. diff --git a/macos_installation.sh b/macos_installation.sh new file mode 100644 index 0000000..4f4a879 --- /dev/null +++ b/macos_installation.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +echo Welcome to the ultimate DNA simulator E2EDNA! + +echo CREATING E2EDNA ENV +conda env create -f e2edna-env.yml + +echo ACTIVATING E2EDNA ENV +conda activate e2edna + +echo INSTALLING NUPACK +python -m pip install -U nupack -f ~/Downloads/nupack-4.0.0.27/package + +echo INSTALLING LIGHTDOCK +pip install lightdock + +echo THE FINAL STEP IS TO DOWNLOAD MMB from https://simtk.org/projects/rnatoolbox and set it up +echo GOOD LUCK! + + + diff --git a/main.py b/main.py index dce4695..9c963ed 100644 --- a/main.py +++ b/main.py @@ -1,193 +1,195 @@ -# import statements from opendna import * -from utils import * -from simtk.openmm.app import * import warnings warnings.filterwarnings("ignore", category=DeprecationWarning) -''' -OpenDNA - an implementation of the "End-to-end DNA" Protocol for folding and structure evaluation of ssDNA aptamers -and analysis of their binding to analyte molecules. - -Implemented in the OpenMM molecular dynamics engine with auxiliary tools: seqfold, NUPACK, MacroMoleculeBuilder, MDAnalysis, and LightDock. - -Michael Kilgour*, Tao Liu, Ilya S. Dementyev and Lena Simine, 2021 -*mjakilgour at gmail dot com - - -Copyright (C) 2021 Michael Kilgour and OpenDNA contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - - - -To-Do: -==> add multi-core support to lightdock, up to however many CPUs we've requested -==> improve equilibration & sampling -==> collation and final printout -==> full trajectory combiner - for printouts -==> it's possible that the 3D representative structure may have a different 2D structure than our 'official' 2D structure -==> look at size vs time over a large aptamer trajectory to optimize smoothing timescale -==> 'long' refold takes too long on big sequences and doesn't actually work that well - make a better/shorter one - ==> separate stages in MMB run and cutoff sim if everything is satisfied -==> record actual number of 2d and docking structures attempted in the outfile - maybe in a 'topline' dictionary -==> check MMB performance with physics turned off -==> update to peptide + aptamer full range contact map? - -future features -==> there are scripts which automate helicity mapping for 2D structures - can we use this to supplement / bypass MMB? -==> upgrade 2d structure distance metric to accomodate 'close-to', not just == vs != - -> the answer may honestly just be to look at the contact map and not any of this 2D crap -==> finish README - ==> example -==> write automated testing with all possible test modes -==> specifically identify aptamer-analyte hydrogen bonds -==> track post-complexation 2D trajectory and compare to pre-complexation, just like the 3D analysis -==> enhanced sampling and/or replica exchange (see openmmtools for implementation) -==> multi-state comparision in 2d and 3d w clustering -==> binding free energy and/or kd calculation -==> peptide restraints -==> would be nice to recognize local but significant rearrangements rather than just global -==> add nucleoside analytes - => force field - ambertools, LEAP + Antechamber - => docking - should work apparently - => analysis & automation -==> implicit solvent - ambertools prmtop file required - -> may also be able to automatically parameterize nonstandard residues using Amber antechamber -==? cleave off non-folded sections? this way we can avoid expensive simulations of very long aptamers - -little things & known issues -==> getNucDATraj doesn't work for terminal 'chi' angles -==> label bare exceptions -==> for long DNA sequences with extended unpaired 'tails', rectangular prism box may fail. However, cubic box would be very expensive. It's a pickle - in any case we may want to encode logic to automatically detect and adjust. -==> for tiny peptides, lightdock ANM may fail, and the whole run crashes -==> anm in LightDock is a bit funny, especially with small molecules may give odd behaviour -==> mdtraj recentering code doesn't always work. not really necessary for nice movies given e.g. pymol movie mode, but might be worth fixing for quick visualizations -==> we have Mg2+ in nupack fold calculations but not in MD sims - -''' - params = {} -params['device'] = 'local' # 'local' or 'cluster' -params['platform'] = 'CPU' # 'CUDA' or 'CPU' -params['platform precision'] = 'single' # 'single' or 'double' only relevant on 'CUDA' platform - -if params['device'] == 'cluster': - cmdLineInputs = get_input() - params['run num'] = cmdLineInputs[0] # option to get run num from command line (default zero) - params['sequence'] = cmdLineInputs[1] # sequence specified from command line - params['peptide'] = cmdLineInputs[2] # peptide specified from command line - params['max walltime'] = cmdLineInputs[3] # maximum walltime -elif params['device'] == 'local': - params['run num'] = 0 # manual setting, for 0, do a fresh run, for != 0, pickup on a previous run. - params['sequence'] = 'CCCGGGCCCGGG' # manually set sequence # ATP aptamer - params['peptide'] = 'YRRYRRYRRY'#'YQTQTNSPRRAR' # manually set peptide - params['max walltime'] = 3 * 24 # maximum walltime in hours - code will adapt maximum sampling steps to finish in less than this time, or give up if this isn't enough time to complete even a minimum run. - -''' -Modes, in order of increasing cost -'2d structure': ssString, pair list and probability -'3d coarse': MMB output, stressed structure, no solvent -'3d smooth': MMB output with short MD relaxation -'coarse dock': best docking scores on coarse MMB structure -'smooth dock': best docking scores on smoothed MMB structure -'free aptamer': evaluate and find representative 3D aptamer structure -'full docking': 'free aptamer' + docking -'full binding': 'full docking' + binding +# ============================================= Specify your settings within this block for a local test =================================================== +params['device'] = 'local' # 'local' or 'cluster' +params['device platform'] = 'macos' # 'macos' or 'linux' or 'WSL' (Windows Subsystem for Linux). Not supporting pure Windows OS (due to NUPACK) +params['platform'] = 'CPU' # 'CPU' or 'CUDA' +if params['platform'] == 'CUDA': params['platform precision'] = 'single' # 'single' or 'double' +if params['device'] == 'local': + params['workdir'] = '/Users/taoliu/Desktop/localruns' # working directory + params['mmb dir'] = '/Users/taoliu/Desktop/software/Installer.3_0.OSX/lib' # path to MMB dylib files # need to tell OS where to find the library files. All MMB files are in the same direcotory. + params['mmb'] = '/Users/taoliu/Desktop/software/Installer.3_0.OSX/bin/MMB' # path to the MMB executable +else: # params['device'] == 'cluster': + params['workdir'] = '/home/taoliu/scratch/runs' + params['mmb dir'] = '~/projects/def-simine/programs/MMB/Installer.2_14.Linux64' + params['mmb'] = '~/projects/def-simine/programs/MMB/Installer.2_14.Linux64/MMB.2_14.Linux64' +params['explicit run enumeration'] = True # To resume a previous run from .chk file, use ``False`` here +cmdLineInputs = get_input() # get input arguments from command lines +params['run num'] = cmdLineInputs[0] +params['mode'] = cmdLineInputs[1] +params['aptamerSeq'] = cmdLineInputs[2] +params['target ligand'] = cmdLineInputs[3] +params['target ligand type'] = cmdLineInputs[4] +params['target sequence'] = cmdLineInputs[5] +# params['run num'] = 1 # 0: auto-increase run-num for a fresh run; > 0 AND params['explicit run enumeration'] = True: fresh run; > 0 AND params['explicit run enumeration'] = False: pickup on a previous run; +# params['mode'] = 'full binding' # specify simulation mode +# params['aptamerSeq'] = 'TAATGTTAATTG' # manually set DNA aptamer sequence from 5' to 3' +# params['target ligand'] = 'YQTQ.pdb' # pdb filename of the target ligand. If no target, use 'False', such as in 'free aptamer' mode. +# params['target ligand type'] = 'peptide' # 'peptide' or 'DNA' or 'RNA' or 'other'; This is ignored if no target. +# params['target sequence'] = 'YQTQTNSPRRAR' # empty string, unless target ligand has sequence. +params['example target pdb'] = 'lib/peptide/peptide.pdb' # an example of target ligand: a peptide, used when no given target but want to do docking +params['example peptide sequence'] = 'YQTQTNSPRRAR' # YQTQ.pdb +''' params['mode'] can be: + '2d structure': ssString, pair list and probability + '3d coarse': MMB output, stressed structure, no solvent + '3d smooth': MMB output with short MD relaxation + 'coarse dock': best docking scores on coarse MMB structure + 'smooth dock': best docking scores on smoothed MMB structure + 'free aptamer': evaluate and find representative 3D aptamer structure + 'full dock': 'free aptamer' + docking + 'full binding': 'full dock' + binding ''' - -params['mode'] = 'full binding' # what to do -params['test mode'] = True # if true, changes params for a short simulation -params['explicit run enumeration'] = False # if True, the next run is fresh, in directory 'run%d'%run_num. If false, regular behaviour. Note: ONLY USE THIS FOR FRESH RUNS - -# Pipeline parameters -params['secondary structure engine'] = 'NUPACK' # 'NUPACK' or 'seqfold' - NUPACK has many more features and is the only package setup for probability analysis -params['equilibration time'] = 0.01 # initial equilibration time in nanoseconds -params['sampling time'] = 1 # sampling time in nanoseconds - in auto-sampling, this is the segment-length for each segment -params['smoothing time'] = 1 # time for pre-sampling relaxation -params['auto sampling'] = True # 'True' run sampling until RC's equilibrate, 'False' just run sampling for 'sampling time' -params['time step'] = 2.0 # MD time step in fs -params['print step'] = 10 # MD printout step in ps -params['max aptamer sampling iterations'] = 20 # number of allowable iterations before giving up on auto-sampling - total max simulation length is this * sampling time -params['max complex sampling iterations'] = 5 # number of iterations for the binding complex -params['autoMD convergence cutoff'] = 1e-2 # how small should average of PCA slopes be to count as 'converged' -params['docking steps'] = 200 # number of steps for docking simulations -params['N 2D structures'] = 1 # max number of 2D structures to be considered (true number may be smaller depending on clustering)- the cost of this code is roughly linear in this integer -params['N docked structures'] = 1 # number of docked structures to output from the docker. If running binding, it will go this time (at linear cost) -params['fold speed'] = 'normal' # 'quick' 'normal' 'long' # time to spend first fold attempt - faster is cheaper but may not reach correct configuration, particularly for larger aptamers. 'normal' is default - -if params['test mode']: # shortcut for fast debugging - params['equilibration time'] = 0.001 # initial equilibration time in nanoseconds - params['sampling time'] = 0.001 # sampling time in nanoseconds - in auto-sampling, this is the segment-length for each segment - params['smoothing time'] = 0.001 # time for pre-sampling relaxation - params['auto sampling'] = True # 'True' run sampling until RC's equilibrate, 'False' just run sampling for 'sampling time' - params['time step'] = 2.0 # MD time step in fs - params['print step'] = .1 # MD printout step in ps - params['max aptamer sampling iterations'] = 2 # number of allowable iterations before giving up on auto-sampling - total max simulation length is this * sampling time - params['max complex sampling iterations'] = 2 # number of iterations for the binding complex - params['autoMD convergence cutoff'] = 1e-2 # how small should average of PCA slopes be to count as 'converged' - params['docking steps'] = 10 # number of steps for docking simulations - params['N 2D structures'] = 2 # max number of 2D structures to be considered (true number may be smaller depending on clustering)- the cost of this code is roughly linear in this integer - params['N docked structures'] = 2 # number of docked structures to output from the docker. If running binding, it will go this time (at linear cost) - params['fold speed'] = 'quick' # 'quick' 'normal' 'long' # time to spend first fold attempt - faster is cheaper but may not reach correct configuration, particularly for larger aptamers. 'normal' is default - -# physical params -params['pressure'] = 1 # atmospheres -params['temperature'] = 310 # Kelvin - used to predict secondary structure and for MD thermostatting -params['ionic strength'] = .163 # M - sodium concentraion - used to predict secondary structure and add ions to simulation box , must be 1100 > [Na] > 50 for nupack to run -params['[Mg]'] = 0.05 # M - magnesium concentration - 0.2 > [Mg] > 0 - ONLY APPLIES TO NUPACK FOLD - DOES NOT ADD Mg TO MD SIMULATIONS -params['pH'] = 7.4 # simulation will automatically protonate the peptide up to this pH - -# OpenMM Parameters -params['force field'] = 'AMBER' # this does nothing -params['water model'] = 'tip3p' # 'tip3p' (runs on amber 14), other explicit models easy to add +# ================================== Modifying anything below this block is NOT necessary, especically for a test run ======================================= + + +# ************************************************************** Default setting **************************************************************************** +params['test mode'] = True # a quick test: short MD sampling and docking (if any) +params['secondary structure engine'] = 'NUPACK' # 'NUPACK' or 'seqfold' - NUPACK has many more features and is the only package set up for probability analysis +params['foldFidelity'] = 0.9 # MMB: if folding fidelity < this value, refold; unless the fold speed is 'quick' + +params['implicit solvent'] = False # ``False``: explicit solvent +params['auto sampling'] = False # ``False``: just run sampling for params['sampling time']; ``True``: run sampling till RC's equilibrate; +params['skip MMB'] = False # ``True``: it will skip '2d analysis' and 'do MMB', then proceed to MD smoothing or MD sampling or dock (if "coarse dock") +params['skip smoothing'] = True # ``True``: from MMB folding straight to MD sampling. Eg, if skipping MMB in 'free aptamer' mode +# The following two "pick up" control: if True, will ignore "skip MMB" and "skip smoothing" +params['pick up from freeAptamerChk'] = False # ``True``: resume a MD of free aptamer, must provide a .chk file below. Skip everything before. +params['pick up from complexChk'] = False # ``True``: resume a MD of aptamer-ligand, must provide a .chk file below. Skip everything before. Not complete +# Can only pick up from freeAptamerChk or complexChk. It makes no sense to resume both free aptamer and aptamer-ligand dynamics + +params['max walltime'] = 24 # hours +params['pressure'] = 1 # 1 standard atmosphere +params['temperature'] = 298 # Kevin: used to predict secondary structure and for MD thermostat +params['ionicStrength'] = 0.150 # Molar: sodium concentration - used to predict secondary structure and add ions to simulation box, must be 1100 M > [Na] > 50 for nupack to run +params['[Mg]'] = 0.005 # Molar: magnesium concentration: 0.2 M > [Mg] > 0 - ONLY applies to NuPack fold - Does NOT add Mg to OpenMM simulation. +params['pH'] = 7.4 # simulation will automatically protonate the target, such as a peptide, up to this pH. Used in OpenMM for waterBox + +if params['implicit solvent'] is True: + params['impSolv'] = 'HCT' # 'HCT', 'OBC1', 'OBC2', 'GBn' or 'GBn2' + params['DNA force field'] = 'DNA.OL15' # 'DNA.OL15' or 'DNA.bsc1'. For free aptamer MD sampling if implicit solvent. + # If target is peptide or RNA, will also add "leaprc.protein.ff14SB" or "source leaprc.RNA.OL3" to the "leap.in" +params['build a peptide as target ligand'] = False +params['peptide backbone constraint constant'] = 0 # if target ligand is a peptide, we can choose to put constraint on the peptide's dihedral angles. force constant k. +# Ask Ilya: What's its unit? Only works if the target ligand is a peptide? +# ************************************************************************************************************************************************************ + +if params['skip MMB'] is True: params['folded initial structure'] = 'foldedAptamer_0.pdb' + # if skipping MMB, must provide a folded structure + # what if >1 folded structures or 2nd structures? + +if params['test mode'] is True: # shortcut for debugging or running the code for the first time (validation) + params['N 2D structures'] = 1 # the clustering algorithm will stop when there are two structures left??? + params['fold speed'] = 'quick' # 'quick' + params['equilibration time'] = 0.0001 # ns. 50 steps + params['smoothing time'] = 0.001 # ns. 500 steps + params['sampling time'] = 0.002 # ns. 1000 steps + params['time step'] = 2.0 # fs + params['print step'] = 0.05 # ps. print out every 25 steps + params['max aptamer sampling iterations'] = 2 + params['max complex sampling iterations'] = 2 + params['autoMD convergence cutoff'] = 1e-2 + params['docking steps'] = 10 + params['N docked structures'] = 1 +else: + params['N 2D structures'] = 1 # 2 # max number of 2D structures to be considered (true number may be smaller depending on clustering) - the cost of this code is roughly linear in this integer + # TODO: could expand the candidate size and do something with them + params['fold speed'] = 'normal' # 'quick', 'normal', 'long' - time to spend on first fold attempt - faster is cheaper but may not reach correct configuration, particularly for larger aptamers. 'normal' is default + params['equilibration time'] = 0.1 # 0.01 # initial equilibration time in nanoseconds + params['smoothing time'] = 1 # ns. MD relax after getting the initial 3D structure from user or MMB before sampling + params['sampling time'] = 100 # sampling time in nanoseconds - in auto-sampling, this is the segment-length for each segment + params['time step'] = 2.0 # MD time step in fs + params['print step'] = 10 # MD printout step in ps. ns > ps > fs + params['max aptamer sampling iterations'] = 20 # number of allowable iterations before giving on auto-sampling - total max simulation length = this * sampling time + params['max complex sampling iterations'] = 5 # number of iterations for the binding complex + params['autoMD convergence cutoff'] = 1e-2 # how small should average of PCA slopes be to count as 'converged' + # TODO: where is the PCA used? to cluster conformations to obtain a representive one? + # TODO: another clustering methods + params['docking steps'] = 200 # number of steps for docking simulations + params['N docked structures'] = 1 # 2 # number of docked structures to output from the docker. If running binding, it will go this time (at linear cost) # TODO: "it will go this time"? + +# OpenMM params +# If wants to resume a simulation, user must specify the chk file, which will be copied to the workdir +if params['pick up from freeAptamerChk'] is True: + params['chk file'] = 'relaxedAptamer_0_processed_state.chk' + # CAUTIOUS: a .chk file created on CUDA platform cannot be run on a CPU platform. + ''' A checkpoint contains data that is highly specific to the Context from which it was created. + It depends on the details of the System, the Platform being used, and the hardware and software + of the computer it was created on. If you try to load it on a computer with different hardware, + or for a System that is different in any way, loading is likely to fail. Checkpoints created + with different versions of OpenMM are also often incompatible. If a checkpoint cannot be loaded, + that is signaled by throwing an exception. + ''' + if params['implicit solvent'] is False: # in explicit solvent + params['resumed structurePDB'] = 'relaxedAptamer_0_processed.pdb' # everything before _state then + .pdb # Just to provide the structureName + else: + params['resumed structurePrmtop'] = 'relaxedAptamer_0_processed.top' # not complete: resume from top and crd file in implicit solvent + params['resumed structureInpcrd'] = 'relaxedAptamer_0_processed.crd' +else: + params['chk file'] = "" # empty string <==> not resume a sampling from .chk file +# Can only pick up from freeAptamerChk or complexChk. It makes no sense to resume both free aptamer and aptamer-ligand dynamics +if params['pick up from complexChk'] is True: + params['chk file'] = 'complex_1_2_processed_state.chk' + if params['implicit solvent'] is False: # in explicit solvent + params['resumed structurePDB'] = 'complex_1_2_processed.pdb' # everything before _state then + .pdb # Just to provide the structureName + else: + params['resumed structurePrmtop'] = 'complex_1_2_processed.top' # not complete: resume from top and crd file in implicit solvent + params['resumed structureInpcrd'] = 'complex_1_2_processed.crd' +else: + params['chk file'] = "" + +# The following three are only used in explicit solvent +params['force field'] = 'AMBER' # this does nothing. The force field is specified in __init__ of interfaces.py +params['water model'] = 'tip3p' # 'tip3p' (runs on Amber 14), other explicit models are also easy to add params['box offset'] = 1.0 # nanometers -params['barostat interval'] = 25 -params['friction'] = 1.0 # 1/picosecond -params['nonbonded method'] = PME +params['barostat interval'] = 25 # NOT USED. +params['friction'] = 1.0 # 1/picoseconds: friction coefficient determines how strongly the system is coupled to the heat bath (OpenMM) +# OpenMM parameters for either explicit or implicit solvent when createSystem() +params['nonbonded method'] = PME # Particle Mesh Ewald: efficient full electrostatics method for use with periodic boundary conditions to calculate long-range interactions + # use PME for long-range electrostatics, cutoff for short-range interactions params['nonbonded cutoff'] = 1.0 # nanometers -params['ewald error tolerance'] = 5e-4 +params['ewald error tolerance'] = 5e-4 # In implicit solvent: this is the error tolerance to use if nonbondedMethod is Ewald, PME, or LJPME; In explicit solvent, it's "**args": Arbitrary additional keyword arguments params['constraints'] = HBonds -params['rigid water'] = True -params['constraint tolerance'] = 1e-6 -params['hydrogen mass'] = 1.5 # in amu - we can increase the time if we increase this value -params['peptide backbone constraint constant'] = 10000 - -# paths -if params['device'] == 'local': - params['workdir'] = '/home/mkilgour/mmruns' #'/mnt/c/Users/mikem/Desktop/mmruns' - params['mmb dir'] = '/mnt/c/Users/mikem/Desktop/software/Installer.2_14.Linux64' - params['mmb'] = '/mnt/c/Users/mikem/Desktop/software/Installer.2_14.Linux64/MMB.2_14.Linux64' - # lightdock python scripts - params['ld setup path'] = 'ld_scripts/lightdock3_setup.py' - params['ld run path'] = 'ld_scripts/lightdock3.py' - params['lgd generate path'] = '../ld_scripts/lgd_generate_conformations.py' - params['lgd cluster path'] = '../ld_scripts/lgd_cluster_bsas.py' - params['lg ant path'] = 'ld_scripts/ant_thony.py' - params['lgd rank path'] = 'ld_scripts/lgd_rank.py' - params['lgd top path'] = 'ld_scripts/lgd_top.py' - -elif params['device'] == 'cluster': - params['workdir'] = '/home/kilgourm/scratch/mmruns' # specify your working directory here - params['mmb dir'] = '~/projects/def-simine/programs/MMB/Installer.2_14.Linux64' # 'C:/Users/mikem/Desktop/Installer.2_14.Windows/MMB.2_14.exe' - params['mmb'] = '~/projects/def-simine/programs/MMB/Installer.2_14.Linux64/MMB.2_14.Linux64' - # lightdock python scripts +params['rigid water'] = True # By default, OpenMM makes water molecules completely rigid, constraining both their bond lengths and angles. If False, it's good to reduce integration step size to 0.5 fs +params['constraint tolerance'] = 1e-6 # What is this tolerance for? For constraint? +params['hydrogen mass'] = 1.5 # in a.m.u. - we can increase the sampling time if we use heavier hydrogen + +# Specify implicit solvent model +if params['implicit solvent'] is True: # Select an implicit solvent model + if params['impSolv'] == 'HCT': + params['implicit solvent model'] = HCT + elif params['impSolv'] == 'OBC1': + params['implicit solvent model'] = OBC1 + elif params['impSolv'] == 'OBC2': + params['implicit solvent model'] = OBC2 + elif params['impSolv'] == 'GBn': + params['implicit solvent model'] = GBn + elif params['impSolv'] == 'GBn2': + params['implicit solvent model'] = GBn2 + else: + raise ValueError('Illegal choice of implicit solvent model. Currently supported: HCT, OBC1, OBC2, GBn or GBn2') + # sys.exit() + params['nonbonded method'] = CutoffNonPeriodic # or NoCutoff + ''' When building a system in implicit solvent, there's no periodic boundary condition; so cannot use Ewald, PME, or LJPME => either NoCutoff or CutoffNonPeriodic. + Question: what about params['ewald error tolerance']???? It doesn't matter or will cause conflict? Check source code. + But can still specify cutoff for electrostatic interactions => params['nonbonded cutoff'] still works + More on PBC: Periodic boundary conditions are used to avoid surface effects in explicit solvent simulations. Since implicit solvent simulations do not have solvent boundaries (the continuum goes on forever), + there is rarely a reason to use periodic boundary conditions in implicit solvent simulations.''' + params['leap template'] = 'leap_template.in' + params['implicit solvent salt conc'] = params['ionicStrength'] # molar/unit. Salt conc in solvent: converted to debye length (kappa) using the provided temperature and solventDielectric (see interfaces.py for detailed walk-through) + params['implicit solvent Kappa'] = None # Debye screening parameter (reciprocal of Debye_length). 1/angstroms. If it's specfied, will ignore "salt conc". + params['soluteDielectric'] = 1.0 # default value = 1.0, meaning no screening effect at all. + params['solventDielectric'] = 78.5 # water: 78.5; This offers a way to model non-aqueous system. + +# Path: no need to change the following paths. +# MMB: Be sure to download ``lib/mmb`` folder from the GitHub repo together witht code. +params['mmb params'] = 'lib/mmb/parameters.csv' # parameter for the MMB executable +params['mmb normal template'] = 'lib/mmb/commands.template.dat' # MMB folding protocol template No.1 +params['mmb quick template'] = 'lib/mmb/commands.template_quick.dat' # MMB folding protocol template No.2 +params['mmb long template'] = 'lib/mmb/commands.template_long.dat' # MMB folding protocol template No.3 +# LightDock: these python scripts will be copied to 'ld_scripts' in workdir, therefore all addresses are relative to the workdir +if params['device'] == 'local': params['ld setup path'] = 'python ld_scripts/lightdock3_setup.py' params['ld run path'] = 'python ld_scripts/lightdock3.py' params['lgd generate path'] = 'python ../ld_scripts/lgd_generate_conformations.py' @@ -195,20 +197,17 @@ params['lg ant path'] = 'python ld_scripts/ant_thony.py' params['lgd rank path'] = 'python ld_scripts/lgd_rank.py' params['lgd top path'] = 'python ld_scripts/lgd_top.py' +elif params['device'] == 'cluster': + params['ld setup path'] = 'python ld_scripts/lightdock3_setup.py' + params['ld run path'] = 'python ld_scripts/lightdock3.py' + params['lgd generate path'] = 'python ../ld_scripts/lgd_generate_conformations.py' + params['lgd cluster path'] = 'python ../ld_scripts/lgd_cluster_bsas.py' + params['lg ant path'] = 'python ld_scripts/ant_thony.py' # ant? thony? + params['lgd rank path'] = 'python ld_scripts/lgd_rank.py' + params['lgd top path'] = 'python ld_scripts/lgd_top.py' -# mmb control files -params['mmb params'] = 'lib/mmb/parameters.csv' -params['mmb normal template'] = 'lib/mmb/commands.template.dat' -params['mmb quick template'] = 'lib/mmb/commands.template_quick.dat' -params['mmb long template'] = 'lib/mmb/commands.template_long.dat' - -# structure files -params['analyte pdb'] = 'lib/peptide/peptide.pdb' # optional analyte - currently not used - -''' -============================================================== -''' - +# ================================ main function entrance ============================== if __name__ == '__main__': opendna = opendna(params) # instantiate the class - opendnaOutput = opendna.run() # retrieve binding information (eventually this should become a normalized c-number) + opendnaOutput = opendna.run() # retrieve binding information (eventually this should become a normalized c-number) + printRecord('Pipeline successfully stopped.') diff --git a/old-readme b/old-readme new file mode 100644 index 0000000..cb99541 --- /dev/null +++ b/old-readme @@ -0,0 +1,154 @@ +# E2EDNA - OpenMM Implementation - E2EDNA 2.0! + +### An automated pipeline for simulation of DNA aptamers complexed with small molecules and short peptides. + +**Michael Kilgour, Tao Liu, Ilya S. Dementyev, Lena Simine** + +_mjakilgour gmail com_ + +For original version of E2EDNA: J. Chem. Inf. Model. 2021, 61, 9, 4139–4144 (https://doi.org/10.1021/acs.jcim.1c00696) + +## Installation +* Get the repository +``` +git clone git@github.com:InfluenceFunctional/OpenDNA.git WHAT_YOU_WANT_IT_TO_BE_CALLED +``` +* Set up a Python environment with the following packages + * Note to Simine Group Members running on Compute Canada clusters: skip this section and go directly to paths. Your virtual environment is automatically setup via the instructions in [``EXAMPLE_SUB_cluster.sh``](https://github.com/InfluenceFunctional/OpenDNA/blob/TL-cluster-code/EXAMPLE_SUB_cluster.sh) in the [``TL-cluster-code``](https://github.com/InfluenceFunctional/OpenDNA/tree/TL-cluster-code) branch. Modify this bash script accordingly for other types of computing clusters. + * If running on a cluster, customize your submission shell script (example: [``EXAMPLE_SUB_cluster.sh``](https://github.com/InfluenceFunctional/OpenDNA/blob/TL-cluster-code/EXAMPLE_SUB_cluster.sh)). + * For local runs, follow the [``local_install_script.sh``](https://github.com/InfluenceFunctional/OpenDNA/blob/main/local_install_script.sh) in the [``main``](https://github.com/InfluenceFunctional/OpenDNA) branch to install required packages and their dependences. + * In particular, as to the ``MacroMoleculeBuilder (MMB)`` module: + * Download appropriate version for your system from [SimTK](https://simtk.org/projects/rnatoolbox): old and new versions have been tested and seem to work. + * As shown in the [``requirements.txt``](https://github.com/InfluenceFunctional/OpenDNA/blob/main/requirements.txt), the required dependences are as follows. Use ``pip install -r requirements.txt`` to install them all in once, which is included in [``local_install_script.sh``](https://github.com/InfluenceFunctional/OpenDNA/blob/main/local_install_script.sh). +``` +biopython==1.78 +certifi==2020.12.5 +cycler==0.10.0 +decorator==4.4.2 +GridDataFormats==0.5.0 +gsd==1.9.3 +joblib==1.0.1 +kiwisolver==1.3.1 +matplotlib==3.3.2 +mmtf-python==1.1.2 +mock==4.0.3 +msgpack==0.6.2 +networkx==2.5 +pandas==1.1.3 +ParmEd==3.2.0 +Pillow==7.2.0 +pyparsing==2.4.7 +python-dateutil==2.8.1 +pytz==2021.1 +scipy==1.4.1 +six==1.15.0 +tqdm==4.59.0 +scikit_learn==0.24.2 +Cython==0.29.23 +mdtraj==1.9.5 +``` +* Create a working directory where runs will take place on your system. + * Each new run will create a serially-numbered directory in this folder containing all the relevant outputs. +* Specify the file paths in [``main.py``](https://github.com/InfluenceFunctional/OpenDNA/blob/main/main.py): + * Note that there is a toggle for running on a ``local`` machine vs. a computing ``cluster``. + * ``params['workdir']``: set to the working directory you created in the previous step. + * ``params['mmb dir']``: set to the MMB directory for its library files. Usually a name like ``.../Installer.#_##.Linux(or OSX)/lib``, depending on the software version. + * ``params['mmb']``: set to the MMB executable on your system. Usually a name like ``.../Installer.#_##.Linux(or OSX)/bin/MMB``, depending on the software version. +* Not necessary to change the following paths, especially during a test run: + * ``params['mmb params']``: path to the MMB parameter file in [``lib/mmb/``](https://github.com/InfluenceFunctional/OpenDNA/tree/main/lib/mmb) of this repository. Modifying this file is highly not recommended. **Be sure to downlaod the entire ``lib/`` together with code.** + * ``params['mmb normal template']``, ``params['mmb quick template']`` and ``params['mmb long template']``: paths to 3 template protocols of running MMB (``normal``, ``quick``, and ``long`` modes) in [``lib/mmb/``](https://github.com/InfluenceFunctional/OpenDNA/tree/main/lib/mmb) of this repository. They do not need to be changed unless to create your own MMB folding protocol. + * ``params['ld setup path']``, ``params['ld run path']``, etc: paths to various [``LightDock``](https://lightdock.org/) Python scripts, providing they are in a working directory. No need to change these paths. The paths are used to automatically copy the scripts to ``ld_scripts/`` within a working directory from [``lib/lightdock/``](https://github.com/InfluenceFunctional/OpenDNA/tree/main/lib/lightdock). + * Alternatively, these scripts automatically come with an installation of ``pip install lightdock``. Depending on your installation, you may need to add ``python`` in the paths of these scripts, as shown in the paths for a ``cluster`` run. + + +## Modes +E2EDNA 2.0 takes in a DNA aptamer sequence in FASTA format, and optionally a short peptide or other small molecule, and returns details of the aptamer structure and binding behaviour. +This code implements several distinct analysis modes so users may customize the level of computational cost and accuracy. + +* `2d structure` → returns NUPACK or seqfold analysis of aptamer secondary structure. Very fast, O(<1s). If using NUPACK, includes probability of observing a certain fold and of suboptimal folds within kT of the minimum. +* `3d coarse` → returns MMB fold of the best secondary structure. Fast O(5-30 mins). Results in a strained 3D structure which obeys base pairing rules and certain stacking interactions. +* `3d smooth` → identical to '3d coarse', with a short MD relaxation in solvent. ~Less than double the cost of '3d coarse' depending on relaxation time. +* `coarse dock` → uses the 3D structure from '3d coarse' as the initial condition for a LightDock simulation, and returns best docking configurations and scores. Depending on docking parameters, adds O(5-30mins) to '3d coarse'. +* `smooth dock` → identical to 'coarse dock', instead using the relaxed structure from '3d smooth'. Similar cost. +* `free aptamer` → fold the aptamer in MMB and run extended MD sampling to identify a representative, equilibrated 2D and 3D structure. Slow O(hours). +* `full dock` → Return best docking configurations and scores from a LightDock run using the fully-equilibrated aptamer structure 'free aptamer'. Similar cost (LightDock is relatively cheap) +* `full binding` → Same steps as 'full docking', with follow-up extended MD simulation of the best binding configuration. Slowest O(hours). + + +## Running a job + +### Quickstart +* Set 'params' in [``main.py``](https://github.com/InfluenceFunctional/OpenDNA/blob/main/main.py), as indicated in "Installation". +* Run the bash script [``automate_tests.sh``](https://github.com/InfluenceFunctional/OpenDNA/blob/main/automate_tests.sh) to test all 8 modes automatically. +* Alternatively, a single run can be carried out by run_num, mode, aptamer sequence, and ligand's structural file. For example, +``` +python main.py --run_num=1 --mode='free aptamer' --aptamerSeq='TAATGTTAATTG' --ligand='False' --ligandType='' --ligandSeq='' +python main.py --run_num=2 --mode='full dock' --aptamerSeq='TAATGTTAATTG' --ligand='YQTQ.pdb' --ligandType='peptide' --ligandSeq='YQTQTNSPRRAR' + +#--ligand='False' # if no ligand. --ligandType and --ligandSeq will be ignored. +#--ligandType='peptide' # or 'DNA' or 'RNA' or 'other'. Assuming 'other' ligand can be described by Amber14 force field. +#--ligandSeq='' # if no sequence. For instance, when ligandType is 'other' + +``` + +# __ work in progress__ + +### Physical Parameters + +Default force field is AMBER 14. Other AMBER fields and explicit water models are trivial to implement. Implicit water requires moving to building systems from AMBER prmtop files. CHARMM may also be easily implemented, but hasn't been tested. AMOEBA 2013 parameters do not include nucleic acids, and AMOEBABIO18 parameters are not implemented in OpenMM. +``` +* params['force field'] = 'AMBER' +* params['water model'] = 'tip3p' +``` + +Default parameters here - for guidance on adjustments start [here](http://docs.openmm.org/latest/userguide/application.html). + +``` +params['box offset'] = 1.0 # nanometers +params['barostat interval'] = 25 +params['friction'] = 1.0 # 1/picosecond +params['nonbonded method'] = PME +params['nonbonded cutoff'] = 1.0 # nanometers +params['ewald error tolerance'] = 5e-4 +params['constraints'] = HBonds +params['rigid water'] = True +params['constraint tolerance'] = 1e-6 +params['pressure'] = 1 +``` + +Increasing hydrogen mass e.g., to 4 AMU enables longer time-steps up to ~3-4 fs. See documentation for details. + +``` +params['hydrogen mass'] = 1.0 # in amu +``` + +Temperature, pH and ionic strength are taken into account for 2D folding in NUPACK, ion concentration in MD simulation, and protonation of molecules for MD (safest near 7-7.4). + +``` +params['temperature'] = 310 # Kelvin - used to predict secondary structure and for MD thermostatting +params['ionic strength'] = .163 # mmol - used to predict secondary structure and add ions to simulation box +params['pH'] = 7.4 # simulation will automatically protonate the peptide up to this pH +``` + +The peptide backbone constraint constant is the constant used to constrain backbone dihedrals. +A minimum of 10000, as it is currently set, is recommended for good constraints (deviations < 5° were always seen with this value). +For more info, please read README_CONSTRAINTS.md. + +``` +params['peptide backbone constraint constant'] = 10000 +``` +#### Implicit Solvent +``` +params['implicit solvent'] = True +if params['implicit solvent']: + params['implicit solvent model'] = OBC1 # only meaningful if implicit solvent is True + params['leap template'] = 'leap_template.in' + # TODO add more options to params: implicitSolventSaltConc, soluteDielectric, solventDielectric, implicitSolventKappa +``` + +#### Starting with a folded DNA aptamer structure (instead of just a FASTA sequence) +``` +params['skip MMB'] = True # it will skip '2d analysis' and 'do MMB' +if params['skip MMB'] is True: + params['folded initial structure'] = 'foldedSequence_0.pdb' # if wishing to skip MMB, must provide a folded structure +``` diff --git a/opendna.py b/opendna.py index 65e7549..8c8e1a7 100644 --- a/opendna.py +++ b/opendna.py @@ -1,42 +1,74 @@ -# import statements -import re +import sys import glob -import os -import numpy as np from shutil import copyfile, copytree -from simtk.openmm import * + import interfaces from utils import * from analysisTools import * +# noinspection PyPep8Naming #meaning?? + -# noinspection PyPep8Naming -class opendna(): +class opendna: def __init__(self, params): + self.workDir = "" # rather use an empty string, not an empty list self.params = params - self.sequence = self.params['sequence'] - self.peptide = self.params['peptide'] + self.aptamerSeq = self.params['aptamerSeq'] + self.targetPDB = self.params['target ligand'] # either pdb filename (eg, "peptide.pdb") or boolean ``False`` + self.targetType = self.params['target ligand type'] # 'peptide' or 'DNA' or 'RNA' or 'other'. Assume now the target is a peptide + self.targetSeq = self.params['target sequence'] + # empty string, if target is not a peptide/DNA/RNA: how to deal with the "analyzeBinding"? No analysis in this simulator. + self.pdbDict = {} self.dcdDict = {} + self.actionDict = {} + self.getActionDict() # specify the actions based on the selected mode + # modify actions based on three toggles. + if self.params['skip MMB'] is True: + self.actionDict['do 2d analysis'] = False + self.actionDict['do MMB'] = False + if self.params['pick up from freeAptamerChk'] is True: + # everything before "freeAptamerDynamics" is skipped + self.actionDict['do 2d analysis'] = False + self.actionDict['do MMB'] = False + self.actionDict['do smoothing'] = False + self.actionDict['get equil repStructure'] = True # making sure to run "freeAptamerDynamics" + # # Not used for now: + # printRecord('Copying the checkpoint file: {} to workdir.'.format(self.params['chk file']), self.workDir+'/') + # if os.path.exists(self.params['chk file']): + # copyfile(self.params['chk file'], self.workDir + '/' + self.params['chk file']) + # else: + # printRecord('Designated checkpoint file does not exist! Terminating the pipeline.', self.workDir+'/') + # self.terminateRun() + elif self.params['pick up from complexChk'] is True: + # everything before "complexDynamics" is skipped + self.actionDict['do 2d analysis'] = False + self.actionDict['do MMB'] = False + self.actionDict['do smoothing'] = False + self.actionDict['get equil repStructure'] = False + self.actionDict['do docking'] = False + self.actionDict['do binding'] = True # making sure to run "complexDynamics" - self.getActionDict() if self.actionDict['make workdir']: - self.setup() # if we dont need a workdir & MMB files, don't make one + self.setup() # if we don't need a workdir & MMB files (eg, give a 3D structure), don't make one. + self.i = int(-1) + self.j = int(-1) def getActionDict(self): """ - generate a binary sequence of 'to-do's' given user input + generate a binary sequence of 'to-do's', given user's input into self.actionDict + :return: none """ - self.actionDict = {} if self.params['mode'] == '2d structure': - self.actionDict['make workdir'] = False + self.actionDict['make workdir'] = True self.actionDict['do 2d analysis'] = True self.actionDict['do MMB'] = False self.actionDict['do smoothing'] = False self.actionDict['get equil repStructure'] = False self.actionDict['do docking'] = False self.actionDict['do binding'] = False + elif self.params['mode'] == '3d coarse': self.actionDict['make workdir'] = True self.actionDict['do 2d analysis'] = True @@ -45,6 +77,7 @@ def getActionDict(self): self.actionDict['get equil repStructure'] = False self.actionDict['do docking'] = False self.actionDict['do binding'] = False + elif self.params['mode'] == '3d smooth': self.actionDict['make workdir'] = True self.actionDict['do 2d analysis'] = True @@ -53,7 +86,9 @@ def getActionDict(self): self.actionDict['get equil repStructure'] = False self.actionDict['do docking'] = False self.actionDict['do binding'] = False - elif self.params['mode'] == 'coarse dock': + self.params['skip smoothing'] = False + + elif self.params['mode'] == 'coarse dock': # directly dock the structure generated in MMB. Is it useful by any chance? self.actionDict['make workdir'] = True self.actionDict['do 2d analysis'] = True self.actionDict['do MMB'] = True @@ -61,7 +96,8 @@ def getActionDict(self): self.actionDict['get equil repStructure'] = False self.actionDict['do docking'] = True self.actionDict['do binding'] = False - elif self.params['mode'] == 'smooth dock': + + elif self.params['mode'] == 'smooth dock': # dock with no MD sampling. Useful? self.actionDict['make workdir'] = True self.actionDict['do 2d analysis'] = True self.actionDict['do MMB'] = True @@ -69,6 +105,8 @@ def getActionDict(self): self.actionDict['get equil repStructure'] = False self.actionDict['do docking'] = True self.actionDict['do binding'] = False + self.params['skip smoothing'] = False + elif self.params['mode'] == 'free aptamer': self.actionDict['make workdir'] = True self.actionDict['do 2d analysis'] = True @@ -77,7 +115,8 @@ def getActionDict(self): self.actionDict['get equil repStructure'] = True self.actionDict['do docking'] = False self.actionDict['do binding'] = False - elif self.params['mode'] == 'full docking': + + elif self.params['mode'] == 'full dock': self.actionDict['make workdir'] = True self.actionDict['do 2d analysis'] = True self.actionDict['do MMB'] = True @@ -85,6 +124,7 @@ def getActionDict(self): self.actionDict['get equil repStructure'] = True self.actionDict['do docking'] = True self.actionDict['do binding'] = False + elif self.params['mode'] == 'full binding': self.actionDict['make workdir'] = True self.actionDict['do 2d analysis'] = True @@ -92,54 +132,89 @@ def getActionDict(self): self.actionDict['do smoothing'] = True self.actionDict['get equil repStructure'] = True self.actionDict['do docking'] = True - self.actionDict['do binding'] = True + self.actionDict['do binding'] = True def setup(self): """ - setup working directory - copy in relevant xyz and keyfiles - move to relevant directory + set up a working directory, copy in relevant xyz and keyfiles, move to the working directory :return: """ - - if (self.params['explicit run enumeration'] == True) or (self.params['run num'] == 0): - if self.params['run num'] == 0: + if (self.params['explicit run enumeration'] is True) or (self.params['run num'] == 0): # make a new directory + if self.params['run num'] == 0: # auto-increment the max run_num folder self.makeNewWorkingDirectory() - else: - self.workDir = self.params['workdir'] + '/run%d' % self.params['run num'] # make a new workdir with the given index + else: # create a working directory defined by the user + self.workDir = self.params['workdir'] + '/run%d' % self.params['run num'] os.mkdir(self.workDir) + printRecord('Starting Fresh Run {}'.format(self.params['run num']), self.workDir+'/') + else: + self.workDir = self.params['workdir'] + '/' + 'run%d' % self.params['run num'] - os.mkdir(self.workDir + '/outfiles') - # copy structure files - copyfile(self.params['analyte pdb'], self.workDir + '/analyte.pdb') - + # copy relevant files to the workDir + os.mkdir(self.workDir + '/outfiles') + + # If we skip MMB because we have a folded structure to start with + if self.params['skip MMB'] is True: + printRecord('Skipping 2D analysis and MMB folding. Starting with an folded structure.', self.workDir+'/') + if not os.path.isfile('./' + self.params['folded initial structure']): + # if not os.path.exists(self.params['folded initial structure']): + printRecord('Designated folded structure does not exist! Terminating the pipeline.', self.workDir+'/') + self.terminateRun() # maybe do it via "raise an error"? + else: + printRecord('Copying the folded structure: {} to workdir.'.format(self.params['folded initial structure']), self.workDir+'/') + copyfile(self.params['folded initial structure'], self.workDir + '/foldedAptamer_0.pdb') + else: # copy MMB params and command script copyfile(self.params['mmb params'], self.workDir + '/parameters.csv') copyfile(self.params['mmb normal template'], self.workDir + '/commands.template.dat') copyfile(self.params['mmb quick template'], self.workDir + '/commands.template_quick.dat') - copyfile(self.params['mmb long template'], self.workDir + '/commands.template_long.dat') - - # copy csv file (dihedral restraints) if restraints are turned on - if self.params['peptide backbone constraint constant'] != 0: - copyfile('backbone_dihedrals.csv', self.workDir + '/backbone_dihedrals.csv') - - # copy lightdock scripts - copytree('lib/lightdock', self.workDir + '/ld_scripts') - - else: - self.workDir = self.params['workdir'] + '/' + 'run%d' % self.params['run num'] - - # move to working dr + copyfile(self.params['mmb long template'], self.workDir + '/commands.template_long.dat') + + # if do docking, need targetPDB + if (self.actionDict['do docking'] is True): + if self.targetPDB == 'False': # if user does not provide a target ligand pdb, use our provided example target ligand: a peptide. + self.targetPDB = 'example_target_peptide.pdb' # self.targetPDB is no longer False. + self.targetSeq = self.params['example peptide sequence'] # self.targetSeq is not empty because we are dealing with a peptide. + copyfile(self.params['example target pdb'], self.workDir + '/' + self.targetPDB) # ie, target of the aptamer + else: # user provides a targetPDB + copyfile(self.targetPDB, self.workDir + '/' + self.targetPDB) + # From now on, "self.targetPDB == 'False'" is equivalent to "'do docking' is False". + # copy lightdock scripts + copytree('lib/lightdock', self.workDir + '/ld_scripts') # if destination dir does not already exist, create one then copy the whole source dir + + # copy csv file (dihedral restraints) if target ligand is a peptide and constraint is enabled + if self.params['peptide backbone constraint constant'] != 0: + copyfile('backbone_dihedrals.csv', self.workDir + '/backbone_dihedrals.csv') + + if self.params['implicit solvent'] is True: + copyfile(self.params['leap template'], self.workDir + '/leap_template.in') + + # move to working dir os.chdir(self.workDir) - printRecord('Simulating {} with {}'.format(self.sequence, self.peptide)) - - if self.params['device'] == 'local': - os.environ["LD_LIBRARY_PATH"] = self.params['mmb dir'] # export the path to the MMB library - only necessary in WSL environments - - def makeNewWorkingDirectory(self): # make working directory + + # specify the DNA force field for free aptamer MD sampling if implicit solvent. Assume only dealing with a DNA aptamer. + if self.params['implicit solvent'] is True: + replaceText('leap_template.in', 'DNA_FF', self.params['DNA force field']) + + # Print prompt: free aptamer or aptamer + target ligand + printRecord('Simulation mode: {}'.format(self.params['mode'])) + if (self.actionDict['do docking'] is False): # no given target ligand, nor do docking + printRecord('Simulating free aptamer: {}'.format(self.aptamerSeq)) + else: + printRecord('Simulating {} with {}'.format(self.aptamerSeq, self.targetPDB)) + + if (self.params['skip MMB'] is False) and (self.params['device'] == 'local'): + if (self.params['device platform'] == 'linux') or (self.params['device platform'] == 'WSL'): + os.environ["LD_LIBRARY_PATH"] = self.params['mmb dir'] # Add MMB library's path to environment variable + # When running MMB on 'local': + # Windows: no action needed. But this pipeline does not support Windows OS, due to NUPACK. + # WSL or linux: explicitly add MMB library path. + # macos: no action needed here. + # TL warning: do NOT use os.environ["DYLD_LIBRARY_PATH"] for macos! It does not help MMB locate the library AND it confuses OpenMM. + # TL tip: refer to 'mmb' class in interfaces.py on how to run MMB on macos machine. + + def makeNewWorkingDirectory(self): """ - make a new working directory - non-overlapping previous entries + make a new working directory: not overlapping previously existing directories :return: """ workdirs = glob.glob(self.params['workdir'] + '/' + 'run*') # check for prior working directories @@ -149,335 +224,472 @@ def makeNewWorkingDirectory(self): # make working directory prev_runs.append(int(workdirs[i].split('run')[-1])) prev_max = max(prev_runs) - self.workDir = self.params['workdir'] + '/' + 'run%d' % (prev_max + 1) + self.workDir = self.params['workdir'] + '/run%d' % (prev_max + 1) os.mkdir(self.workDir) - print('Starting Fresh Run %d' % (prev_max + 1)) + printRecord('Starting Fresh Run %d' % (prev_max + 1), self.workDir+'/') else: self.workDir = self.params['workdir'] + '/' + 'run1' - print('Starting Fresh Run 1') os.mkdir(self.workDir) - - def computeRuntime(self): - ''' - estimate the maximum runtime for this code, given a ns/day calculation from existing work done - omit MMB and docking as being relatively cheap - ''' - dt = self.params['sampling time'] - ssStructures = self.params['N 2D structures'] - dockingStructures = self.params['N docked structures'] - aptamerSteps = self.params['max aptamer sampling iterations'] - complexSteps = self.params['max complex sampling iterations'] - maxNS = ssStructures * aptamerSteps * dt + ssStructures * dockingStructures * complexSteps * dt # maximum possible sampling time in nanoseconds - projectedMaxRuntime = maxNS / self.ns_per_day * 24 # number of hours to complete our maximum sampling time - - return projectedMaxRuntime - - def checkRuntime(self): - ''' - estimate the runtime at the current conditions, and adjust parameters if necessary to fit a given runtime - ''' - projectedMaxRuntime = self.computeRuntime() - buffer = 0.8 # we ideally would like a buffer of 20% of the walltime - doReduction = 0 - while projectedMaxRuntime > (buffer * self.params['max walltime']): # if the code is going to take too long, shorten the sampling time until it fits - doReduction = 1 - self.params['sampling time'] *= 0.95 - projectedMaxRuntime = self.computeRuntime() - - if doReduction == 1: - if self.params['sampling time'] < 0.1: - printRecord('Sampling time reduced to 100 ps - this run is too expensive, and will now terminate') - self.terminateRun() - else: - printRecord('Sampling time chunk reduced to {} ns'.format(self.params['sampling time'])) - - def terminateRun(self): - ''' - for some reason, the run will suddenly end - ''' - sys.exit() - + printRecord('Starting Fresh Run 1', self.workDir+'/') def run(self): """ - run the binding simulation end-to-end + run the end-to-end simulation pipeline for the chosen mode consult checkpoints to not repeat prior steps :return: """ + # outputDict = {'params': self.params} outputDict = {} outputDict['params'] = self.params - np.save('opendnaOutput', outputDict) + np.save('opendnaOutput', outputDict) # Save an array to a binary file in NumPy ``.npy`` format. + if self.actionDict['do 2d analysis']: # get secondary structure - self.pairLists = self.getSecondaryStructure(self.sequence) + self.pairLists = self.getSecondaryStructure(self.aptamerSeq) outputDict['2d analysis'] = self.ssAnalysis - np.save('opendnaOutput', outputDict) # save outputs - - printRecord('Running over %d' % len(self.pairLists) + ' possible 2D structures') - - for self.i in range(len(self.pairLists)): # loop over possible secondary structures - printRecord('2D structure #{} is {}'.format(self.i, self.ssAnalysis['2d string'][self.i])) - self.pairList = np.asarray(self.pairLists[self.i]) - - if self.actionDict['do MMB']: # fold it - self.foldSequence(self.sequence, self.pairList) - - if self.actionDict['do smoothing']: - self.MDSmoothing(self.pdbDict['mmb folded sequence {}'.format(self.i)], relaxationTime=self.params['smoothing time']) # relax for xx nanoseconds - - if self.actionDict['get equil repStructure']: - outputDict['free aptamer results {}'.format(self.i)] = self.runFreeAptamer(self.pdbDict['relaxed sequence {}'.format(self.i)]) + np.save('opendnaOutput', outputDict) # save 2d structure results + printRecord('Running over %d' % len(self.pairLists) + ' possible 2D structures.') + num_2dSS = len(self.pairLists) + + else: # there are three cases where 2d analysis is not carried out. + if self.params['pick up from complexChk'] is True: + printRecord('Resume a sampling of aptamer-ligand complex from .chk file, therefore skip all the steps before it.') + elif self.params['pick up from freeAptamerChk'] is True: + printRecord('Resume a sampling of free aptamer from .chk file, therefore skip all the steps before it.') + else: + printRecord('Starting with an existing folded strcuture, therefore skip 2d analysis and MMB folding.') + num_2dSS = 1 # quick and dirty + + for self.i in range(num_2dSS): # loop over all possible secondary structures + if self.actionDict['do 2d analysis'] is True: # self.ssAnalysis only exists if we "do 2d analysis" + printRecord('2D structure #{} is : {}'.format(self.i, self.ssAnalysis['displayed 2d string'][self.i])) + self.pairList = np.asarray(self.pairLists[self.i]) # be careful!!!: .pairList vs. .pairLists + + if self.actionDict['do MMB']: # fold 2D into 3D + self.foldSequence(self.aptamerSeq, self.pairList) + elif self.params['skip MMB'] is True: + # situation here: no MMB + not to resume a MD of either free aptamer or aptamer-ligand complex: ie, (self.params['pick up from freeAptamerChk'] is False) and (self.params['pick up from complexChk'] is False) + # meaning of the condition: just skip MMb and preceed to next step: MD smoothing or MD sampling or dock (if "coarse dock") + self.pdbDict['folded aptamer {}'.format(self.i)] = self.params['folded initial structure'] + self.pdbDict['representative aptamer {}'.format(self.i)] = self.params['folded initial structure'] # for "coarse dock" mode. + + if self.params['skip smoothing'] is True: + self.actionDict['do smoothing'] = False + if self.params['mode'] != '2d structure': + printRecord('\nNo relaxation (smoothing) of the folded aptamer.') + self.pdbDict['relaxed aptamer {}'.format(self.i)] = 'foldedAptamer_0.pdb' + elif self.actionDict['do smoothing']: # just to double check + if self.params['skip MMB'] is False: + self.MDSmoothing(self.pdbDict['mmb folded aptamer {}'.format(self.i)], relaxationTime=self.params['smoothing time'], implicitSolvent=self.params['implicit solvent']) # relax for xx nanoseconds + else: # if given a folded structure, skip MMB and directly use the provided structure + self.MDSmoothing(self.pdbDict['folded aptamer {}'.format(self.i)], relaxationTime=self.params['smoothing time'], implicitSolvent=self.params['implicit solvent']) # relax for xx nanoseconds + + if self.actionDict['get equil repStructure']: # definitely did smoothing if want an equil structure + if self.params['pick up from freeAptamerChk'] is False: + outputDict['free aptamer results {}'.format(self.i)] = self.freeAptamerDynamics(self.pdbDict['relaxed aptamer {}'.format(self.i)], implicitSolvent=self.params['implicit solvent']) + else: # user must make sure they have provided a .chk file + outputDict['free aptamer results {}'.format(self.i)] = self.freeAptamerDynamics(self.params['resumed structurePDB'], implicitSolvent=self.params['implicit solvent']) + # if using implicit solvent, the .top and .crd files have the same name as .pdb. For ex: relaxed_amb_processed.pdb/top/crd np.save('opendnaOutput', outputDict) # save outputs - if self.actionDict['do docking'] and (self.peptide is not False): # find docking configurations for the complexed structure - outputDict['dock scores {}'.format(self.i)] = self.dock(self.pdbDict['representative aptamer {}'.format(self.i)], 'peptide.pdb') + if (self.actionDict['do docking'] is True) and (self.targetPDB != 'False'): # find docking configuration for the complexed structure + # coarse dock: no smoothing; + # smooth dock: smooth + dock; + # full dock: smooth + dock + equil structure; + # full binding: smooth + dock + equil structure + sampling dynamics; + outputDict['dock scores {}'.format(self.i)] = self.dock(self.pdbDict['representative aptamer {}'.format(self.i)], self.targetPDB) # eg, "peptide.pdb" which can be created given peptide sequence by buildPeptide in function dock + # pdbDict['representative aptamer {}' is defined at MMB folding, MD smoothing or freeAptamerDynamics + # TODO: does lightdock also support Amber implicit solvent model? np.save('opendnaOutput', outputDict) # save outputs - - printRecord('Running over %d' % self.params['N docked structures'] + ' docked structures') - for self.j in range(self.params['N docked structures']): # loop over docking configurations for a given secondary structure - printRecord('Docked structure #{}'.format(self.j)) - if self.actionDict['do binding']: # run MD on the complexed structure - outputDict['binding results {} {}'.format(self.i, self.j)] = self.bindingDynamics(self.pdbDict['binding complex {} {}'.format(self.i,int(self.j))]) - - np.save('opendnaOutput', outputDict) # save outputs - + # N docked structures are specified by user: how many docked structures do we want to investigate + # num_docked_structure = self.params['N docked structures'] + num_docked_structure = len(self.topDockingScores) + + printRecord('Running over %d' % num_docked_structure + ' docked structures.') + + if self.params['pick up from complexChk'] is True: # it means we did not dock but we have a complex structure. + num_docked_structure = 1 + printRecord('Resuming the sampling of 1 docked aptamer-ligand structure') + + if self.actionDict['do binding'] is True: # run MD on the aptamer-ligand structure + for self.j in range(num_docked_structure): # loop over docking configurations for a given secondary structure + printRecord('Docked structure #{}'.format(self.j)) + if self.params['pick up from complexChk'] is False: + outputDict['binding results {} {}'.format(self.i, self.j)] = self.complexDynamics(self.pdbDict['binding complex {} {}'.format(self.i, int(self.j))], implicitSolvent=self.params['implicit solvent']) + # TODO why need int(self.j)? Why sometimes %d % string, but sometimes {}.format? + # np.save('opendnaOutput', outputDict) + else: # user must make sure they have provided a .chk file + outputDict['binding results {} {}'.format(self.i, self.j)] = self.complexDynamics(self.params['resumed structurePDB'], implicitSolvent=self.params['implicit solvent']) + # if using implicit solvent, the .top and .crd files have the same name as .pdb. For ex: 'complex_1_2_processed.pdb/top/crd' + np.save('opendnaOutput', outputDict) return outputDict - # ======================================================= - # ======================================================= - # ======================================================= - - def getSecondaryStructure(self, sequence): + # ====================================================================================== + # ====================================================================================== + # ====================== supporting functions are followed (part1) ===================== + # ====================================================================================== + # ====================================================================================== + def getSecondaryStructure(self, aptamerSeq): """ - get the secondary structure for a given sequence - using seqfold here - identical features are available using nupack, though results are sometimes different - :param sequence: - :return: a dot-bracket string and list of paired bases (assuming single-strand DNA aptamer) + get the secondary structure(s) for a given aptamer's sequence + using seqfold here - identical features are available in nupack, though results are sometimes different + :param aptamerSeq: aptamer's sequence + :return: """ - printRecord("Get Secondary Structure") + printRecord("Getting Secondary Structure(s)") if self.params['secondary structure engine'] == 'seqfold': - ssString, pairList = getSeqfoldStructure(sequence, self.params['temperature']) # seqfold guess - self.ssAnalysis = [ssString, pairList] + ssString, pairList = getSeqfoldStructure(aptamerSeq, self.params['temperature']) # seqfold guess + self.ssAnalysis = {'2d string': ssString, 'pair list': pairList, 'displayed 2d string': ssString} + # print('seqfold ssAnalysis: ',self.ssAnalysis) return pairList elif self.params['secondary structure engine'] == 'NUPACK': - nup = interfaces.nupack(sequence, self.params['temperature'], self.params['ionic strength'], self.params['[Mg]']) # initialize nupack - self.ssAnalysis = nup.run() # run nupack analysis of possible secondary structures + nup = interfaces.nupack(aptamerSeq, self.params['temperature'], self.params['ionicStrength'], self.params['[Mg]']) # initialize nupack + self.ssAnalysis = nup.run() # run nupack analysis of possible 2D structures. - distances = getSecondaryStructureDistance(self.ssAnalysis['config']) + distances = getSecondaryStructureDistance(self.ssAnalysis['config']) if len(distances) > 1: topReps, topProbs, topDists = do2DAgglomerativeClustering(self.ssAnalysis['config'], self.ssAnalysis['state prob'], distances) - topPairLists = [] - nLists = min(len(topReps),self.params['N 2D structures']) # there may be less clusters than we ask for + topPairLists = [] + nLists = min(len(topReps), self.params['N 2D structures']) + self.ssAnalysis['displayed 2d string'] = [] # to output the dot-parenthesis notation of selected 2d structure for i in range(nLists): - if (i == 0) or (np.amin(topDists[i, :i]) > 0.05): # only add a config to the list if it's at least 5% different from a previously accepted config + if (i == 0) or (np.amin(topDists[i, :i]) > 0.05): # only add a config to the list if it's at least 5% different from a previously accepted config + self.ssAnalysis['displayed 2d string'].append(configToString(topReps[i].astype(int))) topPairLists.append(ssToList(configToString(topReps[i].astype(int)))) return topPairLists - else: # if for some reason there's only a single plausible structure (unlikely) + + else: # if, for some reason, there's only a single plausible structure (unlikely) + self.ssAnalysis['displayed 2d string'] = self.ssAnalysis['2d string'] return self.ssAnalysis['pair list'] - def foldSequence(self, sequence, pairList): + def foldSequence(self, aptamerSeq, pairList): """ - generate a coarsely folded structure for the aptamer - :param sequence: the ssDNA sequence to be folded + generate a coarsely folded 3D structure for the aptamer + :param aptamerSeq: the ssDNA aptamer's sequence :param pairList: list of binding base pairs :return: """ - # write pair list as forces to the MMB command file - printRecord("Folding Sequence") - mmb = interfaces.mmb(sequence, pairList, self.params, self.i) - foldFidelity = mmb.run() - printRecord('Initial fold fidelity = %.3f'%foldFidelity) + # write pair list as fictitious forces to the MMB command file + printRecord("Folding Aptamer from Sequence. Fold speed={}".format(self.params['fold speed'])) + + mmb = interfaces.mmb(aptamerSeq, pairList, self.params, self.i) + MDAfoldFidelity, MMBfoldFidelity = mmb.run() + foldFidelity = MMBfoldFidelity + printRecord('Initial fold fidelity = %.3f' % foldFidelity) + printRecord('Initial fold fidelity = %.3f (from MDAnalysis)' % MDAfoldFidelity) attempts = 1 - if self.params['fold speed'] != 'quick': # don't rerun if we're quick folding - intervalLength = 5 # initial interval length - while (foldFidelity <= 0.9) and (attempts < 5): # if it didn't fold properly, try again with a longer annealing time - up to XX times - self.params['fold speed'] = 'long' - printRecord("Refolding Sequence") - mmb = interfaces.mmb(sequence, pairList, self.params, self.i, intervalLength) - foldFidelity = mmb.run() - printRecord('Subsequent fold fidelity = %.3f' % foldFidelity) - attempts += 1 - intervalLength += 5 # on repeated attempts, try harder - - self.pdbDict['mmb folded sequence {}'.format(self.i)] = mmb.foldedSequence - os.system('mv commands.run* ' + mmb.fileDump) - printRecord("Folded Sequence") - - def MDSmoothing(self, structure, relaxationTime=0.01): + # Skip refold + # if self.params['fold speed'] != 'quick': # don't rerun if we're quick folding + # intervalLength = 5 # initial interval length + # while (foldFidelity <= self.params['foldFidelity']) and (attempts < 5): # if it didn't fold properly, try again with a longer annealing time - up to XX times + # self.params['fold speed'] = 'long' + + # printRecord("Refolding Aptamer from Sequence") + # mmb = interfaces.mmb(aptamerSeq, pairList, self.params, self.i, intervalLength) # extra intervalLength argument + # MDAfoldFidelity, MMBfoldFidelity = mmb.run() + # foldFidelity = MMBfoldFidelity + # printRecord('Subsequent fold fidelity = %.3f' % foldFidelity) + # printRecord('Subsequent MDA fold fidelity = %.3f' % MDAfoldFidelity) + # attempts += 1 + # intervalLength += 5 # on repeated attempts, try harder + + self.pdbDict['mmb folded aptamer {}'.format(self.i)] = mmb.foldedAptamerSeq # mmb.foldedAptamerSeq = foldedAptamer_{}.pdb: defined in the mmb.run() + os.system('mv commands.run* ' + mmb.fileDump) # mmb.fileDump is a directory for intermediate files during running MMB + printRecord("Folded the aptamer and generated the folded structure: {}".format(self.pdbDict['mmb folded aptamer {}'.format(self.i)])) + + # For "coarse dock" mode: + self.pdbDict['representative aptamer {}'.format(self.i)] = self.pdbDict['mmb folded aptamer {}'.format(self.i)] # ie, 'relaxedAptamer_{}.pdb'.format(self.i) + + def MDSmoothing(self, structure, relaxationTime=0.01, implicitSolvent=False): # default relaxation time is 0.01 ns """ - do a short MD run in water to relax the coarse MMB structure - relaxation time in nanoseconds, print time in picoseconds + Run a short MD sampling to relax the coarse MMB structure + Relaxation time in nanoseconds, print time in picoseconds + :param structure: + :param relaxationTime: params['smoothing time'] + :param implicitSolvent: + :return: """ structureName = structure.split('.')[0] - printRecord('Running relaxation') - prepPDB(structure, self.params['box offset'], self.params['pH'], self.params['ionic strength'], MMBCORRECTION=True, waterBox=True) - processedStructure = structureName + '_processed.pdb' - processedStructureTrajectory = processedStructure.split('.')[0] + '_trajectory.dcd' - omm = interfaces.omm(processedStructure, self.params) - self.ns_per_day = omm.doMD() - - printRecord('Pre-relaxation simulation speed %.1f' % self.ns_per_day + ' ns/day') # print speed - - cleanTrajectory(processedStructure, processedStructureTrajectory) # clean up trajectory for later use - self.dcdDict['relaxed sequence {}'.format(self.i)] = 'clean_' + processedStructureTrajectory - self.pdbDict['relaxed sequence {}'.format(self.i)] = 'relaxedSequence_{}.pdb'.format(self.i) - extractFrame(processedStructure,processedStructureTrajectory,-1,self.pdbDict['relaxed sequence {}'.format(self.i)]) # final frame + printRecord('\nRunning relaxation (smoothing)') + if implicitSolvent is False: + # set up periodic box and condition: pH and ionic strength => protons, ions and their concentrations + prepPDB(structure, self.params['box offset'], self.params['pH'], self.params['ionicStrength'], MMBCORRECTION=True, waterBox=True) + print('Done preparing files with waterbox. Start openmm.') + else: # prepare prmtop and crd file using LEap in ambertools + printRecord('Implicit solvent: running LEap to generate .prmtop and .crd for folded aptamer...') + #os.system('pdb4amber {}.pdb > {}_amb_processed.pdb 2> {}_pdb4amber_out.log'.format(structureName, structureName, structureName)) + copyfile(structure, structureName + '_amb_processed.pdb') + copyfile('./leap_template.in', 'leap_MDSmoothing.in') + replaceText('leap_MDSmoothing.in', 'mySTRUCTURE', structureName) + os.system('tleap -f leap_MDSmoothing.in > leap_MDSmoothing.out') + os.system('tail -1 leap_MDSmoothing.out') # show last line + # printRecord(readFinalLines('leap_MDSmoothing.out', 1)) # show last line. problematic + structureName += '_amb' # after pdb4amber and saveAmberParm, will generate structureName_amb_processed.pdb/top/crd + processedStructure = structureName + '_processed.pdb' + processedStructureTrajectory = structureName + '_processed_trajectory.dcd' + omm = interfaces.omm(structurePDB=processedStructure, params=self.params, simTime=relaxationTime, binding=False, implicitSolvent=implicitSolvent) + self.ns_per_day = omm.doMD() # run MD in OpenMM framework + + printRecord('Pre-relaxation simulation speed %.1f' % self.ns_per_day + 'ns/day') # print out sampling speed + + if implicitSolvent is False: + cleanTrajectory(processedStructure, processedStructureTrajectory) # remove water and salt from trajectory + printRecord("Cleaned the trajectory of relaxing free aptamer. Extracting the final frame.") + else: # no water or salt to remove + copyfile(processedStructure, 'clean_' + processedStructure) + copyfile(processedStructureTrajectory, 'clean_' + processedStructureTrajectory) + printRecord("No cleaning in implicit solvent, just copied smoothing traj. Extracting the final frame") + + self.dcdDict['relaxed aptamer {}'.format(self.i)] = 'clean_' + processedStructureTrajectory + self.pdbDict['relaxed aptamer {}'.format(self.i)] = 'relaxedAptamer_{}.pdb'.format(self.i) # specify the file name for the extracted final frame, ie, relaxed aptamer + # extractFrame(processedStructure, processedStructureTrajectory, -1, self.pdbDict['relaxed aptamer {}'.format(self.i)]) # extract final frame + # # Current warning from MDA: UserWarning: Unit cell dimensions not found. CRYST1 record set to unitary values. I think: MDA cannot find unit cell dimension info. Can we add info when using implicit solvent? + # Another possible way to extract the last frame is to use OpenMM: + omm.extractLastFrame(self.pdbDict['relaxed aptamer {}'.format(self.i)]) + + # in "smooth dock" mode: + self.pdbDict['representative aptamer {}'.format(self.i)] = self.pdbDict['relaxed aptamer {}'.format(self.i)] # ie, 'relaxedAptamer_{}.pdb'.format(self.i) - def runFreeAptamer(self, aptamer): + def freeAptamerDynamics(self, aptamerPDB, implicitSolvent=False): """ - run molecular dynamics for free aptamer only - do relevant analysis - :param aptamer: + Run MD sampling for free aptamer and relevant analysis + :param implicitSolvent: + :param aptamerPDB: PDB file name of the aptamer to be simulated :return: """ - structureName = aptamer.split('.')[0] - printRecord('Running free aptamer dynamics') - prepPDB(aptamer, self.params['box offset'], self.params['pH'], self.params['ionic strength'], MMBCORRECTION=True, waterBox=True) # add periodic box and appropriate protons - processedAptamer = structureName + '_processed.pdb' - processedAptamerTrajectory = processedAptamer.split('.')[0] + '_complete_trajectory.dcd' # this is what autoMD will output - - self.autoMD(processedAptamer) # do MD - automatically converge to equilibrium sampling + structureName = aptamerPDB.split('.')[0] # aptamerPDB: eg "relaxedAptamer_0.pdb" or "relaxedAptamer_0_processed.pdb" (if resuming sampling) - printRecord('Free aptamer simulation speed %.1f' % self.ns_per_day + ' ns/day') # print speed + if self.params['pick up from freeAptamerChk'] is True: + printRecord('\nResuming a previous free aptamer dynamics') + self.autoMD(structurePDB=aptamerPDB, binding=False, implicitSolvent=implicitSolvent) # In this case, relaxedAptamer_0_processed.pdb (due to resuming) + processedAptamer = aptamerPDB + processedAptamerTrajectory = structureName + '_complete_trajectory.dcd' # this is output file of autoMD + else: + printRecord('\nRunning a fresh free aptamer dynamics') + if implicitSolvent is False: + # set up periodic box and condition: pH and ionic strength => protons, ions and their concentrations + prepPDB(aptamerPDB, self.params['box offset'], self.params['pH'], self.params['ionicStrength'], MMBCORRECTION=True, waterBox=True) + else: # prepare prmtop and crd file using LEap in ambertools + printRecord('Implicit solvent: running LEap to generate .prmtop and .crd for relaxed aptamer...') + # os.system('pdb4amber {}.pdb > {}_amb_processed.pdb 2> {}_pdb4amber_out.log'.format(structureName, structureName, structureName)) + copyfile(aptamerPDB, structureName + '_amb_processed.pdb') + copyfile('./leap_template.in', 'leap_freeAptamerMD.in') + replaceText('leap_freeAptamerMD.in', 'mySTRUCTURE', structureName) + os.system('tleap -f leap_freeAptamerMD.in > leap_freeAptamerMD.out') + os.system('tail -1 leap_freeAptamerMD.out') # show last line + # printRecord(readFinalLines('leap_freeAptamerMD.out', 1)) # show last line. problematic + structureName += '_amb' # after pdb4amber and saveAmberParm, will generate structureName_amb_processed.pdb/top/crd + + processedAptamer = structureName + '_processed.pdb' + self.autoMD(structurePDB=processedAptamer, binding=False, implicitSolvent=implicitSolvent) # run MD sampling either for a set amount of time or till converged to equilibrium sampling of RC's + processedAptamerTrajectory = structureName + '_processed_complete_trajectory.dcd' # this is output file of autoMD + + printRecord('Free aptamer simulation speed %.1f' % self.ns_per_day + ' ns/day') # print out sampling speed self.checkRuntime() - - cleanTrajectory(processedAptamer, processedAptamerTrajectory) + print("\nChecked time. Try cleaning") + if implicitSolvent is False: + cleanTrajectory(processedAptamer, processedAptamerTrajectory) # clean up trajectory for later use. by doing what? + printRecord("Cleaned free aptamer traj. Looking for free aptamer's representative configuration") + else: # no water or salt to remove + copyfile(processedAptamer, 'clean_' + processedAptamer) # TODO no cleaning for now + copyfile(processedAptamerTrajectory, 'clean_' + processedAptamerTrajectory) # TODO no cleaning for now + printRecord("No cleaning in implicit solvent, just copied free aptamer traj. Looking for free aptamer's representative configuration") + self.dcdDict['sampled aptamer {}'.format(self.i)] = 'clean_' + processedAptamerTrajectory self.pdbDict['sampled aptamer {}'.format(self.i)] = 'clean_' + processedAptamer - aptamerDict = self.analyzeTrajectory(self.pdbDict['sampled aptamer {}'.format(self.i)],self.dcdDict['sampled aptamer {}'.format(self.i)]) - self.pdbDict['representative aptamer {}'.format(self.i)] = 'repStructure_{}.pdb'.format(self.i) - - printRecord('Free aptamer sampling complete') + aptamerDict = self.analyzeTrajectory(self.pdbDict['sampled aptamer {}'.format(self.i)], self.dcdDict['sampled aptamer {}'.format(self.i)]) + # Within analyzeTrajectory, the last step is also to save an representative frame. We can also replace it using OpenMM?? + # self.omm.extractLastFrame('repStructure_%d' % self.i + '.pdb', representativeIndex) # need more scripting to complete it + # aptamerDict = {} + # TODO: analyzeTraj --> getNucDAtraj --> Dihedral: raise ValueError("All AtomGroups must contain 4 atoms") + self.pdbDict['representative aptamer {}'.format(self.i)] = 'repStructure_{}.pdb'.format(self.i) + printRecord('Generated representative structure of free aptamer: {}.'.format(self.pdbDict['representative aptamer {}'.format(self.i)])) + printRecord('Free aptamer sampling complete.') return aptamerDict - def dock(self, aptamer, peptide): + def dock(self, aptamerPDB, targetPDB): """ - use LightDock to run docking and isolate good structures + Use LightDock to run docking and isolate good complex structures + :param aptamer: pdb file of aptamer after MD simulation + :param targetPDB: pdb file of the target ligand + :return: """ - printRecord('Docking') + printRecord('\nDocking') + if bool(self.params['peptide backbone constraint constant']): # it constant != 0, bool=True + printRecord('Peptide will be constrained on their dihidral angles.') - if bool(self.params['peptide backbone constraint constant']): - printRecord('Peptide will be constrained.') - - buildPeptide(self.peptide, customAngles=bool(self.params['peptide backbone constraint constant'])) - ld = interfaces.ld(aptamer, peptide, self.params, self.i) + # build a peptide from its sequence: no longer needed. Either user provides pdb of target (if it is peptide), or use the example pdb we provide + # if self.params['build a peptide as target ligand'] is True: buildPeptide(self.targetSeq, self.targetPDB, customAngles=bool(self.params['peptide backbone constraint constant'])) + # No longer use buildPeptide in our pipeline, user must provide a 3D structure of the target ligand. We don't take responsibility of creating a target for them. + # Now we have a pdb file named self.targetPDB which represents our target, provided by the user + + ld = interfaces.ld(aptamerPDB, targetPDB, self.params, self.i) # ld is a new class, therefore need to pass in this class's params: self.params ld.run() topScores = ld.topScores - for i in range(self.params['N docked structures']): - copyfile('top_%d'%self.i + '/top_%d' % int(i + 1) + '.pdb', 'complex_{}_{}.pdb'.format(self.i, int(i))) - self.pdbDict['binding complex {} {}'.format(self.i, int(i))] = 'complex_{}_{}.pdb'.format(self.i,int(i)) - - printRecord('Docking complete, best scores are {}'.format(topScores)) - return topScores + for i in range(len(topScores)): + copyfile('top_%d' % self.i + '/top_%d' % int(i+1) + '.pdb', 'complex_{}_{}.pdb'.format(self.i, int(i))) + self.pdbDict['binding complex {} {}'.format(self.i, int(i))] = 'complex_{}_{}.pdb'.format(self.i, int(i)) + + self.topDockingScores = topScores + if len(topScores) == 0: + printRecord('Docking complete, no docking scores are obtained.') + return 'Not found' + elif len(topScores) < self.params['N docked structures']: + printRecord('Number of identified docked structures is less than what you are looking for!') + printRecord('Docking complete, best score(s): {}.'.format(topScores)) + return topScores + else: + printRecord('Docking complete, best score(s): {}.'.format(topScores)) + return topScores - def bindingDynamics(self, complex): + def complexDynamics(self, complexPDB, implicitSolvent=False): """ - run molecular dynamics - do relevant analysis - :param complex: + Run MD sampling for a complex structure and relevant analysis + :param implicitSolvent: + :param complexPDB: complex structure's pdb like 'complex_1_2.pdb' :return: - """ - structureName = complex.split('.')[0] - printRecord('Running Binding Simulation') - prepPDB(complex, self.params['box offset'], self.params['pH'], self.params['ionic strength'], MMBCORRECTION=False, waterBox=True) - processedComplex = complex.split('.')[0] + '_processed.pdb' - processedComplexTrajectory = processedComplex.split('.')[0] + '_complete_trajectory.dcd' # this is what autoMD will output - - self.autoMD(processedComplex, binding=True) # do MD - automatically converge to equilibrium sampling - - printRecord('Complex simulation speed %.1f' % self.ns_per_day + ' ns/day') # print speed + """ + structureName = complexPDB.split('.')[0] # complexPDB: eg "complex_1_2.pdb" or "complex_1_2_processed.pdb" (if resuming sampling) + + if self.params['pick up from complexChk'] is True: + printRecord('\nResuming a previous aptamer-ligand dynamics') + self.autoMD(structurePDB=complexPDB, binding=True, implicitSolvent=implicitSolvent) # In this case, complex_1_2_processed.pdb (due to resuming) + processedComplex = complexPDB + processedComplexTrajectory = structureName + '_complete_trajectory.dcd' # this is output file of autoMD + else: + printRecord('\nRunning a fresh aptamer-ligand dynamics') + if implicitSolvent is False: + # set up periodic box and condition: pH and ionic strength => protons, ions and their concentrations + prepPDB(complexPDB, self.params['box offset'], self.params['pH'], self.params['ionicStrength'], MMBCORRECTION=True, waterBox=True) + else: # prepare prmtop and crd file using LEap in ambertools + printRecord('Implicit solvent: running LEap to generate .prmtop and .crd for aptamer-ligand complex...') + # os.system('pdb4amber {}.pdb > {}_amb_processed.pdb 2> {}_pdb4amber_out.log'.format(structureName, structureName, structureName)) + copyfile(complexPDB, structureName + '_amb_processed.pdb') + copyfile('./leap_template.in', 'leap_complexMD.in') + replaceText('leap_complexMD.in', 'mySTRUCTURE', structureName) + # If target is peptide or RNA, will also add "leaprc.protein.ff14SB" or "source leaprc.RNA.OL3" to the leap_complexMD.in + if self.targetType == 'peptide': # 'peptide' or 'DNA' or 'RNA' or 'other' + replaceText('leap_complexMD.in', '# TARGET_IS_PEPTIDE ', '') + elif self.targetType == 'RNA': + replaceText('leap_complexMD.in', '# TARGET_IS_RNA ', '') + os.system('tleap -f leap_complexMD.in > leap_complexMD.out') + os.system('tail -1 leap_complexMD.out') # show last line + # printRecord(readFinalLines('leap_complexMD.out', 1)) # show last line. problematic + structureName += '_amb' # after pdb4amber and saveAmberParm, will generate structureName_amb_processed.pdb/top/crd + + processedComplex = structureName + '_processed.pdb' + self.autoMD(structurePDB=processedComplex, binding=True, implicitSolvent=implicitSolvent) # run MD sampling either for a set amount of time or till converged to equilibrium sampling of RC's + processedComplexTrajectory = structureName + '_processed_complete_trajectory.dcd' # this is output file of autoMD + + printRecord('Complex simulation speed %.1f' % self.ns_per_day + ' ns/day') # print out sampling speed self.checkRuntime() - - cleanTrajectory(processedComplex, processedComplexTrajectory) + print("\nChecked time. Try cleaning") + if implicitSolvent is False: + cleanTrajectory(processedComplex, processedComplexTrajectory) # clean up trajectory for later use. by doing what? + printRecord("Cleaned complex traj.") + else: # no water or salt to remove + copyfile(processedComplex, 'clean_' + processedComplex) # TODO no cleaning for now + copyfile(processedComplexTrajectory, 'clean_' + processedComplexTrajectory) # TODO no cleaning for now + printRecord("No cleaning in implicit solvent, just copied complex traj.") self.dcdDict['sampled complex {} {}'.format(self.i, self.j)] = 'clean_' + processedComplexTrajectory self.pdbDict['sampled complex {} {}'.format(self.i, self.j)] = 'clean_' + processedComplex - bindingDict = self.analyzeBinding(self.pdbDict['sampled complex {} {}'.format(self.i, self.j)], self.dcdDict['sampled complex {} {}'.format(self.i,self.j)], self.pdbDict['sampled aptamer {}'.format(self.i)], self.dcdDict['sampled aptamer {}'.format(self.i)]) - - # print findings - printRecord('Binding Results: Contact Persistence = {:.2f}, Contact Score = {:.2f}, Conformation Change = {:.2f}'.format(bindingDict['close contact ratio'], bindingDict['contact score'], bindingDict['conformation change'])) - printRecord('Complex sampling complete') - + # # Not carry out any analysis for current simulator. + # bindingDict = self.analyzeBinding(self.pdbDict['sampled complex {} {}'.format(self.i, self.j)], + # self.dcdDict['sampled complex {} {}'.format(self.i, self.j)], + # self.pdbDict['sampled aptamer {}'.format(self.i)], + # self.dcdDict['sampled aptamer {}'.format(self.i)]) + # # print findings + # printRecord('Binding Results: Contact Persistence = {:.2f}, Contact Score = {:.2f}, Conformation Change = {:.2f}'.format(bindingDict['close contact ratio'], bindingDict['contact score'], bindingDict['conformation change'])) + # # TODO: why {:.2f} instead of {.2f}? + printRecord('Complex sampling complete. Success! Exiting pipeline.') + bindingDict = {} return bindingDict - def autoMD(self, structure, binding=False): + def autoMD(self, structurePDB, binding=False, implicitSolvent=False): """ - run MD until either for a set amount of time or until the dynamics 'converge' - optionally, sample after we reach convergence ("equilibration") # not implemented yet - :param structure: + Run MD either for a set amount of time or till the dynamics 'converge' + :param structurePDB: pdb file name of the structure; Could be free aptamer or aptamer-ligand complex + :param binding: ``True`` - complex; ``False``: free aptamer :return: """ - if binding: - maxIter = self.params['max complex sampling iterations'] + if binding is True: # whether it's complex or free aptamer + maxIter = self.params['max complex sampling iterations'] else: - maxIter = self.params['max aptamer sampling iterations'] # some maximum number of allowable iterations + maxIter = self.params['max aptamer sampling iterations'] cutoff = self.params['autoMD convergence cutoff'] - structureName = structure.split('.')[0] - if self.params['auto sampling'] == False: # just run MD once - self.analyteUnbound = False - omm = interfaces.omm(structure, self.params) - self.ns_per_day = omm.doMD() + structureName = structurePDB.split('.')[0] # e.g., free aptamer: relaxedAptamer_0_amb_processed.pdb (implicit solvent) or relaxedAptamer_0_processed.pdb (explicit solvent) + if self.params['auto sampling'] is False: # just run MD for the given sampling time + self.targetUnbound = False + omm = interfaces.omm(structurePDB=structurePDB, params=self.params, binding=binding, implicitSolvent=implicitSolvent) + self.ns_per_day = omm.doMD() # run MD in OpenMM framework + # print('Generated:', structureName + '_trajectory.dcd') os.replace(structureName + '_trajectory.dcd', structureName + "_complete_trajectory.dcd") + # print('Replaced ^ with:', structureName + '_complete_trajectory.dcd') + printRecord('Generated: ' + structureName + '_complete_trajectory.dcd (autosampling was OFF)') - elif self.params['auto sampling'] == True: # run until we detect equilibration + elif self.params['auto sampling'] is True: # run MD till convergence (equilibrium) converged = False iter = 0 - self.analyteUnbound = False + self.targetUnbound = False - while (converged == False) and (iter < maxIter): + while (converged is False) and (iter < maxIter): iter += 1 - omm = interfaces.omm(structure, self.params) + omm = interfaces.omm(structurePDB=structurePDB, params=self.params, binding=binding, implicitSolvent=implicitSolvent) self.ns_per_day = omm.doMD() if iter > 1: # if we have multiple trajectory segments, combine them - appendTrajectory(structure, structureName + '_trajectory-1.dcd', structureName + '_trajectory.dcd') + appendTrajectory(structurePDB, structureName + '_trajectory-1.dcd', structureName + '_trajectory.dcd') os.replace('combinedTraj.dcd', structureName + '_trajectory-1.dcd') else: - os.replace(structureName + '_trajectory.dcd', structureName + '_trajectory-1.dcd') + os.replace(structureName + '_trajectory.dcd', structureName + '_trajectory-1.dcd') # in case we need to combine two trajectories - combinedSlope = checkTrajPCASlope(structure, structureName + '_trajectory-1.dcd', self.params['print step']) - if binding: # if this is a binding simulation, also check to see if the analyte has come unbound from the analyte, and if so, cutoff the simulation - self.analyteUnbound = checkMidTrajectoryBinding(structure, structureName + '_trajectory-1.dcd', self.peptide, self.sequence, self.params, cutoffTime=1) - if self.analyteUnbound: - printRecord('Analyte came unbound!') + combinedSlope = checkTrajPCASlope(structurePDB, structureName + '_trajectory-1.dcd', self.params['print step']) + # TODO what is the slope and what it for? + if binding is True: + self.targetUnbound = checkMidTrajectoryBinding(structurePDB, structureName + '_trajectory-1.dcd', self.targetSeq, self.aptamerSeq, self.params, cutoffTime=1) + if self.targetUnbound: + printRecord('Target came unbound!') - if (combinedSlope < cutoff) or (self.analyteUnbound == True): # the average magnitude of sloped should be below some cutoff` + if (combinedSlope < cutoff) or (self.targetUnbound is True): converged = True - os.replace(structureName + '_trajectory-1.dcd', structureName + '_complete_trajectory.dcd') # we'll consider the full trajectory as 'sampling' + os.replace(structureName + '_trajectory-1.dcd', structureName + '_complete_trajectory.dcd') + printRecord('Generated: ' + structureName + '_complete_trajectory.dcd (autosampling was ON)') def analyzeTrajectory(self, structure, trajectory): """ - analyze trajectory for aptamer fold + analyte binding information - :param trajectory: + Analyze trajectory of free aptamer (MD sampling) + :param structure: topology file of the free aptamer, eg, its PDB file. + :param trajectory: free aptamer MD trajectory :return: """ u = mda.Universe(structure, trajectory) - wcTraj = getWCDistTraj(u) # watson-crick base pairing distances (H-bonding) s + # extract distance info through the trajectory + wcTraj = getWCDistTraj(u) # watson-crick base pairing distances (H-bonding) baseDistTraj = getBaseBaseDistTraj(u) # FAST, base-base center-of-geometry distances nucleicAnglesTraj = getNucDATraj(u) # FAST, new, omits 'chi' angle between ribose and base # 2D structure analysis pairTraj = getPairTraj(wcTraj) secondaryStructure = analyzeSecondaryStructure(pairTraj) # find equilibrium secondary structure - print('Predicted 2D structure :' + self.ssAnalysis['2d string'][self.i]) - print('Actual 2D structure :' + configToString(secondaryStructure)) + if self.actionDict['do 2d analysis'] is True: + printRecord('Predicted 2D structure :' + self.ssAnalysis['displayed 2d string'][self.i]) # if we did not fold the structure, we probably do not know the secondary structure. + printRecord('Actual 2D structure :' + configToString(secondaryStructure)) # 3D structure analysis - mixedTrajectory = np.concatenate( - (baseDistTraj.reshape(len(baseDistTraj), int(baseDistTraj.shape[-2] * baseDistTraj.shape[-1])), nucleicAnglesTraj.reshape(len(nucleicAnglesTraj), int(nucleicAnglesTraj.shape[-2] * nucleicAnglesTraj.shape[-1]))), - axis=1) # mix up all our info + mixedTrajectory = np.concatenate((baseDistTraj.reshape(len(baseDistTraj), int(baseDistTraj.shape[-2] * baseDistTraj.shape[-1])), nucleicAnglesTraj.reshape(len(nucleicAnglesTraj), int(nucleicAnglesTraj.shape[-2] * nucleicAnglesTraj.shape[-1]))), axis=1) # mix up all our info representativeIndex, pcTrajectory, eigenvalues = isolateRepresentativeStructure(mixedTrajectory) - # save this structure as a separate file - extractFrame(structure, trajectory, representativeIndex, 'repStructure_%d'%self.i + '.pdb') + # save this structure a separate file + extractFrame(structure, trajectory, representativeIndex, 'repStructure_%d' % self.i + '.pdb') - # we also need a function which processes the energies spat out by the trajectory logs + # we also need function which processes the energies spat out by the trajectory logs analysisDict = {} # compile our results analysisDict['2D structure'] = secondaryStructure analysisDict['RC trajectories'] = pcTrajectory @@ -487,16 +699,59 @@ def analyzeTrajectory(self, structure, trajectory): def analyzeBinding(self, bindStructure, bindTrajectory, freeStructure, freeTrajectory): """ - analyze trajectory for aptamer fold + analyte binding information - :param trajectory: + Analyze trajectory of both free aptamer and aptamer-target complex to find out about binding information + :param bindStructure: complex structure's PDB + :param bindTrajectory: complex structure's MD trajectory + :param freeStructure: free aptamer structure's PDB + :param freeTrajectory: free aptamer structure's MD trajectory :return: """ bindu = mda.Universe(bindStructure, bindTrajectory) freeu = mda.Universe(freeStructure, freeTrajectory) - bindingDict = bindingAnalysis(bindu, freeu, self.peptide, self.sequence) # look for contacts between analyte and aptamer - if self.analyteUnbound: - bindingDict['analyte came unbound'] = True + bindingDict = bindingAnalysis(bindu, freeu, self.targetSeq, self.aptamerSeq) # look for contacts between target ligand and aptamer. + if self.targetUnbound: + bindingDict['target came unbound'] = True else: - bindingDict['analyte came unbound'] = False + bindingDict['target came Unbound'] = False return bindingDict + + # ======================================================= + # ====== supporting functions are followed (part2) ====== + # ======================================================= + + def checkRuntime(self): + """ + Estimate the maximum runtime for this code, given a ns/day calculation from existing work done + :return: + """ + projectedMaxRuntime = self.computeRuntime() + buffer = 0.9 # ideally would like a buffer of 20% of the walltime + doReduction = 0 + # if the code is going to take too long, shorten the sampling time until it fits + while projectedMaxRuntime > (buffer * self.params['max walltime']): # max walltime is in hours + doReduction = 1 + self.params['sampling time'] *= 0.95 + projectedMaxRuntime = self.computeRuntime() + + if doReduction == 1: + if self.params['sampling time'] < 0.1: + printRecord('Sampling time reduced to 100 ps - this run is too expensive, and will now terminate') + self.terminateRun() + else: + printRecord('Binding sampling time chunk reduced to {} ns'.format(self.params['sampling time'])) + + def computeRuntime(self): + dt = self.params['sampling time'] # ns in MD sampling after getting (smoothed) 3D structure + ssStructures = self.params['N 2D structures'] + dockingStructures = self.params['N docked structures'] + aptamerSteps = self.params['max aptamer sampling iterations'] + complexSteps = self.params['max complex sampling iterations'] + maxNS = dt * (ssStructures * aptamerSteps + ssStructures * dockingStructures * complexSteps) # maximum possible sampling time in nanoseconds + projectedMaxRuntime = maxNS / self.ns_per_day * 24 # how many hours needed to complete our maximum sampling time + + return projectedMaxRuntime + + def terminateRun(self): + """ for some reason, the run needs to end """ + sys.exit() diff --git a/pdbfixersource.py b/pdbfixersource.py index c05e98a..c326b49 100644 --- a/pdbfixersource.py +++ b/pdbfixersource.py @@ -32,18 +32,21 @@ __author__ = "Peter Eastman" __version__ = "1.7" -import simtk.openmm as mm -import simtk.openmm.app as app -import simtk.unit as unit -from simtk.openmm.app.internal.pdbstructure import PdbStructure -from simtk.openmm.app.internal.pdbx.reader.PdbxReader import PdbxReader -from simtk.openmm.app.element import hydrogen, oxygen -from simtk.openmm.app.forcefield import NonbondedGenerator +# # importing 'simtk.openmm' is deprecated. Import 'openmm' instead +# # There is another statement down under "try" +import openmm as mm +import openmm.app as app +import openmm.unit as unit +from openmm.app.internal.pdbstructure import PdbStructure +from openmm.app.internal.pdbx.reader.PdbxReader import PdbxReader +from openmm.app.element import hydrogen, oxygen +from openmm.app.forcefield import NonbondedGenerator # Support Cythonized functions in OpenMM 7.3 # and also implementations in older versions. -try: - from simtk.openmm.app.internal import compiled +try: + from openmm.app.internal import compiled + matchResidue = compiled.matchResidueToTemplate except ImportError: matchResidue = app.forcefield._matchResidue diff --git a/utils.py b/utils.py index 6953298..bf54099 100644 --- a/utils.py +++ b/utils.py @@ -1,22 +1,24 @@ """ -utilities +Utitilies -- how to intuitively distinguish it from analysisTools.py? """ -import os -import MDAnalysis as mda -import mdtraj as md +from openmm.app import * +import openmm.unit as unit + import argparse -from PeptideBuilder import Geometry -import PeptideBuilder -import Bio.PDB -import simtk.unit as unit -from simtk.openmm.app import * -import time -from pdbfixersource import PDBFixer -import numpy as np -from shutil import copyfile +import os import csv +import numpy as np +import time + +import Bio.PDB # biopython +import mdtraj as md +import MDAnalysis as mda + +from pdbfixersource import PDBFixer # related to openmm. prepare PDB files for molecular simulations. https://openmm.org/ecosystem from collections import Counter -#from main import params + +from PeptideBuilder import Geometry # pip install PeptideBuilder +import PeptideBuilder # I/O @@ -25,27 +27,38 @@ def get_input(): get the command line in put for the run num. defaulting to a new run (0) :return: """ + # Two examples of commands: + # python main.py --run_num=1 --mode='free aptamer' --aptamerSeq='TAATGTTAATTG' --ligand='False' --ligandType='' --ligandSeq='' + # python main.py --run_num=2 --mode='full dock' --aptamerSeq='TAATGTTAATTG' --ligand='YQTQ.pdb' --ligandType='peptide' --ligandSeq='YQTQTNSPRRAR' parser = argparse.ArgumentParser() parser.add_argument('--run_num', type=int, default=0) - parser.add_argument('--sequence', type=str, default='XXX') - parser.add_argument('--peptide', type=str, default='BBB') - parser.add_argument('--walltime', type=float, default=24) + parser.add_argument('--mode', type=str, default='simulation_mode') + parser.add_argument('--aptamerSeq', type=str, default='NOSEQUENCE') + parser.add_argument('--ligand', type=str, default='False') + parser.add_argument('--ligandType', type=str, default='') + parser.add_argument('--ligandSeq', type=str, default='') + cmd_line_input = parser.parse_args() - run = cmd_line_input.run_num - sequence = cmd_line_input.sequence - peptide = cmd_line_input.peptide - walltime = cmd_line_input.walltime + run_num = cmd_line_input.run_num + mode = cmd_line_input.mode + aptamerSeq = cmd_line_input.aptamerSeq + ligand = cmd_line_input.ligand + ligandType = cmd_line_input.ligandType + ligandSeq = cmd_line_input.ligandSeq + + return [run_num, mode, aptamerSeq, ligand, ligandType, ligandSeq] - return [run, sequence, peptide, walltime] -def writeCheckpoint(text): +def recenterDCD(topology, trajectory): """ - write some output to the checkpoint file - :return: + topology as pdb + trajectory as dcd + creates a new dcd without periodic artifacts """ - f = open('checkpoint.txt', 'a') - f.write('\n' + text) - f.close() + traj = md.load(trajectory, top = topology) + traj.image_molecules() + traj.save(trajectory.split('.')[0] + '_recentered.dcd') + class Timer: def __enter__(self): @@ -56,96 +69,185 @@ def __exit__(self, *args): self.end = time.time() self.interval = self.end - self.start -def printRecord(statement): - ''' + +def printRecord(statement, filepath=""): + """ print a string to command line output and a text file :param statement: :return: - ''' + """ print(statement) - if os.path.exists('record.txt'): - with open('record.txt', 'a') as file: + if os.path.exists(filepath + 'record.txt'): + with open(filepath + 'record.txt', 'a') as file: file.write('\n' + statement) else: - with open('record.txt', 'w') as file: + with open(filepath + 'record.txt', 'w') as file: file.write('\n' + statement) - -def mode(lst): - """ - Returns the statistical mode(s) of a given list, only used for checking backbone_dihedrals - Source: https://stackabuse.com/calculating-mean-median-and-mode-in-python/ - :param lst: - :return mode_list, a list of the mode(s) found in the input list: - """ - c = Counter(lst) - mode_list = [k for k, v in c.items() if v == c.most_common(1)[0][1]] - return mode_list -# pdb & dcd file editing def prepPDB(file, boxOffset, pH, ionicStrength, MMBCORRECTION=False, waterBox=True): """ - soak pdb file in water box - :MMBCORRECTION: if the input pdb file is an MMB output, we need to apply a correction, since MMB is a little weird formatting-wise https://simtk.org/plugins/phpBB/viewtopicPhpbb.php?f=359&t=13397&p=0&start=0&view=&sid=bc6c1b9005122914ec7d572999ba945b + Soak pdb file in water box :param file: + :param boxOffset: + :param pH: + :param ionicStrength: + :param MMBCORRECTION: if the input pdb file is an MMB output, we need to apply a correction, since MMB is a little weird formatting-wise + https://simtk.org/plugins/phpBB/viewtopicPhpbb.php?f=359&t=13397&p=0&start=0&view=&sid=bc6c1b9005122914ec7d572999ba945b + :param waterBox: :return: """ + if MMBCORRECTION: replaceText(file, '*', "'") # due to a bug in this version of MMB - structures are encoded improperly - this fixes it fixer = PDBFixer(filename=file) padding, boxSize, boxVectors = None, None, None - geompadding = float(boxOffset) * unit.nanometer + geompadding = float(boxOffset) * unit.nanometer # TODO what does unit.nanometer do - boxMode = 'cubic' # toggle for box type - look at openmm-setup source code for other box types + boxMode = 'cubic' # TODO toggle for box type - look at openmm-setup source code for other box types if boxMode == 'cubic': - padding = geompadding # for cubic box + padding = geompadding # for cubic box elif boxMode == 'rectangular prism': # or we can make a rectangular prism which (maybe) cuts off sides of the cube u = mda.Universe(file) coords = u.atoms.positions - xrange = np.ptp(coords[:, 0]) # get the maximum dimension + xrange = np.ptp(coords[:, 0]) # get maximum dimension yrange = np.ptp(coords[:, 1]) zrange = np.ptp(coords[:, 2]) maxsize = max([xrange, yrange, zrange]) - xrange = max([xrange,maxsize/2]) / 10 # minimum dimension is half the longest, also convert to nm - yrange = max([yrange,maxsize/2]) / 10 - zrange = max([zrange,maxsize/2]) / 10 - - xrange = xrange + 2 * boxOffset # may also need an EWALD offset + # minimum dimension is half the longest TODO why? + # also convert to nanometer + xrange = max([xrange, maxsize / 2]) / 10 + yrange = max([yrange, maxsize / 2]) / 10 + zrange = max([zrange, maxsize / 2]) / 10 + + # TODO may also need an EWALD offset + xrange = xrange + 2 * boxOffset yrange = yrange + 2 * boxOffset zrange = zrange + 2 * boxOffset - boxSize = [xrange,yrange,zrange] * unit.nanometer # for rectangular prism + boxSize = [xrange, yrange, zrange] * unit.nanometer # for rectangular prism fixer.findMissingResidues() fixer.findMissingAtoms() fixer.addMissingAtoms() # may need to optimize bonding here fixer.addMissingHydrogens(pH=pH) # add missing hydrogens - + # TODO: Don't understand these above yet + if waterBox == True: - ionicStrength = float(ionicStrength) * unit.molar # not implemented + ionicStrength = float(ionicStrength) * unit.molar positiveIon = 'Na+' # params['positiveion']+'+' negativeIon = 'Cl-' # params['negativeion']+'-' fixer.addSolvent(boxSize, padding, boxVectors, positiveIon, negativeIon, ionicStrength) - + PDBFile.writeFile(fixer.topology, fixer.positions, open(file.split('.pdb')[0] + '_processed.pdb', 'w')) + +def replaceText(file, old_string, new_string): + # search and replace string in a text file, then save the new version + f = open(file, 'r') + text = f.read() + f.close() + text = text.replace(old_string, new_string) + f = open(file, 'w') + f.write(text) + f.close() + + +def findLine(file, string): + """ + return the line number of a given string in a text file, indexing from 1 + :param file: + :param string: + :return lineNum: + """ + f = open(file, 'r') + text = f.read() + f.close() + text = text.split('\n') + try: + lineInd = 1 + for line in text: + if line == string: + lineNum = lineInd # index from 1 + lineInd += 1 + return lineNum + except: + raise ValueError("String not found in the file!") + + +def addLine(file, string, line_number): + """ + add a new line of text to a file + :param file: + :param string: + :param line_number: + :return: + """ + f = open(file, 'r') + text = f.read() + f.close() + lines = text.split('\n') + lines.insert(line_number - 1, string) + text = "\n".join(lines) + f = open(file, 'w') + f.write(text) + f.close() + + +def cleanTrajectory(structure, trajectory): + """ + Remove water, salt from trajectory + :param structure: + :param trajectory: + :return: + """ + u = mda.Universe(structure, trajectory) + # TODO: if u.segments.n_segments > 2: # if > 2 segments, then there must be solvent and salts (assuming nonzero salt concentration) + goodStuff = u.segments[:-2].atoms # cut out salts and solvents + goodStuff.write("clean_" + structure) # write topology + with mda.Writer("clean_" + trajectory, goodStuff.n_atoms) as W: + for ts in u.trajectory: # indexing over the trajectory + W.write(goodStuff) + + +def extractFrame(structure, trajectory, frame, outFileName): + """ + Save a given trajectory frame as a separate pdb file + :param structure: + :param trajectory: + :param frame: + :param outFileName: + :return: + """ + u = mda.Universe(structure, trajectory) # load up the whole trajectory + u.trajectory[frame] # Michael: this indexes the trajectory up to the desired frame (weird syntax, I think) # Me: this takes out the desired frame + if u.segments.n_segments > 2: # if there are more than 2 segments, then there must be solvent and salts (assuming nonzero salt concentration) + atoms = u.segments[:-2].atoms # omit solvent and salts + else: + atoms = u.atoms + atoms.write(outFileName) + if frame == -1: + printRecord('MDAnalysis: save the last frame into: {}'.format(outFileName)) + + def findAngles(): """ - Reads the angles required to constrain the dihedrals of the peptide backbone from the backbone_dihedrals.csv file. + Reads the angles required to constrain the dihedrals of the peptide backbone from the backbone_dihedrals.csv file. For more info, see README_CONSTRAINTS.md :param: :return angles_to_constrain, a list that contains the numerical values for angles to constrain: """ angles_to_constrain = [] - resdict = {"ALA": "A","CYS": "C","ASP": "D","GLU": "E","PHE": "F", - "GLY": "G","HIS": "H","ILE": "I","LYS": "K","LEU": "L", - "MET": "M","ASN": "N","PRO": "P","GLN": "Q","ARG": "R", - "SER": "S","THR": "T","VAL": "V","TRP": "W","TYR": "Y"} - resdict_inv = {one_let: three_let for three_let, one_let in resdict.items()} # 3-letter a.a. code easier to work with for OpenMM + resdict = {"ALA": "A", "CYS": "C", "ASP": "D", "GLU": "E", "PHE": "F", + "GLY": "G", "HIS": "H", "ILE": "I", "LYS": "K", "LEU": "L", + "MET": "M", "ASN": "N", "PRO": "P", "GLN": "Q", "ARG": "R", + "SER": "S", "THR": "T", "VAL": "V", "TRP": "W", "TYR": "Y"} + resdict_inv = {one_let: three_let for three_let, one_let in + resdict.items()} # 3-letter a.a. code easier to work with for OpenMM with open("backbone_dihedrals.csv") as csv_file: printRecord("Reading CSV file...") @@ -153,17 +255,17 @@ def findAngles(): residue_nums = [] rows = [] row_lengths = set() - + for row in read_csv: rows.append(row) residue_nums.append(row[0]) row_lengths.add(len(row)) -# if len(rows) == 1 and params['peptide backbone constraint constant'] != 0: -# printRecord("ERROR: Backbone angles file does not have any values, but the constraint constant in main.py is not zero. Exiting run.") -# exit() - - if len(row_lengths) != 1: # won't work if there is 1 more faulty input for line 1, and 4 inputs for line 2 + # if len(rows) == 1 and params['peptide backbone constraint constant'] != 0: + # printRecord("ERROR: Backbone angles file does not have any values, but the constraint constant in main.py is not zero. Exiting run.") + # exit() + + if len(row_lengths) != 1: # won't work if there is 1 more faulty input for line 1, and 4 inputs for line 2 rows_unequal = [] for i in range(len(rows)): @@ -171,13 +273,13 @@ def findAngles(): rows_unequal.append(i + 1) printRecord("ERROR: Incorrect number of inputs for rows:") - + for unequal_row in rows_unequal: printRecord(unequal_row) - + printRecord("Exiting run.") exit() - + elif mode(residue_nums) != residue_nums: printRecord("ERROR: More than one input row for a residue_num in backbone_dihedrals.csv; exiting run.") exit() @@ -191,121 +293,76 @@ def findAngles(): angles_to_constrain.append(rows[i]) return angles_to_constrain - -def buildPeptide(peptide, customAngles=False): + +def mode(lst): + """ + Returns the statistical mode(s) of a given list, only used for checking backbone_dihedrals + Source: https://stackabuse.com/calculating-mean-median-and-mode-in-python/ + :param lst: + :return mode_list, a list of the mode(s) found in the input list: + """ + c = Counter(lst) + mode_list = [k for k, v in c.items() if v == c.most_common(1)[0][1]] + return mode_list + + +def buildPeptide(peptideSeq, peptidePDB, customAngles=False): """ - construct a peptide sequence pdb file + Construct a peptide with optionally custom angles and constraints :param peptide: + :param customAngles: :return: """ - geo = Geometry.geometry(peptide[0]) - angles_to_constrain = findAngles() # all values in the list are strings - printRecord("Found angles_to_constrain successfully, beginning to constrain...\n") - + print('custom angles=', customAngles) + geo = Geometry.geometry(peptideSeq[0]) + # angles_to_constrain = findAngles() # all values in the list are strings + # printRecord("Found angles_to_constrain successfully, beginning to constrain...\n") + if customAngles: - printRecord("customAngles on\n") + printRecord("CustomAngles on\n") + angles_to_constrain = findAngles() # all values in the list are strings + printRecord("Found angles_to_constrain successfully, beginning to constrain...\n") phis = {row[0]: float(row[1]) for row in angles_to_constrain} psis = {row[0]: float(row[2]) for row in angles_to_constrain} - + for row in angles_to_constrain: if int(row[0]) == 0: - printRecord('phi[0] and psi[0]:', phis[row[0]], psis[row[0]], "\n") # only used for debugging + printRecord('phi[0] and psi[0]:', phis[row[0]], psis[row[0]], "\n") # only used for debugging geo.phi, geo.psi = phis[row[0]], psis[row[0]] - - structure = PeptideBuilder.initialize_res(peptide[0]) - - for i in range(1, len(peptide)): - geo = Geometry.geometry(peptide[i]) - + + structure = PeptideBuilder.initialize_res(peptideSeq[0]) + + for i in range(1, len(peptideSeq)): + geo = Geometry.geometry(peptideSeq[i]) + if customAngles: for row in angles_to_constrain: if int(row[0]) == i: - printRecord(f'phi[{i}] and psi[{i}]: {phis[str(i)]}, {psis[str(i)]}\n') # only used for debugging + printRecord(f'phi[{i}] and psi[{i}]: {phis[str(i)]}, {psis[str(i)]}\n') # only used for debugging geo.phi, geo.psi = phis[str(i)], psis[str(i)] - + printRecord("Adding Residue...\n") PeptideBuilder.add_residue(structure, geo) - + if customAngles: constrain_str = " with custom angles & constraints" else: constrain_str = "" printRecord("Successfully built peptide" + constrain_str + "\n") - + # PeptideBuilder.add_terminal_OXT(structure) # OpenMM will not run without this, but LightDock will not run with it. Solution, add terminal oxygen in prepPDB after docking out = Bio.PDB.PDBIO() out.set_structure(structure) - out.save('peptide.pdb') - -def combinePDB(file1, file2): - """ - combine 2 pdb files into one - some special formatting for MDA outputs in particular - :param file1: - :param file2: - :return: - """ - filenames = [file1, file2] - for file in filenames: # remove title, periodic box, endpoints - removeLine(file, 'CRYST1') - removeLine(file, 'TITLE') - removeLine(file, 'END') - if 'repStructure' in file: - appendLine(file, 'TER') + out.save(peptidePDB) - with open('combined.pdb', 'w') as outfile: - for fname in filenames: - with open(fname) as infile: - for line in infile: - outfile.write(line) - -def cleanTrajectory(structure, trajectory): - """ - remove water, salt from trajectory input - :param structure: pdb input for initial structure template - :param trajectory: dcd trajectory file - :return: - """ - u = mda.Universe(structure, trajectory) # load up trajectory - goodStuff = u.segments[:-2].atoms # cut out salts and solvent - goodStuff.write("clean_" + structure) # write topology - with mda.Writer("clean_" + trajectory, goodStuff.n_atoms) as W: # and write trajectory - for ts in u.trajectory: # indexing over the trajectory - W.write(goodStuff) - -# noinspection PyStatementEffect -def extractFrame(structure, trajectory, frame, outFileName): - """ - saves a given trajectory frame as a separate pdb file - :param structure: pdb input for initial structure template - :param trajectory: dcd trajectory file - :param frame: frame to be extracted - :param outFileName: the name of the output file - :return: - """ - u = mda.Universe(structure, trajectory) # load up trajectory - u.trajectory[frame] # this indexes the trajectory up to the desired frame (weird syntax, I think) - if u.segments.n_segments > 2: # if there are more than 2 segments, then there must be solvent and salts (assuming nonzero salt concentration) - atoms = u.segments[:-2].atoms # omit solvent and salts - else: - atoms = u.atoms - atoms.write(outFileName) - -def recenterDCD(topology, trajectory): - """ - topology as pdb - trajectory as dcd - creates a new dcd without periodic artifacts - """ - traj = md.load(trajectory, top = topology) - traj.image_molecules() - traj.save(trajectory.split('.')[0] + '_recentered.dcd') def killH(structure): """ - use simTk modeller to delete all atoms with 'H' in the name + Use simTk modeller to delete all atoms with "H" in the name + :param structure: + :return: """ pdb = PDBFile(structure) topology = pdb.topology @@ -314,16 +371,12 @@ def killH(structure): modeller.delete(atom for atom in topology.atoms() if "H" in atom.name) PDBFile.writeFile(modeller.topology, modeller.positions, open(structure.split('.')[0] + '_noH.pdb', 'w')) -def changeSegment(structure, oldSeg, newSeg): - """ - change the segment ID for all molecule(s) in a pdb file - """ - replaceText(structure, ' ' + oldSeg + ' ', ' ' + newSeg + ' ') def addH(structure, pH): """ - protonate a given structure - :param file: + Protonate a given structure + :param structure: + :param pH: :return: """ pdb = PDBFile(structure) @@ -333,121 +386,50 @@ def addH(structure, pH): modeller.addHydrogens(pH=pH) PDBFile.writeFile(modeller.topology, modeller.positions, open(structure.split('.')[0] + '_H.pdb', 'w')) -def appendTrajectory(topology, original, new): + +def changeSegment(structure, oldSeg, newSeg): """ - use mda to combine old and new MD trajectory files + Change the segment ID for all molecule(s) in a pdb file + :param structure: + :param oldSeg: + :param newSeg: + :return: """ - trajectories = [original, new] - u = mda.Universe(topology, trajectories) - with mda.Writer('combinedTraj.dcd', u.atoms.n_atoms) as W: - for ts in u.trajectory: - W.write(u) - -def fullPipelineTrajectory(ind1,ind2): - ''' - combine folding, smoothing, sampling, docking and binding trajectories into one nice video - ''' - - # this needs to be updated with the new file formatting system - trajectories = [] - # fold - dir = './mmbFiles_%d'%ind1 - copyfile(dir + '/last.1.pdb','foldFrame1.pdb') - dirList = os.listdir(dir) - - filenames = [] - for file in dirList: - if 'trajectory' in file: - filenames.append(dir + '/' +file) - - with open('foldingTraj_%d'%ind1 + '.pdb', 'w') as outfile: - for fname in filenames: - with open(fname) as infile: - for line in infile: - outfile.write(line) - - replaceText('foldingTraj_%d'%ind1 + '.pdb', '*', "'") # due to a bug in this version of MMB - structures are encoded improperly - this fixes it - - u = mda.Universe('foldingTraj_%d'%ind1 + '.pdb') - with mda.Writer('foldingTraj_%d'%ind1 +'.dcd', u.atoms.n_atoms) as W: - for ts in u.trajectory: - W.write(u) - - trajectories.append('foldingTraj_%d'%ind1 + '.dcd') - - # initial relaxation - trajectories.append('smoothed_sequence_%d'%ind1 + '.dcd') - - # free aptamer - trajectories.append('clean_finished_sequence_%d'%ind1 + '.dcd') - - u = mda.Universe('foldFrame1.pdb', trajectories) - - with mda.Writer('fullPipeTraj.dcd', u.atoms.n_atoms) as W: - for ts in u.trajectory: - W.write(u) - - - # docking - - # binding - trajectories.append('clean_finished_complex_%d'%ind1 + '_%d'%ind2 + '.dcd') + replaceText(structure, ' ' + oldSeg + ' ', ' ' + newSeg + ' ') -# text editors -def findLine(file, string): - # return the line number of a given string in a text file, indexing from 1 +def readInitialLines(file, lines): + # Return the first N lines of a text file f = open(file, 'r') text = f.read() f.close() text = text.split('\n') - try: - lineInd = 1 - for line in text: - if line == string: - lineNum = lineInd # index from 1 - lineInd += 1 + initialLines = text[:lines] + + return initialLines - return lineNum - except: - raise ValueError("String not found in file!") def readFinalLines(file, lines): - # return the final N lines of a text file + # Return the final N lines of a text file f = open(file, 'r') text = f.read() f.close() text = text.split('\n') - finalLines = text[-(lines + 1):] + finalLines = text[-(lines + 1):] # TODO: this will return "lines+1" rows from the end of the file return finalLines -def readInitialLines(file, lines): - # return the first N lines of a text file - f = open(file, 'r') - text = f.read() - f.close() - text = text.split('\n') - initialLines = text[:lines] - - return initialLines -def replaceText(file, old_string, new_string): - # search and replace text in a text file, then save the new version - f = open(file, 'r') - text = f.read() - f.close() - text = text.replace(old_string, new_string) - f = open(file, 'w') - f.write(text) - f.close() +def appendTrajectory(topology, original, new): + """ + Use mda to combine old and new MD trajectories into one nice video + """ + trajectories = [original, new] + u = mda.Universe(topology, trajectories) + with mda.Writer('combinedTraj.dcd', u.atoms.n_atoms) as W: + for ts in u.trajectory: + W.write(u) -def copyLine(file, line_number): - # copy a line of text from a file and return it - f = open(file, 'r') - text = f.read() - f.close() - return text.split('\n')[line_number - 1] # copy a line from the file, indexing from 1 def removeLine(file, string): """ @@ -471,17 +453,6 @@ def removeLine(file, string): f.write(text) f.close() -def addLine(file, string, line_number): - # add a new line of text to a file - f = open(file, 'r') - text = f.read() - f.close() - lines = text.split('\n') - lines.insert(line_number - 1, string) # replace line ### with the string, indexing from 1 - text = "\n".join(lines) - f = open(file, 'w') - f.write(text) - f.close() def appendLine(file, string): # add a new line of end of a file @@ -495,3 +466,94 @@ def appendLine(file, string): f.write(text) f.close() + +# # Doesn't seem to be used? +# def writeCheckpoint(text): +# """ +# write some output to the checkpoint file +# :return: +# """ +# f = open('checkpoint.txt', 'a') +# f.write('\n' + text) +# f.close() +# +# def combinePDB(file1, file2): +# """ +# combine 2 pdb files into one +# some special formatting for MDA outputs in particular +# :param file1: +# :param file2: +# :return: +# """ +# filenames = [file1, file2] +# for file in filenames: # remove title, periodic box, endpoints +# removeLine(file, 'CRYST1') +# removeLine(file, 'TITLE') +# removeLine(file, 'END') +# if 'repStructure' in file: +# appendLine(file, 'TER') +# +# with open('combined.pdb', 'w') as outfile: +# for fname in filenames: +# with open(fname) as infile: +# for line in infile: +# outfile.write(line) +# +# +# def fullPipelineTrajectory(ind1,ind2): +# ''' +# combine folding, smoothing, sampling, docking and binding trajectories into one nice video +# ''' +# +# # this needs to be updated with the new file formatting system +# trajectories = [] +# # fold +# dir = './mmbFiles_%d'%ind1 +# copyfile(dir + '/last.1.pdb','foldFrame1.pdb') +# dirList = os.listdir(dir) +# +# filenames = [] +# for file in dirList: +# if 'trajectory' in file: +# filenames.append(dir + '/' +file) +# +# with open('foldingTraj_%d'%ind1 + '.pdb', 'w') as outfile: +# for fname in filenames: +# with open(fname) as infile: +# for line in infile: +# outfile.write(line) +# +# replaceText('foldingTraj_%d'%ind1 + '.pdb', '*', "'") # due to a bug in this version of MMB - structures are encoded improperly - this fixes it +# +# u = mda.Universe('foldingTraj_%d'%ind1 + '.pdb') +# with mda.Writer('foldingTraj_%d'%ind1 +'.dcd', u.atoms.n_atoms) as W: +# for ts in u.trajectory: +# W.write(u) +# +# trajectories.append('foldingTraj_%d'%ind1 + '.dcd') +# +# # initial relaxation +# trajectories.append('smoothed_sequence_%d'%ind1 + '.dcd') +# +# # free aptamer +# trajectories.append('clean_finished_sequence_%d'%ind1 + '.dcd') +# +# u = mda.Universe('foldFrame1.pdb', trajectories) +# +# with mda.Writer('fullPipeTraj.dcd', u.atoms.n_atoms) as W: +# for ts in u.trajectory: +# W.write(u) +# +# +# # docking +# +# # binding +# trajectories.append('clean_finished_complex_%d'%ind1 + '_%d'%ind2 + '.dcd') +# +# +# def copyLine(file, line_number): +# # copy a line of text from a file and return it +# f = open(file, 'r') +# text = f.read() +# f.close() +# return text.split('\n')[line_number - 1] # copy a line from the file, indexing from 1