MPQC
3.0.0-alpha
hsosv1e1.h
1
//
2
// hsosv1e1.h
3
// based on csgrade12.h
4
//
5
// Copyright (C) 1996 Limit Point Systems, Inc.
6
//
7
// Author: Ida Nielsen <ida@kemi.aau.dk>
8
// Maintainer: LPS
9
//
10
// This file is part of the SC Toolkit.
11
//
12
// The SC Toolkit is free software; you can redistribute it and/or modify
13
// it under the terms of the GNU Library General Public License as published by
14
// the Free Software Foundation; either version 2, or (at your option)
15
// any later version.
16
//
17
// The SC Toolkit is distributed in the hope that it will be useful,
18
// but WITHOUT ANY WARRANTY; without even the implied warranty of
19
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20
// GNU Library General Public License for more details.
21
//
22
// You should have received a copy of the GNU Library General Public License
23
// along with the SC Toolkit; see the file COPYING.LIB. If not, write to
24
// the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
25
//
26
// The U.S. Government is granted a limited license as per AL 91-7.
27
//
28
29
#ifndef _chemistry_qc_mbpt_hsosv1e1_h
30
#define _chemistry_qc_mbpt_hsosv1e1_h
31
32
#include <util/misc/regtime.h>
33
#include <util/group/memory.h>
34
#include <util/group/thread.h>
35
#include <chemistry/qc/basis/integral.h>
36
37
namespace
sc
{
38
39
class
HSOSV1Erep1Qtr
:
public
Thread
{
40
private
:
41
int
mythread;
42
int
nthread;
43
int
me;
44
int
nproc;
45
Ref<RegionTimer>
timer;
46
Ref<ThreadLock>
lock;
47
Ref<GaussianBasisSet>
basis;
48
Ref<TwoBodyInt>
tbint;
49
int
ni,i_offset;
50
double
**scf_vector;
51
double
tol;
52
int
debug;
53
54
double
*trans_int1;
55
double
aoint_computed_;
56
int
nfuncmax;
57
int
nbasis;
58
int
nshell;
59
60
int
R,S,nr,ns;
61
public
:
62
HSOSV1Erep1Qtr
(
int
mythread_a,
int
nthread_a,
63
int
me_a,
int
nproc_a,
64
const
Ref<ThreadLock>
&lock_a,
65
const
Ref<GaussianBasisSet>
&basis_a,
66
const
Ref<TwoBodyInt>
&tbint_a,
67
int
ni_a,
double
**scf_vector_a,
68
double
tol_a,
int
debug_a);
69
~
HSOSV1Erep1Qtr
();
70
71
void
run
();
72
73
void
accum_buffer(
double
*buffer);
74
void
set_data(
int
R_a,
int
nr_a,
int
S_a,
int
ns_a,
int
ni_a,
int
ioffset_a);
75
double
aoint_computed() {
return
aoint_computed_; }
76
};
77
78
}
79
80
#endif
81
82
// //////////////////////////////////////////////////////////////////////////
83
84
// Local Variables:
85
// mode: c++
86
// c-file-style: "CLJ-CONDENSED"
87
// End:
sc::HSOSV1Erep1Qtr::run
void run()
This is called with the Thread is run from a ThreadGrp.
sc::Ref
A template class that maintains references counts.
Definition:
ref.h:361
sc::Thread
The Thread abstract class defines an interface which must be implemented by classes wishing to be run...
Definition:
thread.h:75
sc::HSOSV1Erep1Qtr
Definition:
hsosv1e1.h:39
sc
Contains all MPQC code up to version 3.
Definition:
mpqcin.h:14
Generated at Sun Jan 26 2020 23:23:58 for
MPQC
3.0.0-alpha using the documentation package
Doxygen
1.8.16.