Chroma::BiCGStabKernels Namespace Reference


Classes

struct  ord_xymz_normx_arg
struct  ord_yxpaymabz_arg
struct  ord_norm2x_cdotxy_arg
struct  ord_xpaypbz_arg
struct  ord_xmay_normx_cdotzx_arg
struct  ord_cxmayf_arg
struct  ib_zvupdates_arg
struct  ib_rxupdate_arg
struct  ib_stupdate_arg

Functions

void initKernels ()
void finishKernels ()
template<typename T>
void xymz_normx (T &x, const T &y, const T &z, Double &x_norm, const Subset &s)
template<typename T, typename C>
void yxpaymabz (T &x, T &y, T &z, const C &a, const C &b, const Subset &s)
template<typename T>
void norm2x_cdotxy (const T &x, const T &y, Double &norm2x, DComplex &cdotxy, const Subset &s)
template<typename T, typename C>
void xpaypbz (T &x, T &y, T &z, C &a, C &b, const Subset &s)
template<typename T, typename C>
void xmay_normx_cdotzx (T &x, const T &y, const T &z, C &a, Double &normx, DComplex &cdotzx, const Subset &s)
template<typename T, typename C>
void cxmay (T &x, const T &y, const C &a, const Subset &s)
template<typename T, typename C>
void ibicgstab_zvupdates (const T &r, T &z, T &v, const T &u, const T &q, const C &alpha, const C &alpha_rat_beta, const C &alpha_delta, const C &beta, const C &delta, const Subset &s)
template<typename T, typename C, typename F>
void ibicgstab_stupdates_reduces (const C &alpha, const T &r, const T &u, const T &v, const T &q, const T &r0, const T &f0, T &s, T &t, C &phi, C &pi, C &gamma, C &eta, C &theta, F &kappa, F &rnorm, const Subset &sub)
template<typename T, typename C>
void ibicgstab_rxupdate (const C &omega, const T &s, const T &t, const T &z, T &r, T &x, const Subset &sub)
void initScalarSiteKernels ()
void finishScalarSiteKernels ()
REAL64 * getNormSpace ()
template<>
void xymz_normx (LatticeDiracFermionD &x, const LatticeDiracFermionD &y, const LatticeDiracFermionD &z, Double &x_norm, const Subset &s)
template<>
void yxpaymabz (LatticeDiracFermionF &x, LatticeDiracFermionF &y, LatticeDiracFermionF &z, const ComplexF &a, const ComplexF &b, const Subset &s)
template<>
void norm2x_cdotxy (const LatticeDiracFermionF &x, const LatticeDiracFermionF &y, Double &norm2x, DComplex &cdotxy, const Subset &s)
template<>
void xpaypbz (LatticeDiracFermionF &x, LatticeDiracFermionF &y, LatticeDiracFermionF &z, ComplexF &a, ComplexF &b, const Subset &s)
template<>
void xmay_normx_cdotzx (LatticeDiracFermionF &x, const LatticeDiracFermionF &y, const LatticeDiracFermionF &z, ComplexF &a, Double &normx, DComplex &cdotzx, const Subset &s)
template<>
void cxmay (LatticeDiracFermionF &x, const LatticeDiracFermionF &y, const ComplexF &a, const Subset &s)
template<>
void ibicgstab_zvupdates (const LatticeDiracFermionF3 &r, LatticeDiracFermionF3 &z, LatticeDiracFermionF3 &v, const LatticeDiracFermionF3 &u, const LatticeDiracFermionF3 &q, const ComplexD &alpha, const ComplexD &alpha_rat_beta, const ComplexD &alpha_delta, const ComplexD &beta, const ComplexD &delta, const Subset &sub)
template<>
void ibicgstab_zvupdates (const LatticeDiracFermionD3 &r, LatticeDiracFermionD3 &z, LatticeDiracFermionD3 &v, const LatticeDiracFermionD3 &u, const LatticeDiracFermionD3 &q, const ComplexD &alpha, const ComplexD &alpha_rat_beta, const ComplexD &alpha_delta, const ComplexD &beta, const ComplexD &delta, const Subset &sub)
template<>
void ibicgstab_rxupdate (const ComplexD &omega, const LatticeDiracFermionF3 &s, const LatticeDiracFermionF3 &t, const LatticeDiracFermionF3 &z, LatticeDiracFermionF3 &r, LatticeDiracFermionF3 &x, const Subset &sub)
template<>
void ibicgstab_rxupdate (const ComplexD &omega, const LatticeDiracFermionD3 &s, const LatticeDiracFermionD3 &t, const LatticeDiracFermionD3 &z, LatticeDiracFermionD3 &r, LatticeDiracFermionD3 &x, const Subset &sub)
template<>
void ibicgstab_stupdates_reduces (const ComplexD &alpha, const LatticeDiracFermionF3 &r, const LatticeDiracFermionF3 &u, const LatticeDiracFermionF3 &v, const LatticeDiracFermionF3 &q, const LatticeDiracFermionF3 &r0, const LatticeDiracFermionF3 &f0, LatticeDiracFermionF3 &s, LatticeDiracFermionF3 &t, ComplexD &phi, ComplexD &pi, ComplexD &gamma, ComplexD &eta, ComplexD &theta, Double &kappa, Double &rnorm, const Subset &sub)
template<>
void ibicgstab_stupdates_reduces (const ComplexD &alpha, const LatticeDiracFermionD3 &r, const LatticeDiracFermionD3 &u, const LatticeDiracFermionD3 &v, const LatticeDiracFermionD3 &q, const LatticeDiracFermionD3 &r0, const LatticeDiracFermionD3 &f0, LatticeDiracFermionD3 &s, LatticeDiracFermionD3 &t, ComplexD &phi, ComplexD &pi, ComplexD &gamma, ComplexD &eta, ComplexD &theta, Double &kappa, Double &rnorm, const Subset &sub)

Variables

REAL64 * _reduction_space
REAL64 * _reduction_space_un


Function Documentation

void Chroma::BiCGStabKernels::initKernels (  )  [inline]

Definition at line 20 of file bicgstab_kernels.h.

References initScalarSiteKernels().

Referenced by Chroma::InvIBiCGStab_a(), Chroma::RelInvBiCGStab_a(), and Chroma::RelInvIBiCGStab_a().

void Chroma::BiCGStabKernels::finishKernels (  )  [inline]

Definition at line 31 of file bicgstab_kernels.h.

References finishScalarSiteKernels().

Referenced by Chroma::InvIBiCGStab_a(), Chroma::RelInvBiCGStab_a(), and Chroma::RelInvIBiCGStab_a().

template<typename T>
void Chroma::BiCGStabKernels::xymz_normx ( T x,
const T y,
const T z,
Double &  x_norm,
const Subset &  s 
)

Definition at line 15 of file bicgstab_kernels_naive.h.

Referenced by Chroma::RelInvBiCGStab_a(), and Chroma::RelInvIBiCGStab_a().

template<typename T, typename C>
void Chroma::BiCGStabKernels::yxpaymabz ( T x,
T y,
T z,
const C &  a,
const C &  b,
const Subset &  s 
)

Definition at line 23 of file bicgstab_kernels_naive.h.

References T.

Referenced by Chroma::RelInvBiCGStab_a().

template<typename T>
void Chroma::BiCGStabKernels::norm2x_cdotxy ( const T x,
const T y,
Double &  norm2x,
DComplex &  cdotxy,
const Subset &  s 
)

Definition at line 31 of file bicgstab_kernels_naive.h.

Referenced by Chroma::RelInvBiCGStab_a().

template<typename T, typename C>
void Chroma::BiCGStabKernels::xpaypbz ( T x,
T y,
T z,
C &  a,
C &  b,
const Subset &  s 
)

Definition at line 38 of file bicgstab_kernels_naive.h.

References T.

Referenced by Chroma::RelInvBiCGStab_a().

template<typename T, typename C>
void Chroma::BiCGStabKernels::xmay_normx_cdotzx ( T x,
const T y,
const T z,
C &  a,
Double &  normx,
DComplex &  cdotzx,
const Subset &  s 
)

Definition at line 46 of file bicgstab_kernels_naive.h.

Referenced by Chroma::RelInvBiCGStab_a().

template<typename T, typename C>
void Chroma::BiCGStabKernels::cxmay ( T x,
const T y,
const C &  a,
const Subset &  s 
)

Definition at line 55 of file bicgstab_kernels_naive.h.

Referenced by Chroma::RelInvBiCGStab_a().

template<typename T, typename C>
void Chroma::BiCGStabKernels::ibicgstab_zvupdates ( const T r,
T z,
T v,
const T u,
const T q,
const C &  alpha,
const C &  alpha_rat_beta,
const C &  alpha_delta,
const C &  beta,
const C &  delta,
const Subset &  s 
) [inline]

Definition at line 64 of file bicgstab_kernels_naive.h.

References T.

Referenced by Chroma::InvIBiCGStab_a(), and Chroma::RelInvIBiCGStab_a().

template<typename T, typename C, typename F>
void Chroma::BiCGStabKernels::ibicgstab_stupdates_reduces ( const C &  alpha,
const T r,
const T u,
const T v,
const T q,
const T r0,
const T f0,
T s,
T t,
C &  phi,
C &  pi,
C &  gamma,
C &  eta,
C &  theta,
F kappa,
F rnorm,
const Subset &  sub 
)

Definition at line 84 of file bicgstab_kernels_naive.h.

Referenced by Chroma::InvIBiCGStab_a(), and Chroma::RelInvIBiCGStab_a().

template<typename T, typename C>
void Chroma::BiCGStabKernels::ibicgstab_rxupdate ( const C &  omega,
const T s,
const T t,
const T z,
T r,
T x,
const Subset &  sub 
)

Definition at line 115 of file bicgstab_kernels_naive.h.

Referenced by Chroma::InvIBiCGStab_a(), and Chroma::RelInvIBiCGStab_a().

void Chroma::BiCGStabKernels::initScalarSiteKernels (  ) 

Definition at line 9 of file bicgstab_kernels_scalarsite.cc.

References _reduction_space, and _reduction_space_un.

Referenced by initKernels().

void Chroma::BiCGStabKernels::finishScalarSiteKernels (  ) 

Definition at line 21 of file bicgstab_kernels_scalarsite.cc.

References _reduction_space_un.

Referenced by finishKernels().

REAL64 * Chroma::BiCGStabKernels::getNormSpace (  ) 

Definition at line 27 of file bicgstab_kernels_scalarsite.cc.

References _reduction_space.

Referenced by ibicgstab_stupdates_reduces(), norm2x_cdotxy(), xmay_normx_cdotzx(), and xymz_normx().

template<>
void Chroma::BiCGStabKernels::xymz_normx ( LatticeDiracFermionD &  x,
const LatticeDiracFermionD &  y,
const LatticeDiracFermionD &  z,
Double &  x_norm,
const Subset &  s 
) [inline]

Definition at line 31 of file bicgstab_kernels_scalarsite.h.

References getNormSpace(), and ord_xymz_normx_kernel().

template<>
void Chroma::BiCGStabKernels::yxpaymabz ( LatticeDiracFermionF &  x,
LatticeDiracFermionF &  y,
LatticeDiracFermionF &  z,
const ComplexF &  a,
const ComplexF &  b,
const Subset &  s 
) [inline]

Definition at line 82 of file bicgstab_kernels_scalarsite.h.

References ord_yxpaymabz_kernel().

template<>
void Chroma::BiCGStabKernels::norm2x_cdotxy ( const LatticeDiracFermionF &  x,
const LatticeDiracFermionF &  y,
Double &  norm2x,
DComplex &  cdotxy,
const Subset &  s 
) [inline]

Definition at line 123 of file bicgstab_kernels_scalarsite.h.

References getNormSpace(), and ord_norm2x_cdotxy_kernel().

template<>
void Chroma::BiCGStabKernels::xpaypbz ( LatticeDiracFermionF &  x,
LatticeDiracFermionF &  y,
LatticeDiracFermionF &  z,
ComplexF &  a,
ComplexF &  b,
const Subset &  s 
) [inline]

Definition at line 175 of file bicgstab_kernels_scalarsite.h.

References ord_xpaypbz_kernel().

template<>
void Chroma::BiCGStabKernels::xmay_normx_cdotzx ( LatticeDiracFermionF &  x,
const LatticeDiracFermionF &  y,
const LatticeDiracFermionF &  z,
ComplexF &  a,
Double &  normx,
DComplex &  cdotzx,
const Subset &  s 
) [inline]

Definition at line 223 of file bicgstab_kernels_scalarsite.h.

References getNormSpace(), and ord_xmay_normx_cdotzx_kernel().

template<>
void Chroma::BiCGStabKernels::cxmay ( LatticeDiracFermionF &  x,
const LatticeDiracFermionF &  y,
const ComplexF &  a,
const Subset &  s 
) [inline]

Definition at line 283 of file bicgstab_kernels_scalarsite.h.

References ord_cxmayf_kernel().

template<>
void Chroma::BiCGStabKernels::ibicgstab_zvupdates ( const LatticeDiracFermionF3 &  r,
LatticeDiracFermionF3 &  z,
LatticeDiracFermionF3 &  v,
const LatticeDiracFermionF3 &  u,
const LatticeDiracFermionF3 &  q,
const ComplexD &  alpha,
const ComplexD &  alpha_rat_beta,
const ComplexD &  alpha_delta,
const ComplexD &  beta,
const ComplexD &  delta,
const Subset &  sub 
) [inline]

Definition at line 345 of file bicgstab_kernels_scalarsite.h.

References ord_ib_zvupdates_kernel_real32().

template<>
void Chroma::BiCGStabKernels::ibicgstab_zvupdates ( const LatticeDiracFermionD3 &  r,
LatticeDiracFermionD3 &  z,
LatticeDiracFermionD3 &  v,
const LatticeDiracFermionD3 &  u,
const LatticeDiracFermionD3 &  q,
const ComplexD &  alpha,
const ComplexD &  alpha_rat_beta,
const ComplexD &  alpha_delta,
const ComplexD &  beta,
const ComplexD &  delta,
const Subset &  sub 
) [inline]

Definition at line 400 of file bicgstab_kernels_scalarsite.h.

References ord_ib_zvupdates_kernel_real64().

template<>
void Chroma::BiCGStabKernels::ibicgstab_rxupdate ( const ComplexD &  omega,
const LatticeDiracFermionF3 &  s,
const LatticeDiracFermionF3 &  t,
const LatticeDiracFermionF3 &  z,
LatticeDiracFermionF3 &  r,
LatticeDiracFermionF3 &  x,
const Subset &  sub 
) [inline]

Definition at line 468 of file bicgstab_kernels_scalarsite.h.

References ord_ib_rxupdate_kernel_real32().

template<>
void Chroma::BiCGStabKernels::ibicgstab_rxupdate ( const ComplexD &  omega,
const LatticeDiracFermionD3 &  s,
const LatticeDiracFermionD3 &  t,
const LatticeDiracFermionD3 &  z,
LatticeDiracFermionD3 &  r,
LatticeDiracFermionD3 &  x,
const Subset &  sub 
) [inline]

Definition at line 502 of file bicgstab_kernels_scalarsite.h.

References ord_ib_rxupdate_kernel_real64().

template<>
void Chroma::BiCGStabKernels::ibicgstab_stupdates_reduces ( const ComplexD &  alpha,
const LatticeDiracFermionF3 &  r,
const LatticeDiracFermionF3 &  u,
const LatticeDiracFermionF3 &  v,
const LatticeDiracFermionF3 &  q,
const LatticeDiracFermionF3 &  r0,
const LatticeDiracFermionF3 &  f0,
LatticeDiracFermionF3 &  s,
LatticeDiracFermionF3 &  t,
ComplexD &  phi,
ComplexD &  pi,
ComplexD &  gamma,
ComplexD &  eta,
ComplexD &  theta,
Double &  kappa,
Double &  rnorm,
const Subset &  sub 
) [inline]

Definition at line 557 of file bicgstab_kernels_scalarsite.h.

References getNormSpace(), and ord_ib_stupdates_kernel_real32().

template<>
void Chroma::BiCGStabKernels::ibicgstab_stupdates_reduces ( const ComplexD &  alpha,
const LatticeDiracFermionD3 &  r,
const LatticeDiracFermionD3 &  u,
const LatticeDiracFermionD3 &  v,
const LatticeDiracFermionD3 &  q,
const LatticeDiracFermionD3 &  r0,
const LatticeDiracFermionD3 &  f0,
LatticeDiracFermionD3 &  s,
LatticeDiracFermionD3 &  t,
ComplexD &  phi,
ComplexD &  pi,
ComplexD &  gamma,
ComplexD &  eta,
ComplexD &  theta,
Double &  kappa,
Double &  rnorm,
const Subset &  sub 
) [inline]

Definition at line 645 of file bicgstab_kernels_scalarsite.h.

References getNormSpace(), and ord_ib_stupdates_kernel_real64().


Variable Documentation

REAL64* Chroma::BiCGStabKernels::_reduction_space

Definition at line 6 of file bicgstab_kernels_scalarsite.cc.

Referenced by getNormSpace(), and initScalarSiteKernels().

REAL64* Chroma::BiCGStabKernels::_reduction_space_un

Definition at line 7 of file bicgstab_kernels_scalarsite.cc.

Referenced by finishScalarSiteKernels(), and initScalarSiteKernels().


Generated on Sat Nov 21 04:40:29 2009 for CHROMA by  doxygen 1.4.7