-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpotential.h
70 lines (64 loc) · 2.02 KB
/
potential.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#ifndef POTENTIAL_H
#define POTENTIAL_H
#include <string>
#include <vector>
#include <iostream>
#include <iomanip>
#include <fstream>
#include <cmath>
using namespace std;
class potential
{
public:
potential (){;}
virtual ~potential(){;}
potential(int i1, int i2, string n1, string n2, bool ii);
potential(int i1,int i2,string n1,string n2,string uni,string f);
potential(string n1,string n2,string uni,string f);
potential (string n1, string n2, string st, string uni, string disUni, string f);
string const & getFile () {return file;}
string const & getStyle () {return style;}
void emptyStyle(){style="";}
string const & getName1 () {return name1;}
string const & getName2 () {return name2;}
string const & getName3 () {return name3;}
string const & getName4 () {return name4;}
double getLambda(){return lambda;}
void setStyle(string s){style=s;}
void setLambda(double d){lambda=d;}
void setName1(string n){name1=n;}
void setName2(string n){name2=n;}
void setName3(string n){name3=n;}
void setName4(string n){name4=n;}
int const & getId1 () {return id1;}
int const & getId2 () {return id2;}
void setId1 (const int &i) {id1=i;}
void setId2 (const int &i) {id2=i;}
void addSpace(){file=file+"\n\n";}
double getEnergyFactor(){return energyFactor;}
double getDistanceFactor(){return distanceFactor;}
void setVisited( ){visited=true;}
bool isVisited(){return visited;}
virtual void print(ofstream & out)=0;
virtual vector<double> & getParameters(){return vecParameters;}
virtual void printTerminal(){;}
virtual potential * clone() {return NULL;}
protected:
string prefix;
vector<double> vecParameters;
string style;
private:
string name1;
string name2; //
string name3; //for angle 3 name
string name4; //for dihedral 3 name
string units;
string disUnits;
string file;
bool visited;
double energyFactor,lambda;
double distanceFactor;
int id1;
int id2;
};
#endif // POTENTIAL_H