1 
2 #ifndef __GABEDIT_MOPACTYPES_H__
3 #define __GABEDIT_MOPACTYPES_H__
4 
5 typedef struct _MopacColorBack
6 {
7 	GdkColor keyWord;
8 	GdkColor description;
9 }MopacColorBack;
10 
11 typedef struct _MopacColorFore
12 {
13 	GdkColor keyWord;
14 	GdkColor description;
15 }MopacColorFore;
16 
17 typedef struct _MopacAtom
18 {
19 	gdouble position[3];
20 	gchar* symbol;
21 }MopacAtom;
22 
23 typedef struct _MopacMolecule
24 {
25 	gint numberOfAtoms;
26 	gint totalNumberOfElectrons;
27 	gint numberOfValenceElectrons;
28 	MopacAtom* listOfAtoms;
29 	gchar* auxBasisName;
30 }MopacMolecule;
31 
32 typedef enum
33 {
34  LSDAC = 0, PBEC, PW91C, P86C, NewP86C, VWN1LC, VWN1LCRPA, VWN2LC, VWN3LC, VWN4LC, VWN5LC, PW92LC, PZ81LC, LYPC,
35  HFX, Xalpha, SlaterX, Becke88X, PBEX, PW86X, PW91X, mPW91_B88X, mPW91_PW91X,mPW91_mPW91X, G96X
36 } MopacFunctionalType;
37 
38 typedef enum
39 {
40  XALPHA = 0, HFS, HFB, HFG96, G96LYP, BLYP, SVWN1, SVWN1RPA, SVWN2, SVWN3,
41  SVWN4, SVWN5, SPZ81, SPW92, BPW91, BP86, B3LYP, B3PW91, B3P86, PBE, PW91,
42  mPW_PW91_PW91, mPWPW91, mPW1PW91
43 } MopacStdFunctionalType;
44 
45 typedef struct _MopacFunctional
46 {
47 	MopacFunctionalType type;
48 	gchar* name;
49 	gchar* comment;
50 }MopacFunctional;
51 typedef struct _MopacStdFunctional
52 {
53 	MopacStdFunctionalType type;
54 	gchar* name;
55 	gint n;
56 	MopacFunctionalType* listOfTypes;
57 	gdouble* coefficients;
58 }MopacStdFunctional;
59 
60 #endif /* __GABEDIT_MOPACTYPES_H__ */
61