File size: 2,849 Bytes
96272bc
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<ROSETTASCRIPTS>
  <!--
    Reprocess an EXISTING flex ddG run to recover per-chain intramolecular energies.

    No re-sampling is needed: struct.db3 already holds the coordinates of every backrub,
    wild type minimized, and mutant minimized pose. This protocol reads those poses back in,
    isolates one chain at a time, and reports the isolated chain's total score.

    Isolating the chain matters. A Chain residue selector alone is not enough, because
    struct.db3 stores the *bound* poses, so a selector-scoped metric still picks up cross-chain
    pair energies (roughly half the interface energy leaks into each chain). Deleting the other
    chains reproduces the separated, unrelaxed unbound state exactly, because intra-chain
    energy is invariant under the rigid-body translation InterfaceDdGMover uses to unbind.

    Chain selectors below are for a two chain A/B complex. Add one Chain selector, one
    DeleteRegionMover, one ReportToDB and one restore/delete/report triple per extra chain.

    Usage (run once per struct.db3, from the directory containing it):

      rosetta_scripts -inout:dbms:database_name struct.db3 -in:use_database \
                      -parser:protocol per_chain_rescore.xml \
                      -restore_talaris_behavior -in:file:fullatom -out:nooutput

    Then read per_chain.db3 with reprocess_per_chain.py.
  -->
  <SCOREFXNS>
    <ScoreFunction name="fa_talaris2014" weights="talaris2014"/>
  </SCOREFXNS>

  <RESIDUE_SELECTORS>
    <Chain name="chain_A" chains="A"/>
    <Chain name="chain_B" chains="B"/>
    <Not name="not_chain_A" selector="chain_A"/>
    <Not name="not_chain_B" selector="chain_B"/>
  </RESIDUE_SELECTORS>

  <MOVERS>
    <SavePoseMover name="save_full" reference_name="full_pose" restore_pose="0"/>
    <SavePoseMover name="restore_full" reference_name="full_pose" restore_pose="1"/>

    <DeleteRegionMover name="isolate_chain_A" residue_selector="not_chain_A"/>
    <DeleteRegionMover name="isolate_chain_B" residue_selector="not_chain_B"/>

    <ReportToDB name="chain_A_report" batch_description="per_chain" database_name="per_chain.db3">
      <ScoreTypeFeatures/>
      <ScoreFunctionFeatures scorefxn="fa_talaris2014"/>
      <StructureScoresFeatures scorefxn="fa_talaris2014"/>
    </ReportToDB>
    <ReportToDB name="chain_B_report" batch_description="per_chain" database_name="per_chain.db3">
      <ScoreTypeFeatures/>
      <ScoreFunctionFeatures scorefxn="fa_talaris2014"/>
      <StructureScoresFeatures scorefxn="fa_talaris2014"/>
    </ReportToDB>
  </MOVERS>

  <PROTOCOLS>
    <Add mover_name="save_full"/>
    <Add mover_name="isolate_chain_A"/>
    <Add mover_name="chain_A_report"/>

    <Add mover_name="restore_full"/>
    <Add mover_name="isolate_chain_B"/>
    <Add mover_name="chain_B_report"/>
  </PROTOCOLS>
  <OUTPUT />
</ROSETTASCRIPTS>