ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/src/math/Polynomial.hpp
(Generate patch)

Comparing branches/development/src/math/Polynomial.hpp (file contents):
Revision 1829 by gezelter, Wed Jan 9 20:12:59 2013 UTC vs.
Revision 1874 by gezelter, Wed May 15 15:09:35 2013 UTC

# Line 35 | Line 35
35   *                                                                      
36   * [1]  Meineke, et al., J. Comp. Chem. 26, 252-271 (2005).            
37   * [2]  Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006).          
38 < * [3]  Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008).          
38 > * [3]  Sun, Lin & Gezelter, J. Chem. Phys. 128, 234107 (2008).          
39   * [4]  Kuang & Gezelter,  J. Chem. Phys. 133, 164101 (2010).
40   * [5]  Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011).
41   */
# Line 273 | Line 273 | namespace OpenMD {
273       * Returns the first derivative of this polynomial.
274       * @return the first derivative of this polynomial
275       */
276 <    PolynomialType & getDerivative() {
277 <      Polynomial<Real> p;
276 >    PolynomialType* getDerivative() {
277 >      Polynomial<Real>* p = new Polynomial<Real>();
278        
279        typename Polynomial<Real>::const_iterator i;
280        ExponentType exponent;
# Line 283 | Line 283 | namespace OpenMD {
283        for (i =  this->begin(); i  != this->end(); ++i) {
284          exponent = i->first;
285          coefficient = i->second;
286 <        p.setCoefficient(exponent-1, coefficient * exponent);
286 >        p->setCoefficient(exponent-1, coefficient * exponent);
287        }
288      
289        return p;
# Line 622 | Line 622 | namespace OpenMD {
622     * @return the first derivative of this polynomial
623     */
624    template<typename Real>
625 <  Polynomial<Real> getDerivative(const Polynomial<Real>& p1) {
626 <    Polynomial<Real> p;
625 >  Polynomial<Real> * getDerivative(const Polynomial<Real>& p1) {
626 >    Polynomial<Real> * p = new Polynomial<Real>();
627      
628      typename Polynomial<Real>::const_iterator i;
629      int exponent;
# Line 632 | Line 632 | namespace OpenMD {
632      for (i =  p1.begin(); i  != p1.end(); ++i) {
633        exponent = i->first;
634        coefficient = i->second;
635 <      p.setCoefficient(exponent-1, coefficient * exponent);
635 >      p->setCoefficient(exponent-1, coefficient * exponent);
636      }
637      
638      return p;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines