ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/branches/new_design/OOPSE-4/src/types/HarmonicBondType.hpp
Revision: 1743
Committed: Tue Nov 16 22:04:26 2004 UTC (19 years, 8 months ago) by gezelter
File size: 822 byte(s)
Log Message:
added some new stuff

File Contents

# Content
1 #ifndef TYPES_HARMONICBONDTYPE_HPP
2 #define TYPES_HARMONICBONDTYPE_HPP
3
4 #include "types/BondType.hpp"
5
6 namespace oopse {
7 /**
8 * @class HarmonicBondType
9 *
10 * HarmonicBondType is the basic OOPSE bond type.
11 */
12 class HarmonicBondType : public BondType {
13
14 public:
15
16 HarmonicBondType(double myR0, double myK) : BondType() {
17 r0 = myR0;
18 k = myK;
19 }
20
21 void setEquilibriumBondLength(double r) { r0 = r; }
22 void setForceConstant(double myK) {k = myK; }
23
24 double getEquilibriumBondLength() {return r0;}
25 double getForceConstant() {return k;}
26
27 void calcForce(double r, double& V, double& dVdr) {
28 double dr;
29
30 dr = r - r0;
31
32 V = 0.5 * k * dr * dr;
33 dVdr = k * dr;
34 }
35
36 private:
37
38 double r0;
39 double k;
40
41 };
42 }
43 #endif