11
11
#include "mo_overlap.h"
13
13
#include "linalg.h"
15
16
extern MOInfo_t MOInfo;
16
17
extern FILE *outfile;
18
extern HFWavefunction* HFVectors[MAX_NUM_DISP];
18
20
extern void done(const char *);
20
double eval_uhf_derwfn_overlap()
22
double eval_uhf_derwfn_overlap(DisplacementIndex LDisp, DisplacementIndex RDisp)
24
FLOAT **CSC_a = eval_S_alpha(LDisp,RDisp);
25
FLOAT **CSC_b = eval_S_beta(LDisp,RDisp);
27
int* clsdpi = HFVectors[LDisp]->clsdpi();
28
int* openpi = HFVectors[LDisp]->openpi();
29
int* orbspi = HFVectors[LDisp]->orbspi();
30
int nirreps = HFVectors[LDisp]->nirreps();
22
33
int nalpha = MOInfo.nalpha;
23
34
int nbeta = MOInfo.nbeta;
25
FLOAT **CSC_a = eval_S_alpha();
26
FLOAT **CSC_b = eval_S_beta();
28
chkpt_init(PSIO_OPEN_OLD);
29
int* clsdpi = chkpt_rd_clsdpi();
30
int* openpi = chkpt_rd_openpi();
31
int* orbspi = chkpt_rd_orbspi();
32
int nirreps = chkpt_rd_nirreps();
37
int nalpha = HFVectors[LDisp]->nalpha();
38
int nbeta = HFVectors[LDisp]->nbeta();
35
42
// Extract the alpha and beta blocks
36
43
FLOAT **CSC_alpha = create_matrix(nalpha,nalpha);