3
#include <libipv1/ip_lib.h>
4
#include <libciomr/libciomr.h>
5
#include <libchkpt/chkpt.h>
6
#include <libpsio/psio.h>
18
chkpt_init(PSIO_OPEN_OLD);
20
mo.nmo = chkpt_rd_nmo();
21
mo.nso = chkpt_rd_nso();
22
mo.nirreps = chkpt_rd_nirreps();
23
mo.irreplabels = chkpt_rd_irr_labs();
25
mo.mopi = chkpt_rd_orbspi();
26
mo.doccpi = chkpt_rd_clsdpi();
28
mo.Enuc = chkpt_rd_enuc();
29
mo.Escf = chkpt_rd_escf();
30
mo.scfevals = chkpt_rd_evals();
32
mo.fzdoccpi = get_frzcpi();
33
mo.fzvirtpi = get_frzvpi();
39
for (i=0; i<mo.nirreps; i++) {
40
mo.nfzdocc += mo.fzdoccpi[i];
41
mo.nfzvirt += mo.fzvirtpi[i];
44
mo.virtpi = init_int_array(mo.nirreps);
45
for(i=0; i < mo.nirreps; i++) {
46
mo.virtpi[i] = mo.mopi[i]-mo.doccpi[i];
51
for(i=0; i < mo.nirreps; i++) {
52
mo.ndocc += mo.doccpi[i];
53
mo.nvirt += mo.mopi[i] - mo.doccpi[i];
56
mo.actdoccpi = init_int_array(mo.nirreps);
57
mo.actvirtpi = init_int_array(mo.nirreps);
58
for(i=0; i < mo.nirreps; i++) {
59
mo.actdoccpi[i] = mo.doccpi[i]-mo.fzdoccpi[i];
60
mo.actvirtpi[i] = mo.virtpi[i]-mo.fzvirtpi[i];
65
for (i=0; i < mo.nirreps; i++) {
66
mo.nactdocc += mo.actdoccpi[i];
67
mo.nactvirt += mo.actvirtpi[i];
70
mo.nactmo = mo.nactdocc + mo.nactvirt;
72
mo.actdoccsym = init_int_array(mo.nactmo);
73
mo.actvirtsym = init_int_array(mo.nactmo);
74
psio_read_entry(CC_INFO, "Active Occ Orb Symmetry",
75
(char *) mo.actdoccsym, sizeof(int)*mo.nactmo);
76
psio_read_entry(CC_INFO, "Active Virt Orb Symmetry",
77
(char *) mo.actvirtsym, sizeof(int)*mo.nactmo);
79
mo.docc_off = init_int_array(mo.nirreps);
80
mo.virt_off = init_int_array(mo.nirreps);
81
psio_read_entry(CC_INFO, "Active Occ Orb Offsets",
82
(char *) mo.docc_off, sizeof(int)*mo.nirreps);
83
psio_read_entry(CC_INFO, "Active Virt Orb Offsets",
84
(char *) mo.virt_off, sizeof(int)*mo.nirreps);
86
mo.qt_docc = init_int_array(mo.nactmo);
87
mo.qt_virt = init_int_array(mo.nactmo);
89
psio_read_entry(CC_INFO, "CC->QT Active Occ Order",
90
(char *) mo.qt_docc, sizeof(int)*mo.nactmo);
91
psio_read_entry(CC_INFO, "CC->QT Active Virt Order",
92
(char *) mo.qt_virt, sizeof(int)*mo.nactmo);
94
fprintf(outfile,"\n");
95
fprintf(outfile,"\tChkpt Parameters:\n");
96
fprintf(outfile,"\t--------------------\n");
97
fprintf(outfile,"\tNumber of irreps = %d\n",mo.nirreps);
98
fprintf(outfile,"\tNumber of MOs = %d\n",mo.nmo);
99
fprintf(outfile,"\n");
101
"\tLabel\tFZDC\tACTD\tDOCC\tACTV\tFZVI\tVIRT\tMOs\n");
103
"\t-----\t----\t----\t----\t----\t----\t----\t---\n");
104
for(i=0; i < mo.nirreps; i++) {
106
"\t %s \t %d\t %d\t %d\t %d\t %d\t %d\t %d\n",
107
mo.irreplabels[i],mo.fzdoccpi[i],mo.actdoccpi[i],mo.doccpi[i],
108
mo.actvirtpi[i],mo.fzvirtpi[i],mo.virtpi[i],mo.mopi[i]);
111
fprintf(outfile,"\n");
112
fprintf(outfile,"\tNuclear Rep. energy \t=\t %.12f\n",mo.Enuc);
113
fprintf(outfile,"\tSCF energy \t=\t%.12f\n",mo.Escf);