1 
2 #ifndef __GABEDIT_DEMONTYPES_H__
3 #define __GABEDIT_DEMONTYPES_H__
4 
5 typedef struct _DeMonColorBack
6 {
7 	GdkColor keyWord;
8 	GdkColor description;
9 }DeMonColorBack;
10 
11 typedef struct _DeMonColorFore
12 {
13 	GdkColor keyWord;
14 	GdkColor description;
15 }DeMonColorFore;
16 
17 typedef struct _DeMonAtom
18 {
19 	gdouble position[3];
20 	gchar* symbol;
21 }DeMonAtom;
22 
23 typedef struct _DeMonMolecule
24 {
25 	gint numberOfAtoms;
26 	gint totalNumberOfElectrons;
27 	gint numberOfValenceElectrons;
28 	DeMonAtom* listOfAtoms;
29 	gchar* auxBasisName;
30 }DeMonMolecule;
31 
32 typedef struct _DeMonBasis
33 {
34 	gchar* name;
35 	gchar* molecule;
36 	int numberOfBasisTypes;
37 	gchar** basisNames;
38 }DeMonBasis;
39 
40 typedef struct _DeMonGuessWaveFunction
41 {
42 	gboolean fromHCore;
43 	gchar* method;
44 	gchar* functional;
45 	gchar* molecule;
46 	gchar* basis;
47 	gchar* memory;
48 	gint totalCharge;
49 	gint spinMultiplicity;
50 }DeMonGuessWaveFunction;
51 
52 typedef enum
53 {
54  LSDAC = 0, PBEC, PW91C, P86C, NewP86C, VWN1LC, VWN1LCRPA, VWN2LC, VWN3LC, VWN4LC, VWN5LC, PW92LC, PZ81LC, LYPC,
55  HFX, Xalpha, SlaterX, Becke88X, PBEX, PW86X, PW91X, mPW91_B88X, mPW91_PW91X,mPW91_mPW91X, G96X
56 } DeMonFunctionalType;
57 
58 typedef enum
59 {
60  XALPHA = 0, HFS, HFB, HFG96, G96LYP, BLYP, SVWN1, SVWN1RPA, SVWN2, SVWN3,
61  SVWN4, SVWN5, SPZ81, SPW92, BPW91, BP86, B3LYP, B3PW91, B3P86, PBE, PW91,
62  mPW_PW91_PW91, mPWPW91, mPW1PW91
63 } DeMonStdFunctionalType;
64 
65 typedef struct _DeMonFunctional
66 {
67 	DeMonFunctionalType type;
68 	gchar* name;
69 	gchar* comment;
70 }DeMonFunctional;
71 typedef struct _DeMonStdFunctional
72 {
73 	DeMonStdFunctionalType type;
74 	gchar* name;
75 	gint n;
76 	DeMonFunctionalType* listOfTypes;
77 	gdouble* coefficients;
78 }DeMonStdFunctional;
79 
80 #endif /* __GABEDIT_DEMONTYPES_H__ */
81