1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
#!/usr/bin/perl
while ($ARGV = shift) {
if ("$ARGV" eq "-q") { $QUIET = 1; }
elsif("$ARGV" eq "-i") { $SRC_PATH = shift; }
elsif("$ARGV" eq "-x") { $EXEC_PATH = shift; }
}
if($SRC_PATH ne "") {
require($SRC_PATH . "/../psitest.pl");
}
else {
require("../psitest.pl");
}
# build the command for the psi3 driver
$PSICMD = build_psi_cmd($QUIET, $SRC_PATH, $EXEC_PATH);
$TOL = 10**-8;
if($SRC_PATH ne "") {
$REF_FILE = "$SRC_PATH/output.ref";
}
else {
$REF_FILE = "output.ref";
}
$TEST_FILE = "output.dat";
$RESULT = "cc15.test";
system ("$PSICMD");
$FAIL = 0;
open(RE, ">$RESULT") || die "cannot open $RESULT $!";
select (RE);
printf "CC15:\n";
if (abs (seek_scf($REF_FILE) - seek_scf($TEST_FILE)) > $TOL) {
fail_test("SCF Energy"); $FAIL = 1;
}
else {
pass_test("SCF Energy");
}
if (abs (seek_bccd($REF_FILE) - seek_bccd($TEST_FILE)) > $TOL) {
fail_test("B-CCD Energy"); $FAIL = 1;
}
else {
pass_test("B-CCD Energy");
}
if (abs (seek_ccsd_t($REF_FILE) - seek_ccsd_t($TEST_FILE)) > $TOL) {
fail_test("B-CCD(T) Energy"); $FAIL = 1;
}
else {
pass_test("B-CCD(T) Energy");
}
close (RE);
system("cat $RESULT");
exit($FAIL);
|