30#ifndef _chemistry_qc_basis_distshpair_h
31#define _chemistry_qc_basis_distshpair_h
33#include <util/misc/regtime.h>
34#include <util/group/message.h>
35#include <util/group/thread.h>
36#include <chemistry/qc/basis/basis.h>
48 volatile long int shellpair_;
54 void init() { shellpair_ = 0; }
67 double print_percent_;
75 long int print_interval_;
77 long int current_shellpair_;
97 void init_dynamic_work();
This is used to store data that must be shared between all cooperating shell pairs.
Definition distshpair.h:46
void init()
If this will be used to iterate through the shells again, then init must be called.
Definition distshpair.h:54
SharedData()
Construct and initialize.
Definition distshpair.h:50
Distributes shell pairs either statically or dynamically.
Definition distshpair.h:41
void init()
Resets to the first shell pair.
DistShellPair(const Ref< MessageGrp > &, int nthread, int mythread, const Ref< ThreadLock > &lock, const Ref< GaussianBasisSet > &bs1, const Ref< GaussianBasisSet > &bs2, bool dynamic, SharedData *shared=0)
The DistShellPair class is used to distribute shell pair indices among tasks.
void set_debug(int d)
How much stuff to print out.
Definition distshpair.h:110
int get_task(int &P, int &Q)
Puts the current PQ shell pair into P and Q and returns 1.
void set_print_percent(double p)
How often to print status from node 0.
A template class that maintains references counts.
Definition ref.h:361
Contains all MPQC code up to version 3.
Definition mpqcin.h:14