CryoEM model refinement with covalent conjugated prosthetic Phosphopantetheine carrying acyl group

Member Site Forums Rosetta 3 Rosetta 3 – General CryoEM model refinement with covalent conjugated prosthetic Phosphopantetheine carrying acyl group

Viewing 11 reply threads
  • Author
    Posts
    • #3565
      Anonymous

        Dear all,

        I’m a new user of Rosetta. The CryoEM protocol provided by Dimaiolab is excellent.

        My protein contains a peptidyl carrier protein domain. The  peptidyl carrier protein domain has a prosthetic group Phosphopantetheine which is conjugated at a serine residue. More complicated is that the phosphopantetheine arm carries a cysteine peptide  group via the terminal thioester linkage.  I don’t know how to model this peptidyl carrying phosphopantetheine arm into the CryoEM map and then perform the iterative or simple refinement against the map. 

        I’m wondering:

        Whether I should draw a peptidyl-phosphopantetheine structure first? And then convert it to a pdb file? Can I draw the chemical using pymol, so that it can be saved directly? I know I should then again convert it to mol2 file using OpenBabel. After that molfile_to_params.py can be employed to obtain two params files.

        Since the phosphopantetheine is conjugated to the serine residue, how should I tell rosetta that it is convalently bound?

        Should I also need to link the peptidyl-phosphopantetheine to the serine residue in the peptidyl carrier protein domain model first using Coot before the Rosetta simple relax refinement against the CryoEM map?

        And are there other materials I should prepare?

         

        Thanks so much for your help.

        Regards,

         

        Zhijun

         

         

         

      • #15479
        Anonymous

          (Phosphopantetheine was discussed a few months ago in https://www.rosettacommons.org/node/10906 but this is a different question, not a duplicate)

          > Whether I should draw a peptidyl-phosphopantetheine structure first? And then convert it to a pdb file? Can I draw the chemical using pymol, so that it can be saved directly? I know I should then again convert it to mol2 file using OpenBabel. After that molfile_to_params.py can be employed to obtain two params files.

          The big problem with the PDB format is bond order is poorly encoded (repeated CONECT lines for double bonds only). And formal charge is not really a thing. So if you draw something in ChemDraw or similar don’t go through the PDB format, export as sdf or copy a SMILES (a string of text). Actually if you go to Wikipedia or PubChem etc. you can get a SMILES string from the infobox: https://en.wikipedia.org/wiki/Phosphopantetheine. –> `O=C(NCCS)CCNC(=O)[C@H](O)C(C)(C)COP(=O)(O)O`. But `OP(=O)(O)O` is wrong charge-wise and you want two connections. `O=C(NCCS[1:*])CCNC(=O)[C@H](O)C(C)(C)COP(=O)([O-])O[2:*]`, where R1 (okay, that’s isotope 1, but shh everyone does it) is your peptide thioester connection and R2 is to your serine. Now, to make things worse, you really ought to obey the atomnames from the PDB database for residue `PNS` (https://www.rcsb.org/ligand/PNS).

          I made a rdkit to params module for python3 that is more flexible than mol_to_params.py… so I’ll skip you the toil:

           


          NAME PNS
          # *OP(=O)([O-])OC([H])([H])C(C([H])([H])[H])(C([H])([H])[H])[C@@]([H])(O[H])C(=O)N([H])C([H])([H])C([H])([H])C(=O)N([H])C([H])([H])C([H])([H])S*
          IO_STRING PNS Z
          TYPE LIGAND
          ATOM O40 ONH2 X -0.2750672
          ATOM C39 CNH2 X 0.2212996
          ATOM N41 Nbb X -0.3551238
          ATOM C38 CH2 X 0.0439116
          ATOM C42 CH2 X 0.0289581
          ATOM C37 CH2 X 0.0262302
          ATOM C43 CH2 X 0.0424627
          ATOM N36 Nbb X -0.3533171
          ATOM S44 S X 0.0461081
          ATOM C34 CNH2 X 0.2490077
          ATOM O35 ONH2 X -0.2720773
          ATOM C32 CH1 X 0.1395636
          ATOM O33 OH X -0.3826122
          ATOM C29 CH0 X 0.0236395
          ATOM C30 CH3 X -0.0546613
          ATOM C31 CH3 X -0.0546613
          ATOM C28 CH2 X 0.0633638
          ATOM O27 OPha X -0.3159965
          ATOM P24 Pha X 0.3032098
          ATOM O23 OPha X -0.2735101
          ATOM O25 OPha X -0.1191541
          ATOM O26 OPha X -0.7542792
          ATOM H24 Hpol X 0.1629752
          ATOM H29 Hapo X 0.0385204
          ATOM H30 Hapo X 0.0385204
          ATOM H25 Hapo X 0.0500663
          ATOM H26 Hapo X 0.0500663
          ATOM H31 Hapo X 0.0496391
          ATOM H32 Hapo X 0.0496391
          ATOM H27 Hapo X 0.0425664
          ATOM H28 Hapo X 0.0425664
          ATOM H33 Hpol X 0.1630531
          ATOM H34 Hapo X 0.0711527
          ATOM H35 Hpol X 0.2112195
          ATOM H36 Hapo X 0.0237891
          ATOM H37 Hapo X 0.0237891
          ATOM H38 Hapo X 0.0237891
          ATOM H39 Hapo X 0.0237891
          ATOM H40 Hapo X 0.0237891
          ATOM H41 Hapo X 0.0237891
          ATOM H42 Hapo X 0.0578802
          ATOM H43 Hapo X 0.0578802
          BOND_TYPE O40 C39 2
          BOND C39 N41
          BOND N41 C42
          BOND C42 C43
          BOND C43 S44
          BOND C39 C38
          BOND C38 C37
          BOND C37 N36
          BOND N36 C34
          BOND_TYPE C34 O35 2
          BOND C34 C32
          BOND C32 O33
          BOND C32 C29
          BOND C29 C30
          BOND C29 C31
          BOND C29 C28
          BOND C28 O27
          BOND O27 P24
          BOND_TYPE P24 O23 2
          BOND P24 O25
          BOND P24 O26
          BOND N41 H24
          BOND C42 H25
          BOND C42 H26
          BOND C43 H27
          BOND C43 H28
          BOND C38 H29
          BOND C38 H30
          BOND C37 H31
          BOND C37 H32
          BOND N36 H33
          BOND C32 H34
          BOND O33 H35
          BOND C30 H36
          BOND C30 H37
          BOND C30 H38
          BOND C31 H39
          BOND C31 H40
          BOND C31 H41
          BOND C28 H42
          BOND C28 H43
          CONNECT S44
          CONNECT O25
          NBR_ATOM C34
          NBR_RADIUS 8.932782471236475
          ICOOR_INTERNAL O40 0.000000 0.000000 0.000000 O40 C39 N41
          ICOOR_INTERNAL C39 0.000000 180.000000 1.228943 O40 C39 N41
          ICOOR_INTERNAL N41 0.000000 56.835855 1.387156 C39 O40 N41
          ICOOR_INTERNAL C38 178.932240 55.860329 1.512546 C39 O40 N41
          ICOOR_INTERNAL C42 -5.338736 60.059665 1.453127 N41 C39 O40
          ICOOR_INTERNAL C37 7.851468 68.789880 1.526621 C38 C39 O40
          ICOOR_INTERNAL C43 168.049100 66.497925 1.526577 C42 N41 C39
          ICOOR_INTERNAL N36 178.217625 68.758756 1.450550 C37 C38 C39
          ICOOR_INTERNAL S44 -65.259592 66.684675 1.826381 C43 C42 N41
          ICOOR_INTERNAL C34 -91.257456 58.367786 1.388977 N36 C37 C38
          ICOOR_INTERNAL O35 -3.632285 57.108006 1.229684 C34 N36 C37
          ICOOR_INTERNAL C32 179.626056 67.873844 1.540275 C34 N36 O35
          ICOOR_INTERNAL O33 -78.625897 74.221937 1.441655 C32 C34 N36
          ICOOR_INTERNAL C29 -126.095484 64.344778 1.562933 C32 C34 O33
          ICOOR_INTERNAL C30 -51.828981 69.558648 1.552429 C29 C32 C34
          ICOOR_INTERNAL C31 122.950190 67.652600 1.541116 C29 C32 C30
          ICOOR_INTERNAL C28 -116.675845 71.538316 1.552620 C29 C32 C30
          ICOOR_INTERNAL O27 -57.661924 69.051411 1.414976 C28 C29 C32
          ICOOR_INTERNAL P24 160.469213 63.387282 1.640844 O27 C28 C29
          ICOOR_INTERNAL O23 165.693922 72.455456 1.506959 P24 O27 C28
          ICOOR_INTERNAL O25 114.113822 81.139433 1.640875 P24 O27 O23
          ICOOR_INTERNAL O26 -133.784860 71.668966 1.504957 P24 O27 O23
          ICOOR_INTERNAL H24 -156.735770 63.167313 1.008791 N41 C39 C42
          ICOOR_INTERNAL H29 122.307435 70.685882 1.105877 C38 C39 C37
          ICOOR_INTERNAL H30 -120.670733 71.915447 1.103073 C38 C39 C37
          ICOOR_INTERNAL H25 -124.848313 70.643056 1.098646 C42 N41 C43
          ICOOR_INTERNAL H26 120.044208 73.336540 1.097589 C42 N41 C43
          ICOOR_INTERNAL H31 -121.323016 69.634966 1.099037 C37 C38 N36
          ICOOR_INTERNAL H32 119.095111 68.771552 1.096665 C37 C38 N36
          ICOOR_INTERNAL H27 -121.140337 70.449794 1.095146 C43 C42 S44
          ICOOR_INTERNAL H28 120.201533 69.715799 1.095695 C43 C42 S44
          ICOOR_INTERNAL H33 164.372117 60.451020 1.015717 N36 C37 C34
          ICOOR_INTERNAL H34 113.757793 73.119766 1.101086 C32 C34 O33
          ICOOR_INTERNAL H35 -168.846618 73.321149 0.987533 O33 C32 C34
          ICOOR_INTERNAL H36 -171.196307 69.364893 1.096873 C30 C29 C32
          ICOOR_INTERNAL H37 -119.827465 67.018020 1.095524 C30 C29 H36
          ICOOR_INTERNAL H38 119.981287 69.682359 1.096936 C30 C29 H36
          ICOOR_INTERNAL H39 59.690298 68.319986 1.095787 C31 C29 C32
          ICOOR_INTERNAL H40 120.144912 69.369703 1.102703 C31 C29 H39
          ICOOR_INTERNAL H41 -120.861929 68.361048 1.094362 C31 C29 H39
          ICOOR_INTERNAL H42 -119.430790 69.787152 1.094921 C28 C29 O27
          ICOOR_INTERNAL H43 121.151098 70.032696 1.094115 C28 C29 O27
          ICOOR_INTERNAL CONN1 -55.924887 82.065569 1.599532 S44 C43 C42
          ICOOR_INTERNAL CONN2 -53.618412 68.239894 1.417132 O25 P24 O27

          This works with the default PNS residue and has two connects. CONN1 to S (peptide C-terminus), CONN2 to serine.

          I gave it a go and it works if there is no LINK for the S is absent.

          I tried it with a the sequence RESETTA (fab in pymol and pair_fit) and the lines:


          LINK P24 PNS A 1 CB SER B 4 1555 1555 2.72
          LINK S44 PNS A 1 C ALA B 8 1555 1555 2.72

          I don’t know off the solution to this issue and the flag `-Ctermini false` and changing the CONNECT to LOWER_CONNECT did not work. But someone must have encountered and asked after a C-terminal conjugation in the forums —pretty sure that is how ubiquitin works.

          > Since the phosphopantetheine is conjugated to the serine residue, how should I tell rosetta that it is convalently bound?

          Two requirements.

          • You have to add a LINK record in your PDB (but can be done in pyrosetta after the pose is made and I am sure with scripts it can be done).
          • Your params file needs to have a CONNECT, in this case two!

           

        • #15480
          Anonymous

            Thank you so much Matteo Ferla. Your web app “https://direvo.mutanalyst.com/params” is also a great place to make params files.

            The information you provied helped me understand smile file and how to make a param file for a new ligand. 

             

            I’m trying to use the params file in Rosetta relax. Will let you know the results.

             

            Zhijun

          • #15486
            Anonymous

              Hey Matteo Ferla, I still have problems to proceed.

              The Rosetta software seems to be able to process the phosphopantetheine ligand now. So if I provide the “PNS.cen.params” and “PNS.fa.params”  or the “Phosphopantetheine.params” in the command. The program can not run. If I run the program without the params file, the program can run but will generate a pdb disconnect the covalent bond between the ser residue and the  phosphopantetheine phosphate. 

              Searching the rosetta forum, I seems that I should use the enzdes constraint. But I don’t understand how to write for my protein and how to use it in the CryoEM protocol. 

              I attached a homologuous pdb file which can also refine into my CyroEM file.

              Below is the command:

               

              #!/bin/bash

              relax.static.macosclangrelease

               -database /Users/zhijun/bin/Rosetta/rosetta_bin_mac_2020.08.61146_bundle/main/database/

               -in::file::s 6mfyA.pdb

               -parser::protocol B_relax_density.xml

               -edensity::mapreso 3.0

               -edensity::cryoem_scatterers

               -crystal_refine

               -beta

               -out::suffix _params

               -default_max_cycles 200

               

              The xml:

               

              <ROSETTASCRIPTS>

                 <SCOREFXNS>

                    <ScoreFunction name=”dens” weights=”beta_cart”>

                       <Reweight scoretype=”elec_dens_fast” weight=”35.0″/>

                       <Set scale_sc_dens_byres=”R:0.76,K:0.76,E:0.76,D:0.76,M:0.76,C:0.81,Q:0.81,H:0.81,N:0.81,T:0.81,S:0.81,Y:0.88,W:0.88,A:0.88,F:0.88,P:0.88,I:0.88,L:0.88,V:0.88″/>

                    </ScoreFunction>

                 </SCOREFXNS>

                 <MOVERS>

                     <SetupForDensityScoring name=”setupdens”/>

                     <LoadDensityMap name=”loaddens” mapfile=”refine141run_class001_Epi_B.mrc”/>

                     <FastRelax name=”relaxcart” scorefxn=”dens” repeats=”2″ cartesian=”1″ />

                 </MOVERS>

                 <PROTOCOLS>

                    <Add mover=”setupdens”/>

                    <Add mover=”loaddens”/>

                    <Add mover=”relaxcart”/>

                 </PROTOCOLS>

                 <OUTPUT scorefxn=”dens”/>

              </ROSETTASCRIPTS>

               

            • #15487
              Anonymous

                Hey Matteo Ferla,

                I used the params file you generated, the program can run. But if I use the params file generated from the web app, the program did not work.

                Still in the generated pdb file, although in the original pdb the phosphopantetheine is covalently conjugated to the serine residue, it is now detached.

                 

              • #15488
                Anonymous

                  If I should use a Enzdes cst file, I can not figure out how to specify the relationship of the serine residue and the phosphopantethiene in the template below.

                  CST::BEGIN  

                    TEMPLATE::   ATOM_MAP: 1 atom_name: O2 C6 O4

                    TEMPLATE::   ATOM_MAP: 1 residue3: D2N

                    TEMPLATE::   ATOM_MAP: 2 atom_type: Nhis,

                    TEMPLATE::   ATOM_MAP: 2 residue1: H 

                   

                    CONSTRAINT:: distanceAB:    3.10   0.20 100.00  0

                    CONSTRAINT::    angle_A:  120.00   5.00  30.00  360.00

                    CONSTRAINT::    angle_B:  125.90  10.00  20.00  360.00

                    CONSTRAINT::  torsion_A:   -5.00  15.00   0.00  360.00

                    CONSTRAINT::  torsion_B:  -155.0  15.00  25.00  360.00

                    CONSTRAINT:: torsion_AB:    0.00   0.00   0.00  180.00

                  CST::END

                • #15490
                  Anonymous

                    Sorry, I was pressed for time so cut my reply short and could not find the solution.

                    I tried it in pyrosetta with a short sequence and it segfaulted. Basically my guess at the problem were two options.

                    A common issue (say in loop closure) is the terminus (OXT) gets added, but this does not appear to be the case as using `-use_truncated_termini true` fails (I tried the wrong command before but the correct one fails too).

                    The second is that polymers have a different type of connection in params files, for amino acids these are:


                    LOWER_CONNECT N
                    UPPER_CONNECT C

                    While what I was hoping would work was that a CONNECT will work with a UPPER_CONNECT. But it segfaults at loading the pose.

                    The terminal caps ACE and NME are not handled like patches, so I had a look at them (terminal folder in db) just now and they turned out to be interesting.  They are regular amino acids. This means that the residue needs to follow the peptide (same chain, resi+1 and no TER line in between). If this is not respected you’ll get a warning saying “ERROR <name3> <name3> UPPER TERMINUS” or something. Modding the topology file by cannibalising NME:


                    TYPE POLYMER # not ligand!
                    AA UNK
                    ...
                    LOWER_CONNECT S44
                    CONNECT O25
                    UPPER_CONNECT NONE #interesting...
                    PROPERTIES TERMINUS
                    VARIANT UPPER_TERMINUS_VARIANT
                    FIRST_SIDECHAIN_ATOM C43
                    MAINCHAIN_ATOMS S44
                    ..
                    # instead of CONN1 --> LOWER
                    ICOOR_INTERNAL LOWER -55.924887 82.065569 1.599532 S44 C43 C42
                    ICOOR_INTERNAL CONN2 -53.618412 68.239894 1.417132 O25 P24 O27

                    This seems to work, except for a ideal coordinate error. This happens when you have a residue and the first three internal coordinate lines aren’t the backbone. So… The params file needs to be done again with the “backbone” at the front to make the ICOOR block koscher. `*SCCNC(=O)CCNC(=O)[C@H](O)C(C)(C)COP(=O)([O-])O*`.


                    NAME PNS
                    # *OP(=O)([O-])OC([H])([H])C(C([H])([H])[H])(C([H])([H])[H])[C@@]([H])(O[H])C(=O)N([H])C([H])([H])C([H])([H])C(=O)N([H])C([H])([H])C([H])([H])S*

                    IO_STRING PNS Z
                    TYPE POLYMER
                    AA UNK

                    ATOM S44 S X 0.0461081
                    ATOM C43 CH2 X 0.0424627
                    ATOM C42 CH2 X 0.0289581
                    ATOM N41 Nbb X -0.3551238
                    ATOM C39 CNH2 X 0.2212996
                    ATOM O40 ONH2 X -0.2750672
                    ATOM C38 CH2 X 0.0439116
                    ATOM C37 CH2 X 0.0262302
                    ATOM N36 Nbb X -0.3533171
                    ATOM C34 CNH2 X 0.2490077
                    ATOM O35 ONH2 X -0.2720773
                    ATOM C32 CH1 X 0.1395636
                    ATOM O33 OH X -0.3826122
                    ATOM C29 CH0 X 0.0236395
                    ATOM C30 CH3 X -0.0546613
                    ATOM C31 CH3 X -0.0546613
                    ATOM C28 CH2 X 0.0633638
                    ATOM O27 OPha X -0.3159965
                    ATOM P24 Pha X 0.3032098
                    ATOM O23 OPha X -0.2735101
                    ATOM O25 OPha X -0.7542792
                    ATOM O26 OPha X -0.1191541
                    ATOM H24 Hapo X 0.0425664
                    ATOM H25 Hapo X 0.0425664
                    ATOM H26 Hapo X 0.0500663
                    ATOM H27 Hapo X 0.0500663
                    ATOM H28 Hpol X 0.1629752
                    ATOM H29 Hapo X 0.0385204
                    ATOM H30 Hapo X 0.0385204
                    ATOM H31 Hapo X 0.0496391
                    ATOM H32 Hapo X 0.0496391
                    ATOM H33 Hpol X 0.1630531
                    ATOM H34 Hapo X 0.0711527
                    ATOM H35 Hpol X 0.2112195
                    ATOM H36 Hapo X 0.0237891
                    ATOM H37 Hapo X 0.0237891
                    ATOM H38 Hapo X 0.0237891
                    ATOM H39 Hapo X 0.0237891
                    ATOM H40 Hapo X 0.0237891
                    ATOM H41 Hapo X 0.0237891
                    ATOM H42 Hapo X 0.0578802
                    ATOM H43 Hapo X 0.0578802
                    BOND S44 C43
                    BOND C43 C42
                    BOND C42 N41
                    BOND N41 C39
                    BOND_TYPE C39 O40 2
                    BOND C39 C38
                    BOND C38 C37
                    BOND C37 N36
                    BOND N36 C34
                    BOND_TYPE C34 O35 2
                    BOND C34 C32
                    BOND C32 O33
                    BOND C32 C29
                    BOND C29 C30
                    BOND C29 C31
                    BOND C29 C28
                    BOND C28 O27
                    BOND O27 P24
                    BOND_TYPE P24 O23 2
                    BOND P24 O25
                    BOND P24 O26
                    BOND C43 H24
                    BOND C43 H25
                    BOND C42 H26
                    BOND C42 H27
                    BOND N41 H28
                    BOND C38 H29
                    BOND C38 H30
                    BOND C37 H31
                    BOND C37 H32
                    BOND N36 H33
                    BOND C32 H34
                    BOND O33 H35
                    BOND C30 H36
                    BOND C30 H37
                    BOND C30 H38
                    BOND C31 H39
                    BOND C31 H40
                    BOND C31 H41
                    BOND C28 H42
                    BOND C28 H43

                    LOWER_CONNECT S44
                    CONNECT O26
                    UPPER_CONNECT NONE

                    PROPERTIES TERMINUS
                    #UPPERTERM_CAP
                    VARIANT UPPER_TERMINUS_VARIANT
                    FIRST_SIDECHAIN_ATOM N41
                    MAINCHAIN_ATOMS S44 C43 C42

                    NBR_ATOM O33
                    NBR_RADIUS 6.449616302055956

                    ICOOR_INTERNAL S44 0.000000 0.000000 0.000000 S44 C43 C42
                    ICOOR_INTERNAL C43 0.000000 179.999999 1.809125 S44 C43 C42
                    ICOOR_INTERNAL C42 -0.000000 68.802305 1.517021 C43 S44 C42
                    ICOOR_INTERNAL N41 -173.808356 67.426119 1.466895 C42 C43 S44
                    ICOOR_INTERNAL C39 -66.397485 57.060071 1.360647 N41 C42 C43
                    ICOOR_INTERNAL O40 3.600645 56.070608 1.226781 C39 N41 C42
                    ICOOR_INTERNAL C38 -177.532276 66.542644 1.506965 C39 N41 O40
                    ICOOR_INTERNAL C37 98.218873 70.156023 1.523095 C38 C39 N41
                    ICOOR_INTERNAL N36 -68.172965 68.791825 1.449876 C37 C38 C39
                    ICOOR_INTERNAL C34 -74.166348 59.093699 1.387933 N36 C37 C38
                    ICOOR_INTERNAL O35 -19.249834 57.317725 1.230391 C34 N36 C37
                    ICOOR_INTERNAL C32 173.940107 68.331302 1.539906 C34 N36 O35
                    ICOOR_INTERNAL O33 -73.720490 77.007196 1.444326 C32 C34 N36
                    ICOOR_INTERNAL C29 -124.578579 62.651859 1.547999 C32 C34 O33
                    ICOOR_INTERNAL C30 -52.677728 69.368683 1.536506 C29 C32 C34
                    ICOOR_INTERNAL C31 122.071602 67.894999 1.528975 C29 C32 C30
                    ICOOR_INTERNAL C28 -117.718339 71.332842 1.555024 C29 C32 C30
                    ICOOR_INTERNAL O27 -51.850540 70.578664 1.419632 C28 C29 C32
                    ICOOR_INTERNAL P24 143.311096 60.363622 1.634054 O27 C28 C29
                    ICOOR_INTERNAL O23 -40.689041 72.014536 1.516157 P24 O27 C28
                    ICOOR_INTERNAL O25 -129.492908 74.456570 1.510937 P24 O27 O23
                    ICOOR_INTERNAL O26 116.549793 79.427865 1.633599 P24 O27 O23
                    ICOOR_INTERNAL H24 -122.022823 70.730925 1.095949 C43 S44 C42
                    ICOOR_INTERNAL H25 122.074311 71.899473 1.083075 C43 S44 C42
                    ICOOR_INTERNAL H26 -121.224389 69.182368 1.091381 C42 C43 N41
                    ICOOR_INTERNAL H27 118.523149 69.038644 1.094817 C42 C43 N41
                    ICOOR_INTERNAL H28 -164.768828 63.682200 1.023362 N41 C42 C39
                    ICOOR_INTERNAL H29 -123.279002 69.597531 1.088717 C38 C39 C37
                    ICOOR_INTERNAL H30 120.596824 73.054009 1.096453 C38 C39 C37
                    ICOOR_INTERNAL H31 119.388718 68.905436 1.090661 C37 C38 N36
                    ICOOR_INTERNAL H32 -120.575601 70.005501 1.095508 C37 C38 N36
                    ICOOR_INTERNAL H33 147.079624 63.876661 1.019413 N36 C37 C34
                    ICOOR_INTERNAL H34 112.149188 72.623108 1.092842 C32 C34 O33
                    ICOOR_INTERNAL H35 -179.651841 75.184378 0.984138 O33 C32 C34
                    ICOOR_INTERNAL H36 70.387618 68.520322 1.094655 C30 C29 C32
                    ICOOR_INTERNAL H37 120.818633 68.139745 1.101182 C30 C29 H36
                    ICOOR_INTERNAL H38 -120.439186 69.123946 1.104630 C30 C29 H36
                    ICOOR_INTERNAL H39 -179.012365 69.373930 1.101939 C31 C29 C32
                    ICOOR_INTERNAL H40 -119.508272 67.442098 1.087566 C31 C29 H39
                    ICOOR_INTERNAL H41 119.373757 68.284592 1.095696 C31 C29 H39
                    ICOOR_INTERNAL H42 121.576336 70.274162 1.090829 C28 C29 O27
                    ICOOR_INTERNAL H43 -119.936434 69.049107 1.092382 C28 C29 O27
                    ICOOR_INTERNAL LOWER -69.300048 81.473925 1.586157 S44 C43 C42
                    ICOOR_INTERNAL CONN2 -61.638403 67.984427 1.421957 O26 P24 O27

                    In pyrosetta this seems to work fine in for a PDB with two LINK records and the PNS residue after the C-terminal end of the peptide, with resi+1, same chain and no TER record beforehand.

                  • #15491
                    Anonymous

                      Forgot to mention, I used the `-use_truncated_termini true` and  `-use_terminal_residues true` flags.

                      About the other points you raised:

                      > I used the params file you generated, the program can run. But if I use the params file generated from the web app, the program did not work.

                      Yes, I hadn’t realised yet another corner case and the web app was several versions behind the github repo —the server does not update on a Github webhook trigger as it’s piggybacking of another app out of laziness and indecision as I am not sure where to host it —I am still waiting on my university’s legal team (approx. 7 months) to sign a memorandum of understanding to let me use pyrosetta for a different university web app…

                      > If I run the program without the params file, the program can run but will generate a pdb disconnect the covalent bond between the ser residue and the  phosphopantetheine phosphate. 

                      That is because it is using PDB component library. This autogenerated set is great, but imperfect. `-ignore_unrecognized_res true -load_PDB_components false` flags without a params file will give you no PNS.

                      > enzdes constraint

                      The aim of using constraint of the regular type is to force the two atoms to be close, even if they have a horrid LJ potential. It is not an ideal strategy. In Gromacs a covalent bond is made by making the sulfur or oxygen atom virtual and adding a constraint to prevent the system from blowing up. That works better, but you’d need to make an alanine with a virtual atom instead of one of the beta hydrogens. The enzdes constraints has a value that disables the LJ (two terms in rosetta) clash between the two atoms —this is the zero or one at the end of distanceAB line— but it still is odd and results in some funky scores. Also it is a pain to set up as it requires a resfile too to specify which are the residues.

                      Nevertheless, the residue crosslinks discussed previously do not preseve torsion angles, only distance. Hence why you also often need a constraint of the regular type (or enzdes type) to keep the two atoms close in a chemical acceptable way. My GitHub repo for params has this, but I did not make a webapp page for it.

                       

                       

                    • #15492
                      Anonymous

                        It’s a great relief that I need not to focus on the study of Enzdes.

                        I tried the params file you updated. I removed the TER between the C terminus and PNS in the pdb file. It did not work. The error message is “ERROR: unable to find desired variant residue: PNS PNS LOWER_TERMINUS_VARIANT”

                        The commands:

                        relax.static.macosclangrelease

                         -database /Users/zhijun/bin/Rosetta/rosetta_bin_mac_2020.08.61146_bundle/main/database/

                         -in::file::s 1-141-PNS.pdb

                         -extra_res_fa Phosphopantetheine.params

                         -use_truncated_termini true

                         -use_terminal_residues true

                         -parser::protocol B_relax_density.xml

                         -edensity::mapreso 3.0

                         -edensity::cryoem_scatterers

                         -crystal_refine

                         -beta

                         -out::suffix _params

                         -default_max_cycles 200

                         

                         

                      • #15493
                        Anonymous

                          Yes, that is the fiddly error I was warning about. So it is something to do withe PNS residue not looking like a proper polymer residue…

                          Looking at the file, the entry type is `HETATM`, whereas it should be a `ATOM`. Sorry, my bad.

                        • #15494
                          Anonymous

                            I edited the pdb file and replace the “HETAM” to “ATOM”. The error message is “ERROR: unable to find desired variant residue: PNS PNS LOWER_TERMINUS_VARIANT”.

                            The pdb file is attached.

                          • #15496
                            Anonymous

                              Okay. I gave your file a spin. There are three remaining issues.

                              LINK

                              It lacks LINK records:


                              LINK P24 PNS B 142 OG SER B 66 1555 1555 2.72
                              LINK S44 PNS B 142 C GLY B 141 1555 1555 2.72

                              PyMOL is one of those programs that does proximity bonding in addition to obeying CONECT records, so a PDB may look bonded nicely in PyMOL, but it may be wrong in reality.

                              Atoms

                              The second issue is that the serine atom has a OG atom, while PNS lacks O26.

                              So two options:

                              • rename OG to O26 in the PDB*
                              • change the PNS params to be chemically bonded more sensibly

                              From the chemical point of view the PDB is correct as the OG atom attacked the P24 atom, while the topology file, while correct, is conceptually wrong. So attached is yet another params. For a case where there is no O26 as the Ser66 OG connects to the phosphate.

                              Distance

                              To clarify PNS binds to the C-terminal of a peptide via a thioester bond and to a serine sidechain. Ehr. In the case you linked, it is binding to the same protein twice?There is a 20 Å bond. Is the Glycine 141:B really connected to the PNS via a thioester bond??

                               

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