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

Comparing:
trunk/src/math/Triangle.hpp (file contents), Revision 1390 by gezelter, Wed Nov 25 20:02:06 2009 UTC vs.
branches/development/src/math/Triangle.hpp (file contents), Revision 1825 by gezelter, Wed Jan 9 19:27:52 2013 UTC

# Line 1 | Line 1
1 < /* Copyright (c) 2008 The University of Notre Dame. All Rights Reserved.
1 > /* Copyright (c) 2008, 2010 The University of Notre Dame. All Rights Reserved.
2   *
3   * The University of Notre Dame grants you ("Licensee") a
4   * non-exclusive, royalty free, license to use, modify and
# Line 35 | Line 35
35   * [1]  Meineke, et al., J. Comp. Chem. 26, 252-271 (2005).            
36   * [2]  Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006).          
37   * [3]  Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008).          
38 < * [4]  Vardeman & Gezelter, in progress (2009).                        
38 > * [4] Kuang & Gezelter,  J. Chem. Phys. 133, 164101 (2010).
39 > * [4] , Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011). *
40   *
40 *
41   *  Triangle.hpp
42   *
43   *  Purpose: Provide basic triangle class for OpenMD. Hates Particle class.
44   *
45   *  Created by Charles F. Vardeman II on 29 July 2008.
46   *  @author  Charles F. Vardeman II
47 < *  @version $Id: Triangle.hpp,v 1.6 2009-11-25 20:02:01 gezelter Exp $
47 > *  @version $Id$
48   *
49   */
50  
# Line 79 | Line 79 | namespace OpenMD {
79        normal_ = normal;
80        HaveNormal_ = true;
81      }
82 +    void setUnitNormal(Vector3d normal) {
83 +      unitnormal_ = normal;
84 +      HaveUnitNormal_ = true;
85 +    }
86  
87      void addVertices(Vector3d P1, Vector3d P2, Vector3d P3);
88  
# Line 100 | Line 104 | namespace OpenMD {
104          return computeNormal();
105        }
106      }
107 +   Vector3d getUnitNormal() {
108 +      if (HaveUnitNormal_) {
109 +        return unitnormal_;
110 +      } else {
111 +        return computeUnitNormal();
112 +      }
113 +    }
114      
115      RealType getArea() {
116        if(HaveArea_){
# Line 112 | Line 123 | namespace OpenMD {
123      RealType computeArea();
124      Vector3d computeNormal();
125      Vector3d computeCentroid();
126 +    Vector3d computeUnitNormal();
127  
128      void setCentroid(Vector3d centroid) {
129        centroid_ = centroid;
# Line 177 | Line 189 | namespace OpenMD {
189        RealType t2 = -a1 + b1 + c1;
190        RealType t3 =  a1 - b1 + c1;
191        RealType t4 =  a1 + b1 - c1;
180      RealType junk = t1*t2*t3*t4;
192        return a1 * b1 * c1 / sqrt(t1 * t2 * t3 * t4);
193      }
194        
# Line 190 | Line 201 | namespace OpenMD {
201      /* Local Indentity of vertex atoms in pos array*/
202      std::vector <StuntDouble*> vertexSD_;
203      Vector3d normal_;
204 +    Vector3d unitnormal_;
205      Vector3d centroid_;
206      Vector3d vertices_[3];
207 <    RealType area_;
207 >    RealType area_;    
208      RealType mass_;
209      Vector3d facetVelocity_;
210      //Length of triangle sides
# Line 200 | Line 212 | namespace OpenMD {
212      RealType alpha_,beta_,gamma_;
213      bool HaveArea_;
214      bool HaveNormal_;
215 +    bool HaveUnitNormal_;
216      bool HaveCentroid_;
217      
218    }; // End class Triangle

Comparing:
trunk/src/math/Triangle.hpp (property svn:keywords), Revision 1390 by gezelter, Wed Nov 25 20:02:06 2009 UTC vs.
branches/development/src/math/Triangle.hpp (property svn:keywords), Revision 1825 by gezelter, Wed Jan 9 19:27:52 2013 UTC

# Line 0 | Line 1
1 + Author Id Revision Date

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines