Pull Request №733 RosettaCommons/rosetta/main ← lyskov-ai/rosetta/fix/off-by-one-docking-membrane-misc
Merge: 8ebeca78061b79e9fbbc68db33a78b2fd0361428←09506b6e1960535196ff2b3fae6150b78f9e34e0
Fix off-by-one in 1-indexed loops in docking/membrane/misc (split 4/4 of #707)
----------------
Merge commit message:
Fix off-by-one in 1-indexed loops (docking / membrane / antibody / match / loops / misc)
Split from #707. Off-by-one in 1-indexed loops (< -> <=), last element was
silently skipped:
- docking/DockingEnsemblePrepackProtocol.cc x2 (chain identity validation)
- docking/metrics.cc x2 (cutpoint scan in Fnonnat)
- membrane/MPLipidAccessibility.cc x2 (slice iteration)
- antibody/residue_selector/CDRResidueSelector.cc
- match/output/UpstreamDownstreamCollisionFilter.cc
- loops/util.cc x3 (non-protein-chunk and per-loop accounting)
- cartesian/md.cc x2 (per-atom state save / derivative check)
- cutoutdomain/CutOutDomain.cc (find_nearest_res)
- enzdes/EnzRepackMinimize.cc (movable-residue collection for backrub)
- moves/PyMOLMover.cc (relevant_residues mask init -- last entry left default
false despite the intent of 'all relevant')
membrane/util.cc: comment-only. This documents WHY a nearby loop
intentionally stays '< chains.size()' (the trailing MEM virtual chain must be
excluded); no behavior change.
Note: this batch changes the output of several regression tests -- enzdes,
inverse_rotamer_remodel, ligand_dock_cholesterol, mp_f19_relax,
mpil_load_implicit_lipids. The changes are intentional but results-affecting
and warrant scientific sign-off before merge.