ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-4/src/types/CharmmTorsionType.cpp
(Generate patch)

Comparing trunk/OOPSE-4/src/types/CharmmTorsionType.cpp (file contents):
Revision 3172 by tim, Wed Nov 16 23:10:02 2005 UTC vs.
Revision 3173 by gezelter, Fri Jul 13 18:10:52 2007 UTC

# Line 44 | Line 44 | CharmmTorsionType::CharmmTorsionType(std::vector<Charm
44   #include "utils/NumericConstant.hpp"
45   #include "math/ChebyshevPolynomials.hpp"
46   namespace oopse {
47 < CharmmTorsionType::CharmmTorsionType(std::vector<CharmmTorsionParameter>& parameters) {
47 >  CharmmTorsionType::CharmmTorsionType(std::vector<CharmmTorsionParameter>& parameters) {
48      std::vector<CharmmTorsionParameter>::iterator i;
49 <    i = std::max_element(parameters.begin(), parameters.end(), LessThanPeriodicityFunctor());
49 >    i = std::max_element(parameters.begin(), parameters.end(),
50 >                         LessThanPeriodicityFunctor());
51      if (i != parameters.end()) {
52 <        int maxPower = i->n;
53 <        ChebyshevT T(maxPower);
54 <        ChebyshevU U(maxPower);
52 >      int maxPower = i->n;
53 >      ChebyshevT T(maxPower);
54 >      ChebyshevU U(maxPower);
55 >      
56 >      // convert parameters of charmm type torsion into
57 >      // PolynomialTorsion's parameters
58  
59 <        // convert parameters of charmm type torsion into PolynomialTorsion's parameters
60 <        DoublePolynomial finalPolynomial;
61 <        for (i = parameters.begin(); i != parameters.end(); ++i) {
62 <            DoublePolynomial cosTerm = T.getChebyshevPolynomial(i->n);
63 <            cosTerm *= cos(i->delta) * i->kchi;
64 <            DoublePolynomial sinTerm = U.getChebyshevPolynomial(i->n);
65 <            sinTerm *= -sin(i->delta) * i->kchi;
66 <            finalPolynomial = cosTerm + sinTerm;
67 <            finalPolynomial += i->kchi;
68 <        }
65 <        torsionType_->setPolynomial(finalPolynomial);
59 >      DoublePolynomial finalPolynomial;
60 >      for (i = parameters.begin(); i != parameters.end(); ++i) {
61 >        DoublePolynomial cosTerm = T.getChebyshevPolynomial(i->n);
62 >        cosTerm *= cos(i->delta) * i->kchi;
63 >        DoublePolynomial sinTerm = U.getChebyshevPolynomial(i->n);
64 >        sinTerm *= -sin(i->delta) * i->kchi;
65 >        finalPolynomial = cosTerm + sinTerm;
66 >        finalPolynomial += i->kchi;
67 >      }
68 >      torsionType_->setPolynomial(finalPolynomial);
69      }
70 < }
68 <
70 >  }  
71   } //end namespace oopse

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines