RosettaCommons / RFdiffusion

Code for running RFdiffusion
Other
1.65k stars 319 forks source link

Inquiry on Customizing Binder Design with Fixed Parts in RFdiffusion #244

Open Thanasis-P opened 4 months ago

Thanasis-P commented 4 months ago

Dear RFdiffusion Team,

First, I want to express my appreciation for your work!

I am reaching out with a specific question regarding the customization of the binder design process. Specifically, I am interested in knowing if it is possible to use the binder design feature while providing certain parts of the potential predicted binders and keeping these parts fixed throughout the procedure. My goal is to incorporate predefined structural elements into the binders and ensure that these elements remain unchanged during the design process. Could you please let me know if this is feasible within the current framework of RFdiffusion? If so, I would appreciate any guidance or documentation that could help me implement this feature.

Thank you very much for your time and assistance. I look forward to your response.

Best regards, Thanos

aaronbanse commented 1 month ago

I also have the same issue. I am trying to diffuse the active site of a known TCR structure but there doesn't appear to be a way to tell the active site to bind to a specific thing. I am working on a potential that could solve this issue, but if there is a simpler way I would appreciate a heads-up!

Aaron

roccomoretti commented 1 month ago

I'm not sure I understand your needs/use case. Best I can tell, what you want is handled by the contig map already.

That is, if you have a pre-existing structure with chain A, chain B and chain C and you want to design a binder to chain A (which is 324 aa long) using residues 45-56 of chain B and 131-134 of chain C, you could use an approach similar to motif scaffolding and binder design, where you specify the sections of the input you want to keep and how you want to fill in the rest of the residues. For example, with the above specifications, something like

'contigmap.contigs=[A1-324/0 40-60/B45-56/30-35/C131-134/50-60]'

Where you'll have chain A present as-is, then design a single chain binder to A which is composed of 40-60 new residues, followed by the chain B motif, followed by 30-35 new residues, followed by the chain C motif, followed by 50-60 residues. (All of that latter bit as one chain.)

If you don't have a motif for the other chain, but instead just have residues on chain A you want to be at the interface, then the "hotspot residue" approach may be what you want. For example, if residues 30, 33 and 34 define your binding interface, you can use something like

'contigmap.contigs=[A1-324/0 250-300]'  'ppi.hotspot_res=[A30,A33,A34]'

to build a 250 to 300 amino acid protein which is designed to bind to residues 30, 33 & 34 of chain A. (Note you can combine the motif and hotspot approaches.)

If that's not what you're after, then you may want to clarify. I'd also recommend working through the examples in the examples directory to get a better sense of what options are available, and how they affect the results.

aaronbanse commented 1 month ago

Thanks for getting back so fast, and sorry I wasn't as clear as I could have been. I have been using the motif scaffolding option to create new loop designs based on an existing TCR:pMHC complex. The TCR is de novo, and our hope is to improve the specificity of it by pushing the loops to bind to the peptide more than the MHC. That's why I was hoping there was an option to combine motif scaffolding with the hotspot option. We've observed that our designed TCRs contact the MHC more than native TCRs, which we think could be part of why natives are more specific. Omitting the MHC from the contigs would allow the TCR to focus on the peptide more, but since the MHC also influences the docking I don't think that is an ideal solution.

Is there a good way to do this? My backup idea is to write a potential similar to olig_contacts or binder_ncontacts but for individual residues; do you think that would be a good way to tackle this?

Thanks so much!

roccomoretti commented 1 month ago

So you should be able to combine the motif scaffolding with the hotspot option already.

But it sounds like what you're really after is a non-contact (avoidance?) potential -- instead of promoting contacts to the peptide, you're looking to discourage contacts with the MHC. I'm not personally aware of such a potential, but I will admit I haven't dug into the potentials much. It may be that one already exists, but I'd leave it to others to point it out.