I am working on protein design for antibody-antigen complex to improve the binding affinity. so far, I have the crystal structure of the antigen (chain A) and the antibody Fab (chain H and L). now I want to re-design part region of one CDR loop (around 5 residues) involved in direct interaction to antigen. besides the design for the loop retaining original length (5 AA), I also try to make the loop shorter or longer with the randomizing the residues of loop.
any suggestion that where I can start from?
I don't think there's necessarily a established canned protocol you can use. Instead, you're likely going to be putting something together in RosettaScripts.
Basically, what you're looking to do is a loop remodeling followed by a sequence design. You can use one of the standard loop modeling movers (LoopModeler or LoopProtocol) to do the loop modeling, and then use the PackRotamersMover to redesign the loop for the new conformation, possibly with a relax or minimization step afterward.
For the simplest protocol, you can just do the process once for each output structure. You then would produce a large number of output structures, and look for the best designs with them. A slightly more sophisticated protocol would run through the remodel/pack/min multiple times, so that you can loop remodel in the context of an evironment that's adjusted to the new sequence. If you wanted to get fancy, you could even use something like GenericMonteCarlo or similar repeat the process multiple times with an accept/reject criteria.
For modeling loop length variations, I don't think the standard loop modeling movers can handle that. Instead, I'd recommend using the LoopLengthChange mover instead. Each LoopLengthChange will only do a certain delta change. You might want to pair this with the RandomMover to randomly pick different length changes. Alternatively, you can do different sets of runs, each with a different length change. (The variable substitution facility of RosettaScripts might help with this.)
@rmoretti, thanks for the suggestion.
It looks complicated, since there is not too much documentation for the RosettaScript and its applications. I hope you or other people can give more examples on the scripting in the scientific context of my case.
my case is that: firstly I have a structure of antigen-antibody complex, antigen is chain A, antibody has chain H and L. then I can get the interface score between chain A and chain H by InterfaceAnalyzer. Then I try to make one loop in chain H to be shorter, more specifically, I will delete 1 residue from position 52 to 58 of chain H (in sequentially or randomly), then remodel the loop (which is 1-residue shorter than wild-type). starting from the model, I will start to design the sequence of loop by randomizing each position within this region to ALLAA, for each design cycle, I will remodel the loop and its binding partners on chain A of antigen in the binding site context, and a "ddg" filter will be used to make sure the new designed sequence should gain better binding affinity to chain A.
is my "conceptual" workflow reasonable?
Sounds reasonable to me.
One thing to keep in mind is that "no battle plan ever survives contact with the enemy". Even with established protocols, new systems can be strangely intransigent. Especially with speculative applications, it helps to have not just one protocol, but a number of slightly different protocols. You can then look at how each are behaving, and choose one (or more) which seem to give the most reasonable results. Even slight changes like varying in which order you do the length change/repacking/mutation/filtering can change how the protocol behaves, and one order may give slightly different results than another.
The only real way to tell is to apply it to (a short run) for your system and examine how things behave.