TiledArray::math::linalg Namespace Reference

Namespaces

 detail
 
 non_distributed
 
 rank_local
 
 scalapack
 

Classes

struct  ConjugateGradientSolver
 
class  DIIS
 DIIS (`‘direct inversion of iterative subspace’') extrapolation. More...
 
struct  SVD
 

Typedefs

using Op = ::blas::Op
 

Functions

template<typename Tile , typename Policy >
void vec_multiply (DistArray< Tile, Policy > &a1, const DistArray< Tile, Policy > &a2)
 
template<typename Tile , typename Policy , typename S >
void scale (DistArray< Tile, Policy > &a, S scaling_factor)
 
template<typename Tile , typename Policy >
void zero (DistArray< Tile, Policy > &a)
 
template<typename Tile , typename Policy , typename S >
void axpy (DistArray< Tile, Policy > &y, S alpha, const DistArray< Tile, Policy > &x)
 
template<typename Array >
auto cholesky (const Array &A, TiledRange l_trange=TiledRange())
 
template<bool Both = false, typename Array >
auto cholesky_linv (const Array &A, TiledRange l_trange=TiledRange())
 
template<typename Array >
auto cholesky_solve (const Array &A, const Array &B, TiledRange x_trange=TiledRange())
 
template<typename Array >
auto cholesky_lsolve (Op transpose, const Array &A, const Array &B, TiledRange l_trange=TiledRange(), TiledRange x_trange=TiledRange())
 
auto to_int (Op op)
 
template<typename Array >
auto heig (const Array &A, TiledRange evec_trange=TiledRange())
 
template<typename ArrayA , typename ArrayB , typename EVecType = ArrayA>
auto heig (const ArrayA &A, const ArrayB &B, TiledRange evec_trange=TiledRange())
 
template<typename ArrayA , typename ArrayB >
auto lu_solve (const ArrayA &A, const ArrayB &B, TiledRange x_trange=TiledRange())
 
template<typename Array >
auto lu_inv (const Array &A, TiledRange ainv_trange=TiledRange())
 
template<SVD::Vectors Vectors, typename Array >
auto svd (const Array &A, TiledRange u_trange=TiledRange(), TiledRange vt_trange=TiledRange())
 

Typedef Documentation

◆ Op

Definition at line 35 of file forward.h.

Function Documentation

◆ axpy()

template<typename Tile , typename Policy , typename S >
void TiledArray::math::linalg::axpy ( DistArray< Tile, Policy > &  y,
alpha,
const DistArray< Tile, Policy > &  x 
)
inline

Definition at line 56 of file basic.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cholesky()

template<typename Array >
auto TiledArray::math::linalg::cholesky ( const Array A,
TiledRange  l_trange = TiledRange() 
)

Definition at line 36 of file cholesky.h.

Here is the call graph for this function:

◆ cholesky_linv()

template<bool Both = false, typename Array >
auto TiledArray::math::linalg::cholesky_linv ( const Array A,
TiledRange  l_trange = TiledRange() 
)

Definition at line 45 of file cholesky.h.

Here is the call graph for this function:

◆ cholesky_lsolve()

template<typename Array >
auto TiledArray::math::linalg::cholesky_lsolve ( Op  transpose,
const Array A,
const Array B,
TiledRange  l_trange = TiledRange(),
TiledRange  x_trange = TiledRange() 
)

Definition at line 64 of file cholesky.h.

Here is the call graph for this function:

◆ cholesky_solve()

template<typename Array >
auto TiledArray::math::linalg::cholesky_solve ( const Array A,
const Array B,
TiledRange  x_trange = TiledRange() 
)

Definition at line 54 of file cholesky.h.

Here is the call graph for this function:

◆ heig() [1/2]

template<typename Array >
auto TiledArray::math::linalg::heig ( const Array A,
TiledRange  evec_trange = TiledRange() 
)

Definition at line 36 of file heig.h.

Here is the call graph for this function:

◆ heig() [2/2]

template<typename ArrayA , typename ArrayB , typename EVecType = ArrayA>
auto TiledArray::math::linalg::heig ( const ArrayA &  A,
const ArrayB &  B,
TiledRange  evec_trange = TiledRange() 
)

Definition at line 46 of file heig.h.

Here is the call graph for this function:

◆ lu_inv()

template<typename Array >
auto TiledArray::math::linalg::lu_inv ( const Array A,
TiledRange  ainv_trange = TiledRange() 
)

Definition at line 47 of file lu.h.

Here is the call graph for this function:

◆ lu_solve()

template<typename ArrayA , typename ArrayB >
auto TiledArray::math::linalg::lu_solve ( const ArrayA &  A,
const ArrayB &  B,
TiledRange  x_trange = TiledRange() 
)

Definition at line 36 of file lu.h.

Here is the call graph for this function:

◆ scale()

template<typename Tile , typename Policy , typename S >
void TiledArray::math::linalg::scale ( DistArray< Tile, Policy > &  a,
scaling_factor 
)
inline

Definition at line 44 of file basic.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ svd()

template<SVD::Vectors Vectors, typename Array >
auto TiledArray::math::linalg::svd ( const Array A,
TiledRange  u_trange = TiledRange(),
TiledRange  vt_trange = TiledRange() 
)

Definition at line 36 of file svd.h.

Here is the call graph for this function:

◆ to_int()

auto TiledArray::math::linalg::to_int ( Op  op)
inline

converts Op to ints in manner useful for bit manipulations NoTranspose -> 0, Transpose->1, ConjTranspose->2

Definition at line 42 of file forward.h.

◆ vec_multiply()

template<typename Tile , typename Policy >
void TiledArray::math::linalg::vec_multiply ( DistArray< Tile, Policy > &  a1,
const DistArray< Tile, Policy > &  a2 
)
inline

Definition at line 37 of file basic.h.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ zero()

template<typename Tile , typename Policy >
void TiledArray::math::linalg::zero ( DistArray< Tile, Policy > &  a)
inline

Definition at line 51 of file basic.h.

Here is the call graph for this function:
Here is the caller graph for this function: