From 1648d0c9fd8b9a5c8204c42620f4b1a180299ba2 Mon Sep 17 00:00:00 2001 From: juergen <juergenhaas@gmx.net> Date: Wed, 6 Oct 2010 14:00:37 +0200 Subject: [PATCH] added option to skip FindWithin step in LocalDistTest by specifying max_dist as -1 --- modules/mol/alg/src/local_dist_test.cc | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/modules/mol/alg/src/local_dist_test.cc b/modules/mol/alg/src/local_dist_test.cc index 2a0c07bf5..bd88902b0 100644 --- a/modules/mol/alg/src/local_dist_test.cc +++ b/modules/mol/alg/src/local_dist_test.cc @@ -58,12 +58,18 @@ std::pair<Real, Real> calc_overlap(ResidueView ref_res, AtomViewList ref_atoms=ref_res.GetAtomList(); ResidueView mdl_res=mdl_chain.FindResidue(ref_res.GetNumber()); + AtomViewList within; + if (max_dist<0){ + within=ref.GetAtomList(); + } for (AtomViewList::iterator ai=ref_atoms.begin(), ae=ref_atoms.end(); ai!=ae; ++ai) { if (ai->GetElement()=="H") { continue; } String name=swap ? swapped_name(ai->GetName()) : ai->GetName(); AtomView av1=mdl_res ? mdl_res.FindAtom(name) : AtomView(); - AtomViewList within=ref.FindWithin(ai->GetPos(), max_dist); + if (max_dist>=0){ + within=ref.FindWithin(ai->GetPos(), max_dist); + } for (AtomViewList::iterator aj=within.begin(), ae2=within.end(); aj!=ae2; ++aj) { if (aj->GetElement()=="H") { continue; } @@ -88,9 +94,6 @@ std::pair<Real, Real> calc_overlap(ResidueView ref_res, continue; } if (aj->GetResidue().GetNumber()>ref_res.GetNumber()) { - if (aj->GetResidue().GetNumber()<=ref_res.GetNumber()) { - continue; - } AtomView av2=mdl_chain.FindAtom(aj->GetResidue().GetNumber(), aj->GetName()); overlap.second+=1.0; -- GitLab