QMCPACK
EnergyOrder Struct Reference

comparison functor for sorting SPOInfo based on energy More...

+ Collaboration diagram for EnergyOrder:

Public Types

using RealType = QMCTraits::RealType
 

Public Member Functions

 EnergyOrder (RealType tol=1e-6)
 
 ~EnergyOrder ()
 
bool operator() (const SPOInfo *left, const SPOInfo *right)
 

Public Attributes

RealType energy_tol
 

Detailed Description

comparison functor for sorting SPOInfo based on energy

Definition at line 81 of file SPOInfo.h.

Member Typedef Documentation

◆ RealType

Definition at line 83 of file SPOInfo.h.

Constructor & Destructor Documentation

◆ EnergyOrder()

EnergyOrder ( RealType  tol = 1e-6)
inline

Definition at line 85 of file SPOInfo.h.

85 : energy_tol(tol){};

◆ ~EnergyOrder()

~EnergyOrder ( )
inline

Definition at line 86 of file SPOInfo.h.

86 {};

Member Function Documentation

◆ operator()()

bool operator() ( const SPOInfo left,
const SPOInfo right 
)
inline

Definition at line 87 of file SPOInfo.h.

References qmcplusplus::abs(), SPOInfo::energy, EnergyOrder::energy_tol, and qmcplusplus::spoinfo::index_order().

88  {
89  if (std::abs(left->energy - right->energy) < energy_tol)
90  return index_order(left, right);
91  else
92  return left->energy < right->energy;
93  }
bool index_order(const SPOInfo *left, const SPOInfo *right)
comparison function for sorting SPOInfo based on orbital index
Definition: SPOInfo.h:78
MakeReturn< UnaryNode< FnFabs, typename CreateLeaf< Vector< T1, C1 > >::Leaf_t > >::Expression_t abs(const Vector< T1, C1 > &l)

Member Data Documentation

◆ energy_tol

RealType energy_tol

Definition at line 84 of file SPOInfo.h.

Referenced by EnergyOrder::operator()().


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