MPQC  3.0.0-alpha
sc::SpatialMOPairIter_eq Class Reference

SpatialMOPairIter_eq gives the ordering of same-spin and different-spin orbital pairs if both orbitals of the pairs are from the same space. More...

#include <math/mmisc/pairiter.h>

Inheritance diagram for sc::SpatialMOPairIter_eq:
sc::SpatialMOPairIter sc::MOPairIter sc::RefCount

Public Member Functions

 SpatialMOPairIter_eq (unsigned int n)
 Initialize an iterator for the given MO spaces.
 
void start (const int ij_offset=0)
 Initialize the iterator assuming that iteration will start with pair ij_offset.
 
void next ()
 Move to the next pair.
 
 operator int () const
 Returns nonzero if the iterator currently hold valid data.
 
int nij_aa () const
 Returns the number of functions in alpha-alpha space.
 
int nij_ab () const
 Returns the number of functions in alpha-beta space.
 
int ij_aa () const
 Returns compound index ij for alpha-alpha case. More...
 
int ij_ab () const
 Returns compound index ij for alpha-beta case.
 
int ij_ba () const
 Returns compound index ij for beta-alpha case.
 
- Public Member Functions inherited from sc::SpatialMOPairIter
 SpatialMOPairIter (unsigned int n_i, unsigned int n_j)
 Initialize a spatial pair iterator for the given MO spaces.
 
- Public Member Functions inherited from sc::MOPairIter
 MOPairIter (unsigned int n_i, unsigned int n_j)
 Initialize an iterator for the MO space dimensions.
 
int ni () const
 Returns the number of functions in space i.
 
int nj () const
 Returns the number of functions in space j.
 
int i () const
 Returns index i.
 
int j () const
 Returns index j.
 
int nij () const
 Returns the number of pair combinations for this iterator.
 
int ij () const
 Returns the current iteration.
 
- Public Member Functions inherited from sc::RefCount
size_t identifier () const
 Return the unique identifier for this object that can be compared for different objects of different types. More...
 
int lock_ptr () const
 Lock this object.
 
int unlock_ptr () const
 Unlock this object.
 
void use_locks (bool inVal)
 start and stop using locks on this object
 
refcount_t nreference () const
 Return the reference count.
 
refcount_t reference ()
 Increment the reference count and return the new count.
 
refcount_t dereference ()
 Decrement the reference count and return the new count.
 
int managed () const
 
void unmanage ()
 Turn off the reference counting mechanism for this object. More...
 

Additional Inherited Members

- Protected Member Functions inherited from sc::MOPairIter
int classdebug () const
 
- Protected Member Functions inherited from sc::RefCount
 RefCount (const RefCount &)
 
RefCountoperator= (const RefCount &)
 
- Protected Attributes inherited from sc::MOPairIter
bool i_eq_j_
 
int ni_
 
int nj_
 
int i_
 
int j_
 
int nij_
 
int ij_
 

Detailed Description

SpatialMOPairIter_eq gives the ordering of same-spin and different-spin orbital pairs if both orbitals of the pairs are from the same space.

It iterates over all i >= j combinations (total of (ni_+1)*(ni_+2)/2 pairs).

Member Function Documentation

◆ ij_aa()

int sc::SpatialMOPairIter_eq::ij_aa ( ) const
inlinevirtual

Returns compound index ij for alpha-alpha case.

The i == j combination doesn't make sense, so ij_aa() will return -1 for such pairs.

Implements sc::SpatialMOPairIter.


The documentation for this class was generated from the following file:

Generated at Sun Jan 26 2020 23:24:12 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.8.16.