protein ligand docking

Member Site Forums Rosetta 3 Rosetta 3 – General protein ligand docking

Viewing 3 reply threads
  • Author
    Posts
    • #3064
      Anonymous

        Hello!

        I’m not able to generate a score.sc file because something is not allowing me to dock my ligands to my protein.  I get the error

         Cannot normalize xyzVector of length() zero

        Error: [ ERROR ] 

        Error: [ ERROR ] Treating failure as bad input; canceling similar jobs

        Here’s an example of my params file.  I’ve attached a copy of my ligand/receptor .pdb and my dock.xml as well:


        NAME Out
        IO_STRING Out Z
        TYPE LIGAND
        AA UNK
        ATOM N1 Nhis X -0.27
        ATOM C1 CH1 X 0.12
        ATOM C2 aroC X 0.11
        ATOM S1 S X -0.03
        ATOM S2 S X -0.08
        ATOM C3 CH1 X 0.19
        ATOM C4 aroC X 0.29
        ATOM O1 OOC X -0.27
        ATOM N2 Nhis X -0.11
        ATOM C5 CH1 X 0.22
        ATOM O2 OOC X -0.20
        ATOM C6 aroC X 0.02
        ATOM C7 aroC X -0.00
        ATOM C8 aroC X -0.00
        ATOM C9 aroC X -0.00
        ATOM C10 aroC X -0.00
        ATOM C11 aroC X -0.00
        BOND C1 N1
        BOND N1 C2
        BOND C2 S1
        BOND C2 S2
        BOND S2 C3
        BOND C3 C4
        BOND C4 O1
        BOND C4 N2
        BOND C3 C5
        BOND N1 C5
        BOND C5 O2
        BOND C5 C6
        BOND C6 C7
        BOND C7 C8
        BOND C8 C9
        BOND C9 C10
        BOND C10 C11
        BOND C6 C11
        CHI 1 S2 C3 C4 O1
        CHI 2 C3 C5 C6 C7
        NBR_ATOM N1
        NBR_RADIUS 0.000000
        ICOOR_INTERNAL N1 0.000000 0.000000 0.000000 N1 C1 C2
        ICOOR_INTERNAL C1 0.000000 0.000000 0.000000 N1 C1 C2
        ICOOR_INTERNAL C2 0.000000 0.000000 0.000000 N1 C1 C2
        ICOOR_INTERNAL S1 0.000000 0.000000 0.000000 C2 N1 C1
        ICOOR_INTERNAL S2 0.000000 0.000000 0.000000 C2 N1 S1
        ICOOR_INTERNAL C3 0.000000 0.000000 0.000000 S2 C2 N1
        ICOOR_INTERNAL C4 0.000000 0.000000 0.000000 C3 S2 C2
        ICOOR_INTERNAL O1 0.000000 0.000000 0.000000 C4 C3 S2
        ICOOR_INTERNAL N2 0.000000 0.000000 0.000000 C4 C3 O1
        ICOOR_INTERNAL C5 0.000000 0.000000 0.000000 C3 S2 C4
        ICOOR_INTERNAL O2 0.000000 0.000000 0.000000 C5 C3 S2
        ICOOR_INTERNAL C6 0.000000 0.000000 0.000000 C5 C3 O2
        ICOOR_INTERNAL C7 0.000000 0.000000 0.000000 C6 C5 C3
        ICOOR_INTERNAL C8 0.000000 0.000000 0.000000 C7 C6 C5
        ICOOR_INTERNAL C9 0.000000 0.000000 0.000000 C8 C7 C6
        ICOOR_INTERNAL C10 0.000000 0.000000 0.000000 C9 C8 C7
        ICOOR_INTERNAL C11 0.000000 0.000000 0.000000 C10 C9 C8

         

        Thanks,

        Patrick 

      • #14551
        Anonymous

          I looked back at my .mol2 files for compounds that dock vs those that don’t…. It’s pretty obvious the problem is with the mol files.  I used open babel to create the mol files….. Is there some reason why the coordinates read 0 0 0? Here’s an example of the mol file for a compound that does not dock:

          @<TRIPOS>MOLECULE

          *****

           15 16 0 0 0

          SMALL

          GASTEIGER

          @<TRIPOS>ATOM

                1 C           0.0000    0.0000    0.0000 C.3     1  LIG1        0.0398

                2 C           0.0000    0.0000    0.0000 C.ar    1  LIG1        0.0282

                3 C           0.0000    0.0000    0.0000 C.ar    1  LIG1        0.0694

                4 N           0.0000    0.0000    0.0000 N.ar    1  LIG1       -0.2677

                5 C           0.0000    0.0000    0.0000 C.2     1  LIG1        0.0835

                6 C           0.0000    0.0000    0.0000 C.2     1  LIG1        0.0206

                7 C           0.0000    0.0000    0.0000 C.ar    1  LIG1        0.2958

                8 O           0.0000    0.0000    0.0000 O.2     1  LIG1       -0.2591

                9 S           0.0000    0.0000    0.0000 S.2     1  LIG1       -0.0300

               10 C           0.0000    0.0000    0.0000 C.ar    1  LIG1        0.0164

               11 C           0.0000    0.0000    0.0000 C.ar    1  LIG1        0.0015

               12 C           0.0000    0.0000    0.0000 C.ar    1  LIG1        0.0000

               13 C           0.0000    0.0000    0.0000 C.ar    1  LIG1        0.0000

               14 C           0.0000    0.0000    0.0000 C.ar    1  LIG1        0.0000

               15 C           0.0000    0.0000    0.0000 C.ar    1  LIG1        0.0015

          @<TRIPOS>BOND

               1     1     2    1

               2     2     3   ar

               3     3     4   ar

               4     4     5    1

               5     5     6    2

               6     4     7   ar

               7     7     8    2

               8     7     9   ar

               9     2     9   ar

              10     3    10    1

              11    10    11   ar

              12    11    12   ar

              13    12    13   ar

              14    13    14   ar

              15    14    15   ar

              16    10    15   ar

           

          Here’s an example of a compound that successfully docks.

           

          @<TRIPOS>MOLECULE

          *****

           16 16 0 0 0

          SMALL

          GASTEIGER

          @<TRIPOS>ATOM

                1 C           1.7534    4.2979    0.0000 C.3     1  LIG1        0.0030

                2 C           2.4679    3.8854    0.0000 C.3     1  LIG1        0.0348

                3 C           2.4679    3.0604    0.0000 C.3     1  LIG1        0.1481

                4 O           1.6429    3.0604    0.0000 O.3     1  LIG1       -0.2211

                5 C           3.2929    3.0604    0.0000 C.3     1  LIG1        0.0348

                6 C           3.7054    2.3459    0.0000 C.3     1  LIG1        0.0030

                7 C           2.4679    2.2354    0.0000 C.ar    1  LIG1        0.0392

                8 C           3.1823    1.8229    0.0000 C.ar    1  LIG1        0.0042

                9 C           3.1823    0.9979    0.0000 C.ar    1  LIG1        0.0369

               10 C           2.4679    0.5854    0.0000 C.ar    1  LIG1        0.1417

               11 O           2.4679   -0.2396    0.0000 O.3     1  LIG1       -0.4713

               12 C           3.1823   -0.6521    0.0000 C.3     1  LIG1        0.2525

               13 C           1.7534    0.9979    0.0000 C.ar    1  LIG1        0.0735

               14 C           1.7534    1.8229    0.0000 C.ar    1  LIG1        0.1400

               15 O           1.0389    2.2354    0.0000 O.3     1  LIG1       -0.4716

               16 C           0.3245    1.8229    0.0000 C.3     1  LIG1        0.2525

          @<TRIPOS>BOND

               1     1     2    1

               2     2     3    1

               3     3     4    1

               4     3     5    1

               5     3     7    1

               6     5     6    1

               7     7     8   ar

               8     7    14   ar

               9     8     9   ar

              10     9    10   ar

              11    10    11    1

              12    10    13   ar

              13    11    12    1

              14    13    14   ar

              15    14    15    1

              16    15    16    1

        • #14550
          Anonymous

            I think the error might be related to the coordinates in the paramaters file….. I compared it to compounds I have used before that have successfully docked.   These compounds all have coordinates 0 0 0 whereas compounds that have docked successfully actually have non zero values.  I’m thinking the problem might be with parameterization….. Here’s the script I use to do the docking.

             

            #!/bin/bash

            echo -n “Enter the name of the receptor pdb file:”

            read receptor

            for files in ligand*.mol2

            do

            /users/PHS0297/ohu0515/rosetta/main/source/scripts/python/public/molfile_to_params.py -n “Out${files%.mol2}” -p “Out${files%.mol2}” $files

            cat $receptor “Out${files%.mol2}_0001.pdb” > “Out${files%.mol2}_wReceptor.pdb”

            ~/rosetta/main/source/bin/rosetta_scripts.static.linuxgccrelease -in:path:database /users/PHS0297/ohu0515/rosetta/main/database/ -in:file:s “Out${files%.mol2}_wReceptor.pdb” -in:file:extra_res_fa “Out${files%.mol2}.params” -out:nstruct 3 -parser:protocol /users/PHS0297/ohu0515/dock.xml

            mv “Out${files%.mol2}_wReceptor_0001.pdb” “${files%.mol2}_docked_0001.pdb”

            mv “Out${files%.mol2}_wReceptor_0002.pdb” “${files%.mol2}_docked_0002.pdb”

            mv “Out${files%.mol2}_wReceptor_0003.pdb” “${files%.mol2}_docked_0003.pdb”

            sort -n -k50 score.sc | head -n 100000 | awk ‘{print $2 “t” $50 “t” $NF}’ > reportcardirf3.dat

            done

             

             

             

          • #14552
            Anonymous

              I think I resolved my own problem here but wanted to post the solution in case anyone is having a similar problem.  The ligands I created using Data Warrior were smiles.  When I converted these smiles to .mol2 files using open babel I did not use the –gen3d option.  This is essential because rosetta needs the 3d coordinates. Here’s why.  http://hjkgrp.mit.edu/content/geometries-strings-smiles-and-openbabel

              • #14553
                Anonymous

                  Your journey of self-discovered-solutions has led you to the correct place.  Rosetta is angry that the coordinates are garbage – specifically that the torsion angle between 4 atoms that are all at the origin is undefined.  I think your tracing the problem upstream to a bad SMILES->conformation conversion is correct.

            Viewing 3 reply threads
            • You must be logged in to reply to this topic.