ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/branches/new_design/OOPSE-2.0/src/types/CubicBendType.hpp
(Generate patch)

Comparing branches/new_design/OOPSE-2.0/src/types/CubicBendType.hpp (file contents):
Revision 1755 by tim, Wed Nov 17 21:47:42 2004 UTC vs.
Revision 1756 by tim, Thu Nov 18 23:26:27 2004 UTC

# Line 44 | Line 44 | class CubicBendType : public BendType {
44  
45      public:
46  
47 <        CubicBendType(double theta, double k2, double k3) : BendType(theta), k2_(k2), k3_(k3) {
47 >        CubicBendType(double theta, , double k3, double k2, double k1, double k0)
48 >            : BendType(theta),k3_(k3), k2_(k2),  k1_(k1), k0_(k0){
49          }
50  
51 <        void setForceConstant(double k2, double k3) {
51 <            k2_ = k2;
51 >        void setForceConstant(double k3, double k2, double k1, double k0) {
52              k3_ = k3;
53 +            k2_ = k2;
54 +            k1_ = k1;
55 +            k0_ = k0;
56          }
57  
58 <        void getForceConstant(double& k2, double& k3) {
56 <            k2  = k2_;
58 >        void getForceConstant(double& k3, double& k2, double& k1, double& k0) {
59              k3 = k3_;
60 +            k2  = k2_;
61 +            k1 = k1_;
62 +            k0 = k0_
63          }
64  
65 <        virtual void calcForce(double theta, double& V, double& dVdr) {
65 >        virtual void calcForce(double theta, double& V, double& dVdTheta) {
66              double delta =  theta- theta0_;
67              double delta2 = delta * delta;
68              double delta3 = delta2 * delta;
69  
70 <            V = 0.5 * (k2_*delta2 + k3_*delta3);
71 <            dVdr = k2_ * delta + 1.5 * k3_*delta2;
70 >            V =k0_ + k1_ * delta + k2_*delta2 + k3_*delta3;
71 >            dVdTheta = k1_ + 2.0*k2_ * delta + 3.0 * k3_*delta2;
72          }
73          
74      private:
75  
71        double k2_;
76          double k3_;
77 +        double k2_;
78 +        double k1_;
79 +        double k0_;
80  
81   };
82  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines