1 
2 #ifndef __GABEDIT_PSICODETYPES_H__
3 #define __GABEDIT_PSICODETYPES_H__
4 
5 typedef struct _PsicodeColorBack
6 {
7 	GdkColor keyWord;
8 	GdkColor description;
9 }PsicodeColorBack;
10 
11 typedef struct _PsicodeColorFore
12 {
13 	GdkColor keyWord;
14 	GdkColor description;
15 }PsicodeColorFore;
16 
17 typedef struct _PsicodeAtom
18 {
19 	gdouble position[3];
20 	gchar* symbol;
21 }PsicodeAtom;
22 
23 typedef struct _PsicodeMolecule
24 {
25 	gint numberOfAtoms;
26 	gint totalNumberOfElectrons;
27 	gint numberOfValenceElectrons;
28 	PsicodeAtom* listOfAtoms;
29 	gchar* auxBasisName;
30 }PsicodeMolecule;
31 
32 typedef struct _PsicodeBasis
33 {
34 	gchar* name;
35 	gchar* molecule;
36 	int numberOfBasisTypes;
37 	gchar** basisNames;
38 }PsicodeBasis;
39 
40 typedef struct _PsicodeGuessWaveFunction
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 }PsicodeGuessWaveFunction;
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 } PsicodeFunctionalType;
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 } PsicodeStdFunctionalType;
64 
65 typedef struct _PsicodeFunctional
66 {
67 	PsicodeFunctionalType type;
68 	gchar* name;
69 	gchar* comment;
70 }PsicodeFunctional;
71 typedef struct _PsicodeStdFunctional
72 {
73 	PsicodeStdFunctionalType type;
74 	gchar* name;
75 	gint n;
76 	PsicodeFunctionalType* listOfTypes;
77 	gdouble* coefficients;
78 }PsicodeStdFunctional;
79 
80 #endif /* __GABEDIT_PSICODETYPES_H__ */
81