Teuchos Package Browser (Single Doxygen Collection)  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | List of all members
Teuchos::details::GivensRotator< ScalarType, false > Class Template Reference

#include <Teuchos_BLAS.hpp>

Public Types

typedef ScalarType c_type

Public Member Functions

void ROTG (ScalarType *da, ScalarType *db, ScalarType *c, ScalarType *s) const
ScalarType SIGN (const ScalarType &x, const ScalarType &y) const

Detailed Description

template<typename ScalarType>
class Teuchos::details::GivensRotator< ScalarType, false >

Definition at line 318 of file Teuchos_BLAS.hpp.

Member Typedef Documentation

template<typename ScalarType >
typedef ScalarType Teuchos::details::GivensRotator< ScalarType, false >::c_type

Definition at line 320 of file Teuchos_BLAS.hpp.

Member Function Documentation

template<typename ScalarType >
void Teuchos::details::GivensRotator< ScalarType, false >::ROTG ( ScalarType *  da,
ScalarType *  db,
ScalarType *  c,
ScalarType *  s 
) const

Definition at line 430 of file Teuchos_BLAS.hpp.

template<typename ScalarType >
ScalarType Teuchos::details::GivensRotator< ScalarType, false >::SIGN ( const ScalarType &  x,
const ScalarType &  y 
) const

Return ABS(x) if y > 0 or y is +0, else -ABS(x) (if y is -0 or < 0).

Note that SIGN respects IEEE 754 floating-point signed zero. This is a hopefully correct implementation of the Fortran type-generic SIGN intrinsic. ROTG for complex arithmetic doesn't require this function. C99 provides a copysign() math library function, but we are not able to rely on the existence of C99 functions here.

We provide this method on purpose only for the real-arithmetic specialization of GivensRotator. Complex numbers don't have a sign; they have an angle.

Definition at line 339 of file Teuchos_BLAS.hpp.

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