Member Site › Forums › Rosetta 3 › Rosetta 3 – Applications › a trouble during floppytail modeling › Reply To: a trouble during floppytail modeling
“So if possible and at your conveinence, could you share with us your method to change pdb chain id?”
I meant to move the lines of text in the PDB around, not re-letter the chains. The order in which the domains appear in the PDB file is relevant; their chain IDs are not. (That the chain ID matches what you pass to -flexible_chain does matter, of course). To answer the question you asked, the easiest way is sed, awk, or a basic text editor like emacs or vim. There are many tutorials floating around the internet on “regular expressions”, which is how you’d do the regular-expression search-and-replace to change the chains.
As for the patched code – I tested that it compiles this time (against developer trunk, not 3.2, but it should be ok). I tried to get fancy and do all the changes on one line, but the compiler reminds me I have to make a local copy of the FoldTree to modify it. Here’s code that will compile; let me know if it works:
//for nonterminal sections, this fold tree might help (or might make it worse...)
if( stop_ != pose.total_residue() ){
TR << "non-terminal floppy section, using a linear fold tree to try to ensure downstream residues follown"
<< "Old tree: " << pose.fold_tree();
pose.fold_tree(core::kinematics::linearize_fold_tree(pose.fold_tree()));
core::kinematics::FoldTree ft(pose.fold_tree());
ft.reorder(pose.total_residue());
pose.fold_tree(ft);
TR << pose.fold_tree();
}