You are here

Define custom potential?

3 posts / 0 new
Last post
Define custom potential?

Is it possible to pull two residues of the same polypeptide chain towards one another during an energy minimization? One way to accomplish this would be to custom design a potential and incorporate this into the scoring function. Is this latter possible?

Post Situation: 
Fri, 2011-05-06 11:25

Sure, use constraints. That's pretty much all constraints are, is user-defined modifications to the score term. In your case you could use AtomPairConstraints between your two residues. Here's documentation on some of the available constraints and their use in C++ Rosetta; I don't know much about it in pyrosetta.

Fri, 2011-05-06 12:16

Using constraints in PyRosetta will depend on which object (mover) you are interacting with. For example, using constraints in PyRosetta for docking is very straight forward. Since DockingProtocol was written to interact with the options system via public accessor functions, the following code will result in a docking run with constraints:

pose = pose_from_pdb( '1brs.pdb' )
dock = DockingProtocol()
dock.set_cst_file( '' )
dock.apply( pose )

Other protocols might not behave so nicely. To get around that, you can explicitly add constraints yourself:

pose = pose_from_pdb( '1brs.pdb' )
cst_mover = ConstraintSetMover()
cst_mover.constraint_file( '' )
cst_mover.apply( pose )
sf = create_score_function( 'standard' )
sf.set_weight( atom_pair_constraint, 1.0 )
sf( pose )

As far as making your own custom constraints in PyRosetta, this is not yet supported but is planned for a future release. In the above examples, the file '' is simply a text file constraint information as detailed in documentation linked from Steven's post.

Wed, 2011-05-18 17:44