From a62f425cfdc48e5b132b8f73574f1f52bdf0c0b1 Mon Sep 17 00:00:00 2001 From: Andreas Schenk <andreas_schenk@hms.harvard.edu> Date: Thu, 7 Jun 2012 10:05:07 -0400 Subject: [PATCH] removed one more pytho removed some unnecessary pow() --- modules/geom/src/vec3.cc | 11 +++++++---- modules/mol/alg/src/local_dist_test.cc | 2 +- modules/mol/alg/src/trajectory_analysis.cc | 2 +- modules/mol/base/src/coord_frame.cc | 17 +++++++++-------- 4 files changed, 18 insertions(+), 14 deletions(-) diff --git a/modules/geom/src/vec3.cc b/modules/geom/src/vec3.cc index 8480aac85..932432a1e 100644 --- a/modules/geom/src/vec3.cc +++ b/modules/geom/src/vec3.cc @@ -101,7 +101,8 @@ Line3 Vec3List::FitCylinder(const Vec3& initial_direction, const Vec3& center) c radius/=Real(n_res); res_sum=0.0; for (Vec3List::const_iterator i=this->begin(),e=this->end(); i!=e; ++i) { - res_sum+=pow(Distance(axis,(*i))-radius,2.); + Real r=Distance(axis,(*i))-radius; + res_sum+=r*r; } unsigned long k=0; err=2.0*prec; @@ -110,7 +111,7 @@ Line3 Vec3List::FitCylinder(const Vec3& initial_direction, const Vec3& center) c axis_old=axis; radius=0.0; if (k>50) { - delta=delta_0*pow((50./k),2.0); + delta=delta_0*50.0*50.0/(k*k); } for (Vec3List::const_iterator i=this->begin(),e=this->end(); i!=e; ++i) { radius+=Distance(axis,(*i)); @@ -127,7 +128,8 @@ Line3 Vec3List::FitCylinder(const Vec3& initial_direction, const Vec3& center) c } radius/=Real(n_res); for (Vec3List::const_iterator i=this->begin(),e=this->end(); i!=e; ++i) { - res_sum+=pow(Distance(axis,(*i))-radius,2.); + Real r=Distance(axis,(*i))-radius; + res_sum+=r*r; } gradient[j]=(res_sum-res_sum_old)/delta; } @@ -143,7 +145,8 @@ Line3 Vec3List::FitCylinder(const Vec3& initial_direction, const Vec3& center) c radius/=Real(n_res); res_sum=0.0; for (Vec3List::const_iterator i=this->begin(),e=this->end(); i!=e; ++i) { - res_sum+=pow(Distance(axis,(*i))-radius,2.); + Real r=Distance(axis,(*i))-radius; + res_sum+=r*r; } err=fabs((res_sum-res_sum_old)/float(n_res)); k++; diff --git a/modules/mol/alg/src/local_dist_test.cc b/modules/mol/alg/src/local_dist_test.cc index 4c4bd2e25..89da8c9ae 100644 --- a/modules/mol/alg/src/local_dist_test.cc +++ b/modules/mol/alg/src/local_dist_test.cc @@ -276,7 +276,7 @@ bool UniqueAtomIdentifier::operator==(const UniqueAtomIdentifier& rhs) const bool ReferenceDistance::IsValid() const { - if (mind_ == -1.0 and maxd_ == -1.0) { + if (mind_ == -1.0 && maxd_ == -1.0) { return false; } return true; diff --git a/modules/mol/alg/src/trajectory_analysis.cc b/modules/mol/alg/src/trajectory_analysis.cc index 4a2671c01..5adf3c6eb 100644 --- a/modules/mol/alg/src/trajectory_analysis.cc +++ b/modules/mol/alg/src/trajectory_analysis.cc @@ -396,7 +396,7 @@ std::vector<Real> AnalyzeAromaticRingInteraction(const CoordGroupHandle& traj, c rmsf+=geom::Dot(v,v); } } - return pow(rmsf/float(n_atoms*n_frames),0.5); + return sqrt(rmsf/float(n_atoms*n_frames)); } }}} //ns diff --git a/modules/mol/base/src/coord_frame.cc b/modules/mol/base/src/coord_frame.cc index 1c30611b3..bbaa5ccab 100644 --- a/modules/mol/base/src/coord_frame.cc +++ b/modules/mol/base/src/coord_frame.cc @@ -39,13 +39,12 @@ namespace ost { namespace mol { */ Real Eval2AngleDist(Real phi, Real phi0, Real psi, Real psi0, Real delta) { - Real d1,d2,d; - d1=abs(phi-phi0); - d2=abs(psi-psi0); + Real d1=abs(phi-phi0); + Real d2=abs(psi-psi0); if (d1>M_PI) d1=abs(d1-2.*M_PI); if (d2>M_PI) d1=abs(d2-2.*M_PI); - d=(pow(d1,2.)+pow(d2,2.))/pow(delta,2.); - return 1./(1+d); + Real d=(d1*d1+d2*d2)/(delta*delta); + return 1.0/(1.0+d); } } @@ -138,7 +137,7 @@ namespace ost { namespace mol { val=geom::Length2(av_ref-av_sele); rmsd+=val; } - return pow(rmsd/indices_sele.size(),0.5); + return sqrt(rmsd/indices_sele.size()); } Real CoordFrame::GetRMSD(const EntityView& reference_view,const EntityView& sele_view) const @@ -303,8 +302,10 @@ namespace ost { namespace mol { psi=geom::DihedralAngle(n,ca,c,n_next); score.push_back(Eval2AngleDist(phi,phi_0,psi,psi_0,delta)); } - score2[0]=pow(score[0]*score[1],3./2.); - score2[n_atoms-3]=pow(score[n_atoms-3]*score[n_atoms-4],3./2.); + score2[0]=sqrt(score[0]*score[1]*score[0]*score[1]*score[0]*score[1]); + score2[n_atoms-3]=sqrt(score[n_atoms-3]*score[n_atoms-4]* + score[n_atoms-3]*score[n_atoms-4]* + score[n_atoms-3]*score[n_atoms-4]); for (unsigned long i=1; i!=n_atoms-3; ++i) { score2[i]=score[i-1]*score[i]*score[i+1]; } -- GitLab