Amesos2 - Direct Sparse Solver Interfaces  Version of the Day
Amesos2::FunctionMap< ConcreteSolver, Scalar > Struct Template Reference

Passes functions to TPL functions based on type. More...

#include <Amesos2_FunctionMap.hpp>

Detailed Description

template<template< typename, typename > class ConcreteSolver, typename Scalar>
struct Amesos2::FunctionMap< ConcreteSolver, Scalar >

Passes functions to TPL functions based on type.

Helper class which passes on function calls to the appropriate Solver function based on the type of its scalar template argument.

Some Solvers have solver and matrix builder functions defined based on data type. One function for complex, one for double precision complex, another for float , and yet another for double. To work elegantly with the Amesos2::Solver interface we want to be able to perform a single function call which is appropriate for the scalar type of the Matrix and MultiVectors that we are working with. The FunctionMap class provides that capability.

The class template is specialized for each Solver and each data type that it supports, and errors are thrown for other data types.


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