Thyra  Version of the Day
Thyra::ReductionFunctional< Scalar > Class Template Referenceabstract

A general reduction functional to be used in specialized solve convergence criteria. More...

`#include <Thyra_SolveSupportTypes.hpp>`

Inheritance diagram for Thyra::ReductionFunctional< Scalar >:
[legend]

## Public non-virtual functions.

ScalarTraits< Scalar >
::magnitudeType
reduce (const VectorBase< Scalar > &v) const
Compute the reduction over a vector. More...

bool isCompatible (const VectorBase< Scalar > &v) const
Returns `true` if `v` is compatible with `*this`. More...

## Protected virtual functions.

virtual ScalarTraits< Scalar >
::magnitudeType
reduceImpl (const VectorBase< Scalar > &v) const =0

virtual bool isCompatibleImpl (const VectorBase< Scalar > &v) const =0

## Detailed Description

### template<class Scalar> class Thyra::ReductionFunctional< Scalar >

A general reduction functional to be used in specialized solve convergence criteria.

Definition at line 161 of file Thyra_SolveSupportTypes.hpp.

## Member Function Documentation

template<class Scalar >
 ScalarTraits::magnitudeType Thyra::ReductionFunctional< Scalar >::reduce ( const VectorBase< Scalar > & v ) const
inline

Compute the reduction over a vector.

Parameters
 v [in] The vector being reduced into a Scalar.

Preconditions:

• `this->isCompatible(v) == true`

Definition at line 176 of file Thyra_SolveSupportTypes.hpp.

template<class Scalar >
 bool Thyra::ReductionFunctional< Scalar >::isCompatible ( const VectorBase< Scalar > & v ) const
inline

Returns `true` if `v` is compatible with `*this`.

Definition at line 189 of file Thyra_SolveSupportTypes.hpp.

template<class Scalar >
 virtual ScalarTraits::magnitudeType Thyra::ReductionFunctional< Scalar >::reduceImpl ( const VectorBase< Scalar > & v ) const
protectedpure virtual

template<class Scalar >
 virtual bool Thyra::ReductionFunctional< Scalar >::isCompatibleImpl ( const VectorBase< Scalar > & v ) const
protectedpure virtual

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