Pmut_scan with symmetry

Member Site Forums Rosetta 3 Rosetta 3 – Applications Pmut_scan with symmetry

Viewing 2 reply threads
  • Author
    Posts
    • #2136
      Anonymous

        Dear developers

        I am trying to use pmut_scan for a symmetric dimer. I don’t know if this is possible but when I run it with a symmetry definition file the program crashes with the following message:

        protocols.pmut_scan.PointMutScanDriver: mutation mutation_PDB_numbering average_ddG average_total_energy
        terminate called after throwing an instance of ‘std::bad_cast’
        what(): std::bad_cast
        Pmut_sym.sh: line 29: 678 Aborted (core dumped) pmut_scan_parallel.default.linuxgccrelease

        the script used is the following:

        pmut_scan_parallel.default.linuxgccrelease
        -database /home/Xtal/Rosetta/main/rosetta_database/
        -in:file:s ../$file.pdb
        -in::file:native ../$file.pdb
        -ignore_unrecognized_res
        -ex1
        -ex2
        -extrachi_cutoff 1
        -use_input_sc
        -no_his_his_pairE
        -multi_cool_annealer 10
        -mute basic core
        -output_mutant_structures
        -out:file:fullatom
        -symmetry::symmetry_definition ../$symfile.symm
        -symmetry:symmetric_rmsd

        thanks in advance

        felipet

      • #10827
        Anonymous

          Unfortunately, protocols in Rosetta need to explicitly set up symmetry in order to take advantage of it. Many protocols are set up to automatically set up symmetry, but some are not. Pmut scan is one that is not.

          As a stop-gap, I’d recommend doing the scan in an asymmetric context (either as a one-sided mutation, or as a non-symmetric forced double point mutant) as a first pass, and then refining the scoring based on a symmetric relax as a post-processing.

          Alternatively, you could try to put together a protocol within RosettaScripts to do the equivalent mutation scan. The GreedyOptMutationMover can do similar point mutation scanning (https://www.rosettacommons.org/docs/latest/protein-interface-design-movers.html#GreedyOptMutationMover), although the details differ.

        • #10831
          Anonymous

            mmm

          • #10832
            Anonymous

              Dear rmoretti

              thank you very much for the response

              I am trying to put together a xml protocol using GreedyOptMutationMover, for some reason the running ends with a segmentation fault (“2432 Segmentation fault (core dumped)”)

              do you think this script perform a similar procedure as pmutscan?

              thanks again

              felipet

              script.xml:
















            • #10834
              Anonymous

                Your OperateOnCertainResidues operation needs a ResidueLevelTask specification in order to work (https://www.rosettacommons.org/docs/latest/TaskOperations-RosettaScripts.html#OperateOnCertainResidues-Operation). If you want to allow scanning for mutations at all protein positions, I’d recommend inverting the logic – set all positions that *aren’t* protein to repack only. — Task operations are restrictive: you start with being able to repack and resdesign all positions, and then you turn off the ability to pack or design selectively.

                It also looks like you’re optimizing over your RelativePose filter. I’m not sure what exactly your use case is, but the GreedyOptutationMover will do the mutation and packing in the context of the starting pose itself. The RelativePose filter is used in contexts where you want to compare the score of a mutation on a second structure. It computes the before and after value of the given filter on the provided PDB backbone. If you just have the one structure, I would skip the RelativePose filter, and use the GreedyOptMutationMover directly.

                Also, in your relax mover you are actually permitting mutations. Remember task operations are restrictive, starting from full design. If you don’t turn off design in a PackRotamersMover, you’ll get design. I’d add a RestrictToRepacking task operation to your PackRotamers task_operations in order to limit things to the point mutations that the GreedyOptMutationMover produces.

              • #10836
                Anonymous

                  Dear rmoretti

                  I have some problems running the GreedyOptMutationMover with symmetry. This protocol always ends with a segmentation fault…I am attaching the rosetta script just to know why is not working

                  In the meantime, I realized that I could run the pmut with the flag -out:output of the monomer as a mean to recover all the possible single mutants and then run a fastrelax protocol with symmetry conditions to obtain the score of each mutation. Do you think this procedure is correct?

                  thanks in advance

                  felipet

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