You are here

Error with talaris2014.wts, which leads to a garbade scorefunction in loop modelling for protein-protein docking

6 posts / 0 new
Last post
Error with talaris2014.wts, which leads to a garbade scorefunction in loop modelling for protein-protein docking
#1

Dear Sir or Madam,

I got a one complicated problem, which took place during loop modelling for protein-protein docking. I carry out tasks from the Meiler tutorial for Rosetta.

I tried to run such command as "~/Rosetta/rosetta_src_2019.14.60699_bundle/main/source/bin/loopmodel.default.linuxgccrelease @chainbreak_fix.options -nstruct 10 >& chainbreak_fix.log &", but I got such error in the "chainbreak_fix.log" as "ERROR: talaris2014(.wts) requested, but -corrections::restore_talaris_behavior not set to true. This leads to a garbage scorefunction. Exiting. ERROR:: Exit from: src/core/scoring/ScoreFunctionFactory.cc line: 157".

How to fix such error?

I will be sincerely grateful, if anyone give me any hints or tips for solving such problem.

I attach related to this problem files for better clarification.

Category: 
Post Situation: 
Wed, 2019-06-19 08:40
Corvin

Try also giving the flag

 

-restore_talaris_behavior true

 

which should eliminate the warning.

Wed, 2019-06-19 08:44
everyday847

Dear everyday847,

I am really thankful for your advice. But in what place should be situated this flag? If I place this flag at the end of command, the error is same. If I place this flag anywhere, it gives me such error:

"File: src/protocols/loops/Loops.cc:596 [ ERROR ] UtilityExitException ERROR: LoopRebuild::ERROR Loop definition out of boundary".

How to fix that?

Wed, 2019-06-19 09:15
Corvin

The location of the option shouldn't be too critical, so long as it gets passed to Rosetta. I'd probably put it in your chainbreak_fix.options file, near where you specify which scorefunction you want to use.

The second error you're getting isn't due to the -restore_talaris_behavior flag. It's a separate error which was being masked before by the earlier error. From the error message, I'm assuming there's some issue with your Loop file definition or your input PDB. I would expect that error if your loop file is specifying residues which aren't actually in your PDB file.

Double check your input PDB to make sure it corresponds to what you want, and the loop residues you want to remodel are where you think they are.

The other thing to keep in mind is that the loop file uses Pose numbering, which is different than the numbering in the PDB. In Pose numbering, the first residue in the structure is 1, and it goes up sequentially without gaps or insertions, and doesn't restart at all for new chains. Depending on how your PDB is numbered, if you attempt to use PDB numbers in the loop file you may be very off as to which residues you're specifying.

Mon, 2019-06-24 13:05
rmoretti

Dear rmoretti,

many thanks for your tips.

I have two questions for you.

Firstly, what means "put it in your chainbreak_fix.options" exactly? You meant -restore_talaris_behavior flag or smth. else?

Secondly, I fixed input pdb-file, but I got such errors:

"protocols.jd2.JobDistributor: [ ERROR ] protocols.jd2.JobDistributor: [ WARNING ] 3gbn_Ab_0006 reported failure and will NOT retry protocols.jd2.PDBJobInputter: PDBJobInputter::pose_from_job protocols.jd2.PDBJobInputter: filling pose from saved copy 3gbn_Ab.pdb core.pose.extra_pose_info_util: [ WARNING ] Cannot open psipred_ss2 file tt protocols.loops.loops_main: can not open DSSP file tt protocols.evaluation.ChiWellRmsdEvaluatorCreator: Evaluation Creator active ... protocols.loop_build.LoopBuildMover: Annotated sequence of pose: E[GLU:NtermProteinFull]VQLVESGAEVKKPGSSVKVSC[CYS:disulfide]KASGGPFRSYAISWVRQAPGQGPEWMGGIIPIFGTTKYAPKFQGRVTITADDFAGTVYMELSSLRSEDTAMYYC[CYS:disulfide]AKHMGYQVRETMDVWGKGTTVTVS[SER:CtermProteinFull]V[VAL:NtermProteinFull]LTQPPSVSAAPGQKVTISC[CYS:disulfide]SGSSSNIGNDYVSWYQQLPGTAPKLLIYDNNKRPSGIPDRFSGSKSGTSATLGITGLQTGDEANYYC[CYS:disulfide]ATWDRRPTAYVVFGGGTKLT[THR:CtermProteinFull] protocols.looprelax: [ WARNING ] The LoopRelaxMover is no longer maintained. Please use the LoopModeler mover as replacement. protocols.looprelax: ==== Loop protocol: ================================================= protocols.looprelax: remodel perturb_kic protocols.looprelax: intermedrelax no protocols.looprelax: refine refine_kic protocols.looprelax: relax no protocols.evaluation.ChiWellRmsdEvaluatorCreator: Evaluation Creator active ... loops: [ ERROR ] invalid loop 120 121 0: crosses a chain boundary within the Pose ERROR: Loops::Error, loop crosses chain boundary ERROR:: Exit from: src/protocols/loops/Loops.cc line: 608".

I looked at that protein in PyMol and saw, that the ends, which I should combine together, were situated too far from each other and potential loop could be placed too close to protein.

It seems as if, as there is smth. wrong with pdb-file and its comformation. I would like to find out, how to fix this error.

I attached two files for better clarification.

File attachments: 
Wed, 2019-06-26 00:00
Corvin

Yes, the -restore_talaris_behavior flag, like all Rosetta options, can either go on the command line or in an options file.

In your loops file, are you giving it the 120-121 as a broken loop? If so, don't. The loop remodeling process here is to reconnect portions of the protein which are accidentally disconnected in the input protein. The break between 120 and 121 in your protein is supposed to be a break between the two chains. As such, it should stay disconnected. (The chainbreak fix is to fix that small discontinuity between residues 127 and 128.)

This shouldn't affect the downstream usage at all. The protein-protein docking protocol should be perfectly able to work with multi-chain docking partners. As such, you can dock the H and L chains here as a single unit to another protein (either a single chain, or multiple chains as a complex.)

Tue, 2019-07-09 10:13
rmoretti