MPQC
2.3.1
Main Page
Related Pages
Classes
Files
File List
src
lib
chemistry
qc
mbptr12
transform_ikjy.h
1
//
2
// transform_ikjy.h
3
//
4
// Copyright (C) 2004 Edward Valeev
5
//
6
// Author: Edward Valeev <edward.valeev@chemistry.gatech.edu>
7
// Maintainer: EV
8
//
9
// This file is part of the SC Toolkit.
10
//
11
// The SC Toolkit is free software; you can redistribute it and/or modify
12
// it under the terms of the GNU Library General Public License as published by
13
// the Free Software Foundation; either version 2, or (at your option)
14
// any later version.
15
//
16
// The SC Toolkit 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 Library General Public License for more details.
20
//
21
// You should have received a copy of the GNU Library General Public License
22
// along with the SC Toolkit; see the file COPYING.LIB. If not, write to
23
// the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
24
//
25
// The U.S. Government is granted a limited license as per AL 91-7.
26
//
27
28
#ifdef __GNUG__
29
#pragma interface
30
#endif
31
32
#ifndef _chemistry_qc_mbptr12_transformikjy_h
33
#define _chemistry_qc_mbptr12_transformikjy_h
34
35
#include <string>
36
#include <util/ref/ref.h>
37
#include <util/class/scexception.h>
38
#include <chemistry/qc/mbptr12/transform_tbint.h>
39
40
using namespace
std;
41
42
namespace
sc {
43
47
class
TwoBodyMOIntsTransform_ikjy
:
public
TwoBodyMOIntsTransform
{
48
49
// Initialize the MO integrals accumulator
50
void
init_acc();
51
// Compute required dynamic memory for a given batch size
52
distsize_t
compute_transform_dynamic_memory_(
int
ni)
const
;
53
54
public
:
55
56
TwoBodyMOIntsTransform_ikjy
(
StateIn
&);
57
TwoBodyMOIntsTransform_ikjy
(
const
std::string& name,
const
Ref<MOIntsTransformFactory>
& factory,
58
const
Ref<MOIndexSpace>
& space1,
const
Ref<MOIndexSpace>
& space2,
59
const
Ref<MOIndexSpace>
& space3,
const
Ref<MOIndexSpace>
& space4);
60
~
TwoBodyMOIntsTransform_ikjy
();
61
62
void
save_data_state(
StateOut
&);
63
65
std::string
type
()
const
{
return
"ikjy"
; }
68
const
size_t
memgrp_blksize()
const
;
69
71
void
compute();
73
void
check_int_symm(
double
threshold = TwoBodyMOIntsTransform::zero_integral)
const
throw (
ProgrammingError
);
74
};
75
76
}
77
78
#endif
79
80
// Local Variables:
81
// mode: c++
82
// c-file-style: "CLJ"
83
// End:
84
85
Generated at Mon Sep 9 2013 03:17:33 for
MPQC
2.3.1 using the documentation package
Doxygen
1.8.3.1.