| 103 |
|
|
| 104 |
|
void printMe( void ){ |
| 105 |
|
std::cerr << c_p_a->getType() << " - " << c_p_b->getType() |
| 106 |
+ |
<< ": " << c_p_a->getIndex() << " - " |
| 107 |
+ |
<< c_p_b->getIndex() |
| 108 |
|
<< ", d0 = " << d0 << "\n"; |
| 109 |
|
} |
| 110 |
|
|
| 113 |
|
double d0; |
| 114 |
|
}; |
| 115 |
|
|
| 116 |
+ |
class HarmonicBond : public Bond{ |
| 117 |
+ |
|
| 118 |
+ |
public: |
| 119 |
+ |
HarmonicBond(Atom &a, Atom &b, double theR0, double theK0 ); |
| 120 |
+ |
~HarmonicBond(){} |
| 121 |
+ |
|
| 122 |
+ |
void printMe( void ){ |
| 123 |
+ |
std::cerr << c_p_a->getType() << " - " << c_p_b->getType() |
| 124 |
+ |
<< ": " << c_p_a->getIndex() << " - " |
| 125 |
+ |
<< c_p_b->getIndex() |
| 126 |
+ |
<< ", d0 = " << d0 << ", k0 = " << k0 <<"\n"; |
| 127 |
+ |
} |
| 128 |
+ |
|
| 129 |
+ |
private: |
| 130 |
+ |
double bond_force( double r_ab ); |
| 131 |
+ |
double d0; |
| 132 |
+ |
double k0; |
| 133 |
+ |
|
| 134 |
+ |
}; |
| 135 |
+ |
|
| 136 |
|
class QuadraticBend : public Bend{ |
| 137 |
|
|
| 138 |
|
public: |
| 160 |
|
class GhostBend : public Bend{ |
| 161 |
|
|
| 162 |
|
public: |
| 163 |
< |
GhostBend( Atom &a, Atom &b ); |
| 163 |
> |
GhostBend( Atom &a, Atom &b, Atom &c ); |
| 164 |
|
~GhostBend(){} |
| 165 |
|
|
| 166 |
|
void calc_forces( void ); |
| 194 |
|
double the_k4 ); |
| 195 |
|
void printMe( void ){ |
| 196 |
|
std::cerr << c_p_a->getType() << " - " << c_p_b->getType() << " - " |
| 197 |
< |
<< c_p_c->getType() << " - " << c_p_d->getType() |
| 197 |
> |
<< c_p_c->getType() << " - " << c_p_d->getType() << ": " |
| 198 |
> |
<< c_p_a->getIndex() << " - " << c_p_b->getIndex() << " - " |
| 199 |
> |
<< c_p_c->getIndex() << " - " << c_p_d->getIndex() |
| 200 |
|
<< ", k1 = " << k1 << "; k2 = " << k2 |
| 201 |
|
<< "; k3 = " << k3 << "; k4 =" << k4 << "\n"; |
| 202 |
|
} |