PSCF v1.1
Public Member Functions | List of all members
Pscf::FieldComparison< FT > Class Template Reference

Comparison of element-by-element differences between field arrays. More...

#include <FieldComparison.h>

Public Member Functions

 FieldComparison (int begin=0)
 Default constructor. More...
 
double compare (FT const &a, FT const &b)
 Compare individual fields. More...
 
double compare (DArray< FT > const &a, DArray< FT > const &b)
 Compare arrays of fields associated with different monomer types. More...
 
double maxDiff () const
 Return the precomputed maximum element-by-element difference. More...
 
double rmsDiff () const
 Return the precomputed root-mean-squared difference. More...
 

Detailed Description

template<class FT>
class Pscf::FieldComparison< FT >

Comparison of element-by-element differences between field arrays.

The template argument FT may be RField<D> for representations of a field or fields on an r-grid or DArray<double> for representation using a symmetry-adapted basis.

Definition at line 27 of file FieldComparison.h.

Constructor & Destructor Documentation

◆ FieldComparison()

template<class FT >
Pscf::FieldComparison< FT >::FieldComparison ( int  begin = 0)

Default constructor.

Initializes maxDiff and rmsDiff to zero.

Parameters
beginfirst element of array/field to compare.

Definition at line 20 of file FieldComparison.tpp.

Member Function Documentation

◆ compare() [1/2]

template<class FT >
double Pscf::FieldComparison< FT >::compare ( FT const &  a,
FT const &  b 
)

Compare individual fields.

Array dimensions must agree. An Exception is thrown if the capacities of fields a and b are not equal.

Parameters
a1st field
b2nd field
Returns
maximum element-by-element difference (maxDiff)

Definition at line 28 of file FieldComparison.tpp.

References UTIL_CHECK.

Referenced by Pscf::Pspc::System< D >::compare().

◆ compare() [2/2]

template<class FT >
double Pscf::FieldComparison< FT >::compare ( DArray< FT > const &  a,
DArray< FT > const &  b 
)

Compare arrays of fields associated with different monomer types.

All array dimensions must agree.

An exception is thrown if the capacities of the enclosing DArrays (the number of monomers) are not equal or if the capacities of any pair of individual fields (number of grid points or basis functions) are not equal.

Parameters
a1st DArray of field
b2nd DArray of field
Returns
maximum element-by-element difference (maxDiff)

Definition at line 56 of file FieldComparison.tpp.

References Util::Array< Data >::capacity(), and UTIL_CHECK.

◆ maxDiff()

template<class FT >
double Pscf::FieldComparison< FT >::maxDiff ( ) const
inline

Return the precomputed maximum element-by-element difference.

This function returns the maximum difference between corresponding field array elements found by the most recent comparison.

Definition at line 76 of file FieldComparison.h.

Referenced by Pscf::Pspc::System< D >::compare().

◆ rmsDiff()

template<class FT >
double Pscf::FieldComparison< FT >::rmsDiff ( ) const
inline

Return the precomputed root-mean-squared difference.

This function returns the root-mean-squared difference between corresponding elements found by the most recent comparison.

Definition at line 85 of file FieldComparison.h.

Referenced by Pscf::Pspc::System< D >::compare().


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