MPQC 3.0.0-alpha
Loading...
Searching...
No Matches
transform_13inds.h
1//
2// transform_13inds.h
3//
4// Copyright (C) 2004 Edward Valeev
5//
6// Author: Edward Valeev <evaleev@vt.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#ifndef _chemistry_qc_mbpt_transform13inds_h
29#define _chemistry_qc_mbpt_transform13inds_h
30
31#include <util/misc/regtime.h>
32#include <util/group/memory.h>
33#include <util/group/thread.h>
34#include <chemistry/qc/basis/integral.h>
35#include <chemistry/qc/lcao/transform_tbint.h>
36
37namespace sc {
38
39#define PRINT_BIGGEST_INTS 0
40
42
44 Ref<TwoBodyInt> tbint_;
45 Ref<ThreadLock> lock_;
46 Ref<RegionTimer> timer_;
47
48 int mythread_;
49 int nthread_;
50 int ni_; // Number of i-indices handled in each pass
51 int i_offset_; // first i-index handled in this pass
52
53 double tol_;
54 int debug_;
55
56 int aoint_computed_;
57
58 public:
60 int mythread, int nthread, const Ref<ThreadLock>& lock, const Ref<TwoBodyInt> &tbint,
61 double tol, int debug);
63
64 void set_i_offset(const int ioff) { i_offset_ = ioff; }
65 void set_ni(const int nivalue) { ni_ = nivalue; }
66
67 void run();
68
71 int ibatchsize);
72};
73
74}
75
76#endif
77
78// //////////////////////////////////////////////////////////////////////////
79
80// Local Variables:
81// mode: c++
82// c-file-style: "CLJ-CONDENSED"
83// End:
A template class that maintains references counts.
Definition ref.h:361
The Thread abstract class defines an interface which must be implemented by classes wishing to be run...
Definition thread.h:75
Definition transform_13inds.h:41
static size_t compute_required_dynamic_memory(const TwoBodyMOIntsTransform &tform, int ibatchsize)
computes how much memory will be allocated via new or similar means (MemoryGrp::malloc_local())
void run()
This is called with the Thread is run from a ThreadGrp.
TwoBodyMOIntsTransform computes two-body integrals in MO basis using parallel integrals-direct AO->MO...
Definition transform_tbint.h:49
Contains all MPQC code up to version 3.
Definition mpqcin.h:14

Generated at Wed Sep 25 2024 02:45:29 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.12.0.