28 #ifndef _chemistry_qc_mbptr12_distarray4_node0file_h
29 #define _chemistry_qc_mbptr12_distarray4_node0file_h
32 #include <util/ref/ref.h>
33 #include <util/group/memory.h>
34 #include <util/misc/registry.h>
35 #include <math/distarray4/distarray4.h>
64 mutable double* ints_[max_num_te_types];
65 mutable bool manage_[max_num_te_types];
66 mutable int refcount_[max_num_te_types];
69 PairBlkInfo* pairblk_;
72 void init(
bool restart);
74 void check_filedescr_();
76 int ij_proc(
int i,
int j)
const {
return 0;};
80 DistArray4Storage
storage = DistArray4Storage_XY);
96 int xstart,
int xfence,
int ystart,
int yfence,
100 int xstart,
int xfence,
int ystart,
int yfence,
int nj() const
Rank of index space j.
Definition: distarray4.h:116
Ref< DistArray4 > clone(const DistArray4Dimensions &dim=DistArray4Dimensions::default_dim())
how to clone.
void retrieve_pair_subblock(int i, int j, tbint_type oper_type, int xstart, int xfence, int ystart, int yfence, double *buf) const
Retrieves a rectangular subblock of ij block of integrals.
DistArray4 contains a set of one or more distributed dense 4-index arrays.
Definition: distarray4.h:94
int num_te_types() const
The number of types of integrals that are being handled together.
Definition: distarray4.h:112
void store_pair_block(int i, int j, tbint_type oper_type, const double *ints)
Stores an ij pair block of integrals.
A template class that maintains references counts.
Definition: ref.h:361
bool has_access(int proc) const
Does this task have access to all the integrals?
Definition: distarray4_node0file.h:110
int me() const
rank of this task
Definition: distarray4.h:200
void save_data_state(StateOut &)
Save the base classes (with save_data_state) and the members in the same order that the StateIn CTOR ...
int ny() const
Rank of index space y.
Definition: distarray4.h:120
void store_pair_subblock(int i, int j, tbint_type oper_type, int xstart, int xfence, int ystart, int yfence, const double *ints)
Stores an rectangular subblock of ij block of integrals.
void deactivate()
implementation of DistArray4::deactivate()
const double * retrieve_pair_block(int i, int j, tbint_type oper_type, double *buf=0) const
Retrieves an ij block of integrals.
const DistArray4Storage & storage() const
physical storage of the integrals. The default storage is XY. Storage is not mutable.
Definition: distarray4.h:122
bool is_avail(int i, int j) const
In this implementation blocks are available only on node 0.
Definition: distarray4_node0file.h:108
void activate()
implementation of DistArray4::activate()
Definition: stateout.h:71
void release_pair_block(int i, int j, tbint_type oper_type) const
Releases an ij pair block of integrals.
bool is_local(int i, int j) const
Is this block stored locally?
Definition: distarray4_node0file.h:106
int ni() const
Rank of index space i.
Definition: distarray4.h:114
unsigned int tbint_type
Types of two-body operators that DistArray4 understands.
Definition: distarray4.h:108
Definition: distarray4.h:43
int nx() const
Rank of index space x.
Definition: distarray4.h:118
bool data_persistent() const
implementation of DistArray4::data_persistent()
Definition: distarray4_node0file.h:92
Contains all MPQC code up to version 3.
Definition: mpqcin.h:14
DistArray4_Node0File handles transformed integrals stored in file on node 0 (file is a usual POSIX bi...
Definition: distarray4_node0file.h:52
Registry wraps std::map and can be policy-configured to act as a Singleton or a regular object.
Definition: registry.h:112
Generated at Sun Jan 26 2020 23:24:00 for MPQC
3.0.0-alpha using the documentation package Doxygen
1.8.16.