~ubuntu-branches/ubuntu/quantal/psicode/quantal

« back to all changes in this revision

Viewing changes to src/bin/ccenergy/sort_amps.c

  • Committer: Bazaar Package Importer
  • Author(s): Michael Banck
  • Date: 2006-09-10 14:01:33 UTC
  • Revision ID: james.westby@ubuntu.com-20060910140133-ib2j86trekykfsfv
Tags: upstream-3.2.3
ImportĀ upstreamĀ versionĀ 3.2.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#include <stdio.h>
 
2
#include <stdlib.h>
 
3
#include <libdpd/dpd.h>
 
4
#include <libqt/qt.h>
 
5
#define EXTERN
 
6
#include "globals.h"
 
7
 
 
8
void sort_amps(void)
 
9
{
 
10
  dpdbuf4 t2, t2B;
 
11
 
 
12
  if(params.ref == 0) { /** RHF **/
 
13
    /* T(iJ,aB) */
 
14
    dpd_buf4_init(&t2, CC_TAMPS, 0, 0, 5, 0, 5, 0, "tIjAb");
 
15
    dpd_buf4_sort(&t2, CC_TAMPS, qpsr, 0, 5, "tiJaB");
 
16
    dpd_buf4_close(&t2);
 
17
 
 
18
    /* TIjAb (IA,jb) */
 
19
    dpd_buf4_init(&t2, CC_TAMPS, 0, 0, 5, 0, 5, 0, "tIjAb");
 
20
    dpd_buf4_sort(&t2, CC_TAMPS, prqs, 10, 10, "tIAjb");
 
21
    dpd_buf4_close(&t2);
 
22
 
 
23
    /* TIjAb (ij,JB) */
 
24
    dpd_buf4_init(&t2, CC_TAMPS, 0, 10, 10, 10, 10, 0, "tIAjb");
 
25
    dpd_buf4_sort(&t2, CC_TAMPS, rspq, 10, 10, "tiaJB");
 
26
    dpd_buf4_close(&t2);
 
27
 
 
28
    /* TIjAb (Ib,jA) */
 
29
    dpd_buf4_init(&t2, CC_TAMPS, 0, 10, 10, 10, 10, 0, "tIAjb");
 
30
    dpd_buf4_sort(&t2, CC_TAMPS, psrq, 10, 10, "tIbjA");
 
31
    dpd_buf4_close(&t2);
 
32
 
 
33
    /* TIjAb (jA,Ib) */
 
34
    dpd_buf4_init(&t2, CC_TAMPS, 0, 10, 10, 10, 10, 0, "tIbjA");
 
35
    dpd_buf4_sort(&t2, CC_TAMPS, rspq, 10, 10, "tjAIb");
 
36
    dpd_buf4_close(&t2);
 
37
 
 
38
    /* 2 T(IA,jb) - t(IB,ja) */
 
39
    dpd_buf4_init(&t2, CC_TAMPS, 0, 10, 10, 10, 10, 0, "tIAjb");
 
40
    dpd_buf4_scmcopy(&t2, CC_TAMPS, "2 tIAjb - tIBja", 2);
 
41
    dpd_buf4_close(&t2);
 
42
    dpd_buf4_init(&t2, CC_TAMPS, 0, 10, 10, 10, 10, 0, "2 tIAjb - tIBja");
 
43
    dpd_buf4_init(&t2B, CC_TAMPS, 0, 10, 10, 10, 10, 0, "tIbjA");
 
44
    dpd_buf4_axpy(&t2B, &t2, -1);
 
45
    dpd_buf4_close(&t2B);
 
46
    dpd_buf4_close(&t2);
 
47
 
 
48
  }
 
49
  else if(params.ref == 1) { /** ROHF **/
 
50
    /* T(iJ,aB) */
 
51
    dpd_buf4_init(&t2, CC_TAMPS, 0, 0, 5, 0, 5, 0, "tIjAb");
 
52
    dpd_buf4_sort(&t2, CC_TAMPS, qpsr, 0, 5, "tiJaB");
 
53
    dpd_buf4_close(&t2);
 
54
 
 
55
    /* TIJAB (IA,JB) */
 
56
    dpd_buf4_init(&t2, CC_TAMPS, 0, 0, 5, 2, 7, 0, "tIJAB");
 
57
    dpd_buf4_sort(&t2, CC_TAMPS, prqs, 10, 10, "tIAJB");
 
58
    dpd_buf4_close(&t2);
 
59
 
 
60
    /* Tijab (ia,jb) */
 
61
    dpd_buf4_init(&t2, CC_TAMPS, 0, 0, 5, 2, 7, 0, "tijab");
 
62
    dpd_buf4_sort(&t2, CC_TAMPS, prqs, 10, 10, "tiajb");
 
63
    dpd_buf4_close(&t2);
 
64
 
 
65
    /* TIjAb (IA,jb) */
 
66
    dpd_buf4_init(&t2, CC_TAMPS, 0, 0, 5, 0, 5, 0, "tIjAb");
 
67
    dpd_buf4_sort(&t2, CC_TAMPS, prqs, 10, 10, "tIAjb");
 
68
    dpd_buf4_close(&t2);
 
69
 
 
70
    /* TIjAb (ij,JB) */
 
71
    dpd_buf4_init(&t2, CC_TAMPS, 0, 10, 10, 10, 10, 0, "tIAjb");
 
72
    dpd_buf4_sort(&t2, CC_TAMPS, rspq, 10, 10, "tiaJB");
 
73
    dpd_buf4_close(&t2);
 
74
 
 
75
    /* TIjAb (Ib,jA) */
 
76
    dpd_buf4_init(&t2, CC_TAMPS, 0, 10, 10, 10, 10, 0, "tIAjb");
 
77
    dpd_buf4_sort(&t2, CC_TAMPS, psrq, 10, 10, "tIbjA");
 
78
    dpd_buf4_close(&t2);
 
79
    /* TIjAb (jA,Ib) */
 
80
    dpd_buf4_init(&t2, CC_TAMPS, 0, 10, 10, 10, 10, 0, "tIbjA");
 
81
    dpd_buf4_sort(&t2, CC_TAMPS, rspq, 10, 10, "tjAIb");
 
82
    dpd_buf4_close(&t2);
 
83
  }
 
84
  else if(params.ref == 2) { /*** UHF ***/
 
85
 
 
86
    /* TIJAB (IA,JB) */
 
87
    dpd_buf4_init(&t2, CC_TAMPS, 0, 0, 5, 2, 7, 0, "tIJAB");
 
88
    dpd_buf4_sort(&t2, CC_TAMPS, prqs, 20, 20, "tIAJB");
 
89
    dpd_buf4_close(&t2);
 
90
 
 
91
    /* Tijab (ia,jb) */
 
92
    dpd_buf4_init(&t2, CC_TAMPS, 0, 10, 15, 12, 17, 0, "tijab");
 
93
    dpd_buf4_sort(&t2, CC_TAMPS, prqs, 30, 30, "tiajb");
 
94
    dpd_buf4_close(&t2);
 
95
 
 
96
    /* TIjAb (IA,jb) */
 
97
    dpd_buf4_init(&t2, CC_TAMPS, 0, 22, 28, 22, 28, 0, "tIjAb");
 
98
    dpd_buf4_sort(&t2, CC_TAMPS, prqs, 20, 30, "tIAjb");
 
99
    dpd_buf4_close(&t2);
 
100
 
 
101
    dpd_buf4_init(&t2, CC_TAMPS, 0, 20, 30, 20, 30, 0, "tIAjb");
 
102
    /* TIjAb (jb,IA) */
 
103
    dpd_buf4_sort(&t2, CC_TAMPS, rspq, 30, 20, "tiaJB");
 
104
    /* TIjAb (Ib,jA) (Wmbej.c) */
 
105
    dpd_buf4_sort(&t2, CC_TAMPS, psrq, 24, 27, "tIbjA");
 
106
    dpd_buf4_close(&t2);
 
107
 
 
108
    /* TiJaB (iB,Ja) (Wmbej.c) */
 
109
    dpd_buf4_init(&t2, CC_TAMPS, 0, 24, 27, 24, 27, 0, "tIbjA");
 
110
    dpd_buf4_sort(&t2, CC_TAMPS, rspq, 27, 24, "tiBJa");
 
111
    dpd_buf4_close(&t2);
 
112
 
 
113
    /* T(iJ,aB) */
 
114
    dpd_buf4_init(&t2, CC_TAMPS, 0, 22, 28, 22, 28, 0, "tIjAb");
 
115
    dpd_buf4_sort(&t2, CC_TAMPS, qpsr, 23, 29, "tiJaB");
 
116
    dpd_buf4_close(&t2);
 
117
 
 
118
  }
 
119
}