ViennaCL - The Vienna Computing Library
1.5.1
|
The conjugate gradient method using mixed precision is implemented here. Experimental. More...
#include <vector>
#include <map>
#include <cmath>
#include "viennacl/forwards.h"
#include "viennacl/tools/tools.hpp"
#include "viennacl/linalg/ilu.hpp"
#include "viennacl/linalg/prod.hpp"
#include "viennacl/linalg/inner_prod.hpp"
#include "viennacl/traits/clear.hpp"
#include "viennacl/traits/size.hpp"
#include "viennacl/meta/result_of.hpp"
#include "viennacl/ocl/backend.hpp"
#include "viennacl/ocl/kernel.hpp"
#include "viennacl/backend/memory.hpp"
#include "viennacl/vector_proxy.hpp"
Go to the source code of this file.
Data Structures | |
class | mixed_precision_cg_tag |
A tag for the conjugate gradient Used for supplying solver parameters and for dispatching the solve() function. More... | |
Namespaces | |
namespace | viennacl |
Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them. | |
namespace | viennacl::linalg |
Provides all linear algebra operations which are not covered by operator overloads. | |
Functions | |
template<typename MatrixType , typename VectorType > | |
VectorType | solve (const MatrixType &matrix, VectorType const &rhs, mixed_precision_cg_tag const &tag) |
Implementation of the conjugate gradient solver without preconditioner. | |
template<typename MatrixType , typename VectorType > | |
VectorType | solve (const MatrixType &matrix, VectorType const &rhs, mixed_precision_cg_tag const &tag, viennacl::linalg::no_precond) |
Variables | |
const char * | double_float_conversion_program = "};\n" |
The conjugate gradient method using mixed precision is implemented here. Experimental.