ViennaCL - The Vienna Computing Library  1.5.2
Data Structures | Namespaces | Functions
coordinate_matrix.hpp File Reference

Implementation of the coordinate_matrix class. More...

#include <map>
#include <vector>
#include <list>
#include "viennacl/forwards.h"
#include "viennacl/vector.hpp"
#include "viennacl/linalg/sparse_matrix_operations.hpp"

Go to the source code of this file.

Data Structures

class  coordinate_matrix< SCALARTYPE, ALIGNMENT >
 A sparse square matrix, where entries are stored as triplets (i,j, val), where i and j are the row and column indices and val denotes the entry. More...
 

Namespaces

 viennacl
 Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them.
 

Functions

template<typename CPU_MATRIX , typename SCALARTYPE , unsigned int ALIGNMENT>
void copy (const CPU_MATRIX &cpu_matrix, coordinate_matrix< SCALARTYPE, ALIGNMENT > &gpu_matrix)
 Copies a sparse matrix from the host to the OpenCL device (either GPU or multi-core CPU) More...
 
template<typename SCALARTYPE , unsigned int ALIGNMENT>
void copy (const std::vector< std::map< unsigned int, SCALARTYPE > > &cpu_matrix, coordinate_matrix< SCALARTYPE, ALIGNMENT > &gpu_matrix)
 Copies a sparse matrix in the std::vector< std::map < > > format to an OpenCL device. More...
 
template<typename CPU_MATRIX , typename SCALARTYPE , unsigned int ALIGNMENT>
void copy (const coordinate_matrix< SCALARTYPE, ALIGNMENT > &gpu_matrix, CPU_MATRIX &cpu_matrix)
 Copies a sparse matrix from the OpenCL device (either GPU or multi-core CPU) to the host. More...
 
template<typename SCALARTYPE , unsigned int ALIGNMENT>
void copy (const coordinate_matrix< SCALARTYPE, ALIGNMENT > &gpu_matrix, std::vector< std::map< unsigned int, SCALARTYPE > > &cpu_matrix)
 Copies a sparse matrix from an OpenCL device to the host. The host type is the std::vector< std::map < > > format . More...
 

Detailed Description

Implementation of the coordinate_matrix class.