Psi4
ccdensity/MOInfo.h
Go to the documentation of this file.
1 /*
2  * @BEGIN LICENSE
3  *
4  * Psi4: an open-source quantum chemistry software package
5  *
6  * Copyright (c) 2007-2017 The Psi4 Developers.
7  *
8  * The copyrights for code used from other parties are included in
9  * the corresponding files.
10  *
11  * This program is free software; you can redistribute it and/or modify
12  * it under the terms of the GNU General Public License as published by
13  * the Free Software Foundation; either version 2 of the License, or
14  * (at your option) any later version.
15  *
16  * This program is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU General Public License for more details.
20  *
21  * You should have received a copy of the GNU General Public License along
22  * with this program; if not, write to the Free Software Foundation, Inc.,
23  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
24  *
25  * @END LICENSE
26  */
27 
33 namespace psi { namespace ccdensity {
34 
35 struct MOInfo {
36  int nirreps; /* no. of irreducible representations */
37  int nmo; /* no. of molecular orbitals */
38  int nso; /* no. of symmetry orbitals */
39  int nactive; /* no. of active orbitals */
40  int *orbspi; /* no. of MOs per irrep */
41  int *clsdpi; /* no. of closed-shells per irrep excl. frdocc */
42  int *openpi; /* no. of open-shells per irrep */
43  int *uoccpi; /* no. of unoccupied orbitals per irrep excl. fruocc */
44  int *frdocc; /* no. of frozen core orbitals per irrep */
45  int *fruocc; /* no. of frozen unoccupied orbitals per irrep */
46  char **labels; /* irrep labels */
47  int nfzc; /* total no. of frozen core orbitals */
48  int nfzv; /* total no. of frozen virtual orbitals */
49  int nclsd; /* total no. of closd shells excl. frdocc */
50  int nopen; /* total no. of open shells */
51  int nuocc; /* total no. of unoccupied shells excl. fruocc */
52  int *occ_sym; /* active occupied index symmetry */
53  int *aocc_sym; /* alpha active occupied index symmetry */
54  int *bocc_sym; /* beta active occupied index symmetry */
55  int *vir_sym; /* active virtual index symmetry */
56  int *avir_sym; /* alpha active virtual index symmetry */
57  int *bvir_sym; /* beta active virtual index symmetry */
58  int sym; /* symmetry of converged CCSD state */
59  int *occpi; /* no. of active occ. orbs. (incl. open) per irrep */
60  int *aoccpi; /* no. of alpha active occ. orbs. (incl. open) per irrep */
61  int *boccpi; /* no. of beta active occ. orbs. (incl. open) per irrep */
62  int *virtpi; /* no. of active virt. orbs. (incl. open) per irrep */
63  int *avirtpi; /* no. of alpha active virt. orbs. (incl. open) per irrep */
64  int *bvirtpi; /* no. of beta active virt. orbs. (incl. open) per irrep */
65  int *occ_off; /* occupied orbital offsets within each irrep */
66  int *aocc_off; /* alpha occupied orbital offsets within each irrep */
67  int *bocc_off; /* beta occupied orbital offsets within each irrep */
68  int *vir_off; /* virtual orbital offsets within each irrep */
69  int *avir_off; /* alpha virtual orbital offsets within each irrep */
70  int *bvir_off; /* beta virtual orbital offsets within each irrep */
71  int *cc_occ; /* QT->CC active occupied reordering array */
72  int *cc_aocc; /* QT->CC alpha active occupied reordering array */
73  int *cc_bocc; /* QT->CC beta active occupied reordering array */
74  int *cc_vir; /* QT->CC active virtiual reordering array */
75  int *cc_avir; /* QT->CC alpha active virtiual reordering array */
76  int *cc_bvir; /* QT->CC beta active virtiual reordering array */
77  int *qt_occ; /* CC->QT active occupied reordering array */
78  int *qt_aocc; /* CC->QT alpha active occupied reordering array */
79  int *qt_bocc; /* CC->QT beta active occupied reordering array */
80  int *qt_vir; /* CC->QT active virtiual reordering array */
81  int *qt_avir; /* CC->QT alpha active virtiual reordering array */
82  int *qt_bvir; /* CC->QT beta active virtiual reordering array */
83  double enuc; /* Nuclear repulsion energy */
84  double escf; /* SCF energy from wfn */
85  double eref; /* Reference energy */
86  double ecc; /* CC energy (CC2, CCSD, or CC3) from ccenergy */
87  double et; /* (T) energy from cctriples */
88  double **opdm; /* Onepdm in the full (fzc+clsd+socc+uocc) space */
89  double **opdm_a; /* Alpha Onepdm in the full (fzc+clsd+socc+uocc) space */
90  double **opdm_b; /* Beta Onepdm in the full (fzc+clsd+socc+uocc) space */
91  double **I; /* Lagrangian matrix in the full space */
92  double **I_a; /* Alpha Lagrangian matrix in the full space */
93  double **I_b; /* Beta Lagrangian matrix in the full space */
94  double **ltd; /* <0|O|n> Left transition density */
95  double **ltd_a; /* <0|O|n> Left transition alpha density */
96  double **ltd_b; /* <0|O|n> Left transition beta density */
97  double **rtd; /* <n|O|0> Right transition density */
98  double **rtd_a; /* <n|O|0> Right transition alpha density */
99  double **rtd_b; /* <n|O|0> Right transition beta density */
100  int *pitzer2qt; /* Pitzer to QT re-ordering array */
101  int *qt2pitzer; /* QT to Pitzer re-ordering array */
102  double **scf_qt; /* SCF orbitals (QT ordering of MOs) */
103  double ***L;
104  double ***nabla;
105  double ***dip;
106 };
107 
108 }} // namespace psi::ccdensity
int * bocc_sym
Definition: ccdensity/MOInfo.h:54
int * orbspi
Definition: ccdensity/MOInfo.h:40
int * vir_off
Definition: ccdensity/MOInfo.h:68
int * avirtpi
Definition: ccdensity/MOInfo.h:63
int nfzc
Definition: ccdensity/MOInfo.h:47
int sym
Definition: ccdensity/MOInfo.h:58
double ** ltd
Definition: ccdensity/MOInfo.h:94
int * cc_occ
Definition: ccdensity/MOInfo.h:71
int * qt2pitzer
Definition: ccdensity/MOInfo.h:101
int * cc_avir
Definition: ccdensity/MOInfo.h:75
int * qt_vir
Definition: ccdensity/MOInfo.h:80
int * bvirtpi
Definition: ccdensity/MOInfo.h:64
int nmo
Definition: ccdensity/MOInfo.h:37
int * avir_sym
Definition: ccdensity/MOInfo.h:56
int * bvir_off
Definition: ccdensity/MOInfo.h:70
int * bocc_off
Definition: ccdensity/MOInfo.h:67
int * openpi
Definition: ccdensity/MOInfo.h:42
int nopen
Definition: ccdensity/MOInfo.h:50
double ** rtd
Definition: ccdensity/MOInfo.h:97
int * occpi
Definition: ccdensity/MOInfo.h:59
int * qt_occ
Definition: ccdensity/MOInfo.h:77
Definition: ccdensity/MOInfo.h:35
int * vir_sym
Definition: ccdensity/MOInfo.h:55
double ** I_b
Definition: ccdensity/MOInfo.h:93
int * avir_off
Definition: ccdensity/MOInfo.h:69
int * frdocc
Definition: ccdensity/MOInfo.h:44
double ** opdm
Definition: ccdensity/MOInfo.h:88
double enuc
Definition: ccdensity/MOInfo.h:83
int nfzv
Definition: ccdensity/MOInfo.h:48
double escf
Definition: ccdensity/MOInfo.h:84
double ** ltd_a
Definition: ccdensity/MOInfo.h:95
double ** scf_qt
Definition: ccdensity/MOInfo.h:102
double *** dip
Definition: ccdensity/MOInfo.h:105
int * clsdpi
Definition: ccdensity/MOInfo.h:41
int * qt_aocc
Definition: ccdensity/MOInfo.h:78
int * boccpi
Definition: ccdensity/MOInfo.h:61
int nuocc
Definition: ccdensity/MOInfo.h:51
double ** I
Definition: ccdensity/MOInfo.h:91
int nso
Definition: ccdensity/MOInfo.h:38
double ** I_a
Definition: ccdensity/MOInfo.h:92
int * virtpi
Definition: ccdensity/MOInfo.h:62
double ** ltd_b
Definition: ccdensity/MOInfo.h:96
double ** rtd_b
Definition: ccdensity/MOInfo.h:99
double ** opdm_a
Definition: ccdensity/MOInfo.h:89
int * cc_vir
Definition: ccdensity/MOInfo.h:74
int * aoccpi
Definition: ccdensity/MOInfo.h:60
double *** L
Definition: ccdensity/MOInfo.h:103
int nactive
Definition: ccdensity/MOInfo.h:39
int * cc_bocc
Definition: ccdensity/MOInfo.h:73
int * cc_aocc
Definition: ccdensity/MOInfo.h:72
int * bvir_sym
Definition: ccdensity/MOInfo.h:57
char ** labels
Definition: ccdensity/MOInfo.h:46
int * qt_bvir
Definition: ccdensity/MOInfo.h:82
int * cc_bvir
Definition: ccdensity/MOInfo.h:76
double eref
Definition: ccdensity/MOInfo.h:85
int * qt_bocc
Definition: ccdensity/MOInfo.h:79
int * uoccpi
Definition: ccdensity/MOInfo.h:43
double ** opdm_b
Definition: ccdensity/MOInfo.h:90
int * aocc_off
Definition: ccdensity/MOInfo.h:66
int * pitzer2qt
Definition: ccdensity/MOInfo.h:100
double ecc
Definition: ccdensity/MOInfo.h:86
int * occ_sym
Definition: ccdensity/MOInfo.h:52
double et
Definition: ccdensity/MOInfo.h:87
int * occ_off
Definition: ccdensity/MOInfo.h:65
int nclsd
Definition: ccdensity/MOInfo.h:49
double *** nabla
Definition: ccdensity/MOInfo.h:104
int * qt_avir
Definition: ccdensity/MOInfo.h:81
PsiReturnType ccdensity(SharedWavefunction, Options &)
double ** rtd_a
Definition: ccdensity/MOInfo.h:98
int * fruocc
Definition: ccdensity/MOInfo.h:45
int nirreps
Definition: ccdensity/MOInfo.h:36
int * aocc_sym
Definition: ccdensity/MOInfo.h:53