Amesos2 - Direct Sparse Solver Interfaces Version of the Day
Amesos2_KLU2_FunctionMap.hpp File Reference

Provides a mechanism to map function calls to the correct Solver function based on the scalar type of Matrices and MultiVectors. More...

#include "Amesos2_FunctionMap.hpp"
#include "Amesos2_KLU2_TypeMap.hpp"
#include "klu2_defaults.hpp"
#include "klu2_analyze.hpp"
#include "klu2_factor.hpp"
#include "klu2_solve.hpp"
#include "klu2_tsolve.hpp"
#include "klu2_free_symbolic.hpp"
#include "klu2_free_numeric.hpp"
Include dependency graph for Amesos2_KLU2_FunctionMap.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

template<typename Entry, typename Int>
Int KLU2::KLU_defaults (KLU_common< Entry, Int > *Common)
template<typename Int>
size_t KLU2::KLU_add_size_t (size_t a, size_t b, Int *ok)
template<typename Int>
size_t KLU2::KLU_mult_size_t (size_t a, size_t k, Int *ok)
template<typename Entry, typename Int>
void * KLU2::KLU_malloc (size_t n, size_t size, KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
void * KLU2::KLU_free (void *p, size_t n, size_t size, KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
void * KLU2::KLU_realloc (size_t nnew, size_t nold, size_t size, void *p, KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
KLU_symbolic< Entry, Int > * KLU2::KLU_alloc_symbolic (Int n, Int *Ap, Int *Ai, KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
KLU_symbolic< Entry, Int > * KLU2::KLU_analyze_given (Int n, Int Ap[], Int Ai[], Int Puser[], Int Quser[], KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
static Int KLU2::analyze_worker (Int n, Int Ap[], Int Ai[], Int nblocks, Int Pbtf[], Int Qbtf[], Int R[], Int ordering, Int P[], Int Q[], double Lnz[], Int Pblk[], Int Cp[], Int Ci[], Int Cilen, Int Pinv[], KLU_symbolic< Entry, Int > *Symbolic, KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
static KLU_symbolic< Entry, Int > * KLU2::order_and_analyze (Int n, Int Ap[], Int Ai[], KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
KLU_symbolic< Entry, Int > * KLU2::KLU_analyze (Int n, Int Ap[], Int Ai[], KLU_common< Entry, Int > *Common)
template<typename Int>
static Int KLU2::dfs (Int j, Int k, Int Pinv[], Int Llen[], Int Lip[], Int Stack[], Int Flag[], Int Lpend[], Int top, Unit LU[], Int *Lik, Int *plength, Int Ap_pos[])
template<typename Int>
static Int KLU2::lsolve_symbolic (Int n, Int k, Int Ap[], Int Ai[], Int Q[], Int Pinv[], Int Stack[], Int Flag[], Int Lpend[], Int Ap_pos[], Unit LU[], Int lup, Int Llen[], Int Lip[], Int k1, Int PSinv[])
template<typename Entry, typename Int>
static void KLU2::construct_column (Int k, Int Ap[], Int Ai[], Entry Ax[], Int Q[], Entry X[], Int k1, Int PSinv[], double Rs[], Int scale, Int Offp[], Int Offi[], Entry Offx[])
template<typename Entry, typename Int>
static void KLU2::lsolve_numeric (Int Pinv[], Unit *LU, Int Stack[], Int Lip[], Int top, Int n, Int Llen[], Entry X[])
template<typename Entry, typename Int>
static Int KLU2::lpivot (Int diagrow, Int *p_pivrow, Entry *p_pivot, double *p_abs_pivot, double tol, Entry X[], Unit *LU, Int Lip[], Int Llen[], Int k, Int n, Int Pinv[], Int *p_firstrow, KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
static void KLU2::prune (Int Lpend[], Int Pinv[], Int k, Int pivrow, Unit *LU, Int Uip[], Int Lip[], Int Ulen[], Int Llen[])
template<typename Entry, typename Int>
size_t KLU2::KLU_kernel (Int n, Int Ap[], Int Ai[], Entry Ax[], Int Q[], size_t lusize, Int Pinv[], Int P[], Unit **p_LU, Entry Udiag[], Int Llen[], Int Ulen[], Int Lip[], Int Uip[], Int *lnz, Int *unz, Entry X[], Int Stack[], Int Flag[], Int Ap_pos[], Int Lpend[], Int k1, Int PSinv[], double Rs[], Int Offp[], Int Offi[], Entry Offx[], KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
size_t KLU2::KLU_kernel_factor (Int n, Int Ap[], Int Ai[], Entry Ax[], Int Q[], double Lsize, Unit **p_LU, Entry Udiag[], Int Llen[], Int Ulen[], Int Lip[], Int Uip[], Int P[], Int *lnz, Int *unz, Entry *X, Int *Work, Int k1, Int PSinv[], double Rs[], Int Offp[], Int Offi[], Entry Offx[], KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
void KLU2::KLU_lsolve (const Int n, const Int *Lip, const Int *Llen, Unit *LU, const Int nrhs, Entry *X)
template<typename Entry, typename Int>
void KLU2::KLU_usolve (Int n, const Int Uip[], const Int Ulen[], Unit LU[], Entry Udiag[], Int nrhs, Entry X[])
template<typename Entry, typename Int>
void KLU2::KLU_ltsolve (Int n, const Int Lip[], const Int Llen[], Unit LU[], Int nrhs, Entry X[])
template<typename Entry, typename Int>
void KLU2::KLU_utsolve (const Int n, const Int Uip[], const Int Ulen[], Unit LU[], const Entry Udiag[], Int nrhs, Entry X[])
template<typename Entry, typename Int>
Int KLU2::KLU_scale (Int scale, Int n, Int Ap[], Int Ai[], Entry Ax[], double Rs[], Int W[], KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
static void KLU2::factor2 (Int Ap[], Int Ai[], Entry Ax[], KLU_symbolic< Entry, Int > *Symbolic, KLU_numeric< Entry, Int > *Numeric, KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
KLU_numeric< Entry, Int > * KLU2::KLU_factor (Int Ap[], Int Ai[], Entry Ax[], KLU_symbolic< Entry, Int > *Symbolic, KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
Int KLU2::KLU_solve (KLU_symbolic< Entry, Int > *Symbolic, KLU_numeric< Entry, Int > *Numeric, Int d, Int nrhs, Entry B[], KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
Int KLU2::KLU_solve2 (KLU_symbolic< Entry, Int > *Symbolic, KLU_numeric< Entry, Int > *Numeric, Int d, Int nrhs, Entry B[], Entry Xout[], KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
Int KLU2::KLU_tsolve (KLU_symbolic< Entry, Int > *Symbolic, KLU_numeric< Entry, Int > *Numeric, Int d, Int nrhs, Entry B[], KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
Int KLU2::KLU_tsolve2 (KLU_symbolic< Entry, Int > *Symbolic, KLU_numeric< Entry, Int > *Numeric, Int d, Int nrhs, Entry B[], Entry Xout[], KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
Int KLU2::KLU_free_symbolic (KLU_symbolic< Entry, Int > **SymbolicHandle, KLU_common< Entry, Int > *Common)
template<typename Entry, typename Int>
Int KLU2::KLU_free_numeric (KLU_numeric< Entry, Int > **NumericHandle, KLU_common< Entry, Int > *Common)

Detailed Description

Provides a mechanism to map function calls to the correct Solver function based on the scalar type of Matrices and MultiVectors.

Author
Siva Rajamanickam sraja.nosp@m.ma@s.nosp@m.andia.nosp@m..gov