amps.cc

Go to the documentation of this file.
00001 
00005 #include <libdpd/dpd.h>
00006 #define EXTERN
00007 #include "globals.h"
00008 
00009 #define PRINT_AMPS 0
00010 
00011 namespace psi{ namespace mp2{
00012 
00013 double amps(void) 
00014 {
00015   dpdfile2 tIA, tia, fIA, fia, dIA, dia;
00016   dpdbuf4 tIJAB, tijab, tIjAb, D, dIJAB, dijab, dIjAb;
00017 
00018   if(params.ref == 0) { 
00019     dpd_buf4_init(&D, CC_DINTS, 0, 0, 5, 0, 5, 0, "D <ij|ab>");
00020     dpd_buf4_copy(&D, CC_TAMPS, "tIjAb");
00021     dpd_buf4_close(&D);
00022 
00023     dpd_buf4_init(&tIjAb, CC_TAMPS, 0, 0, 5, 0, 5, 0, "tIjAb");
00024     dpd_buf4_init(&dIjAb, CC_DENOM, 0, 0, 5, 0, 5, 0, "dIjAb");
00025     dpd_buf4_dirprd(&dIjAb, &tIjAb);
00026 #if PRINT_AMPS
00027     dpd_buf4_print(&tIjAb,outfile,1);
00028 #endif
00029     dpd_buf4_close(&dIjAb);
00030     dpd_buf4_close(&tIjAb);
00031   }
00032   else if(params.ref == 2) { 
00033     if(params.semicanonical) {
00034       dpd_file2_init(&fIA, CC_OEI, 0, 0, 1, "fIA");
00035       dpd_file2_copy(&fIA, CC_OEI, "tIA");
00036       dpd_file2_close(&fIA);
00037 
00038       dpd_file2_init(&fia, CC_OEI, 0, 2, 3, "fia");
00039       dpd_file2_copy(&fia, CC_OEI, "tia");
00040       dpd_file2_close(&fia);
00041 
00042       dpd_file2_init(&tIA, CC_OEI, 0, 0, 1, "tIA");
00043       dpd_file2_init(&dIA, CC_OEI, 0, 0, 1, "dIA");
00044       dpd_file2_dirprd(&dIA, &tIA);
00045 #if PRINT_AMPS
00046     dpd_file2_print(&tIA,outfile);
00047 #endif
00048       dpd_file2_close(&tIA);
00049       dpd_file2_close(&dIA);
00050 
00051       dpd_file2_init(&tia, CC_OEI, 0, 2, 3, "tia");
00052       dpd_file2_init(&dia, CC_OEI, 0, 2, 3, "dia");
00053       dpd_file2_dirprd(&dia, &tia);
00054 #if PRINT_AMPS
00055     dpd_file2_print(&tia,outfile);
00056 #endif
00057       dpd_file2_close(&tia);
00058       dpd_file2_close(&dia);
00059     }
00060       
00061     dpd_buf4_init(&D, CC_DINTS, 0, 2, 7, 2, 7, 0, "D <IJ||AB> (I>J,A>B)");
00062     dpd_buf4_copy(&D, CC_TAMPS, "tIJAB");
00063     dpd_buf4_close(&D);
00064     dpd_buf4_init(&dIJAB, CC_DENOM, 0, 1, 6, 1, 6, 0, "dIJAB");
00065     dpd_buf4_init(&tIJAB, CC_TAMPS, 0, 2, 7, 2, 7, 0, "tIJAB");
00066     dpd_buf4_dirprd(&dIJAB, &tIJAB);
00067 #if PRINT_AMPS
00068     dpd_buf4_print(&tIJAB,outfile,1);
00069 #endif
00070     dpd_buf4_close(&tIJAB);
00071     dpd_buf4_close(&dIJAB);
00072 
00073     dpd_buf4_init(&D, CC_DINTS, 0, 12, 17, 12, 17, 0, "D <ij||ab> (i>j,a>b)");
00074     dpd_buf4_copy(&D, CC_TAMPS, "tijab");
00075     dpd_buf4_close(&D);
00076     dpd_buf4_init(&dIJAB, CC_DENOM, 0, 11, 16, 11, 16, 0, "dijab");
00077     dpd_buf4_init(&tIJAB, CC_TAMPS, 0, 12, 17, 12, 17, 0, "tijab");
00078     dpd_buf4_dirprd(&dIJAB, &tIJAB);
00079 #if PRINT_AMPS
00080     dpd_buf4_print(&tIJAB,outfile,1);
00081 #endif
00082     dpd_buf4_close(&tIJAB);
00083     dpd_buf4_close(&dIJAB);
00084 
00085     dpd_buf4_init(&D, CC_DINTS, 0, 22, 28, 22, 28, 0, "D <Ij|Ab>");
00086     dpd_buf4_copy(&D, CC_TAMPS, "tIjAb");
00087     dpd_buf4_close(&D);
00088     dpd_buf4_init(&dIJAB, CC_DENOM, 0, 22, 28, 22, 28, 0, "dIjAb");
00089     dpd_buf4_init(&tIJAB, CC_TAMPS, 0, 22, 28, 22, 28, 0, "tIjAb");
00090     dpd_buf4_dirprd(&dIJAB, &tIJAB);
00091 #if PRINT_AMPS
00092     dpd_buf4_print(&tIJAB,outfile,1);
00093 #endif
00094     dpd_buf4_close(&tIJAB);
00095     dpd_buf4_close(&dIJAB);
00096   }
00097   
00098 }
00099 
00100 }} /* End namespaces*/

Generated on Wed Feb 13 16:35:39 2008 for PSI by  doxygen 1.5.4