Namespace for various tools used within ViennaCL. More...
Namespaces | |
detail | |
Contains implementation details for the tools. Usually not of interest for the library user. | |
Classes | |
struct | CHECK_SCALAR_TEMPLATE_ARGUMENT |
A guard that checks whether the floating point type of GPU types is either float or double. More... | |
struct | CONST_REMOVER |
Removes the const qualifier from a type. More... | |
class | const_sparse_matrix_adapted_iterator |
A const iterator for sparse matrices of type std::vector<std::map<SizeT, NumericT> > More... | |
class | const_sparse_matrix_adapter |
Adapts a constant sparse matrix type made up from std::vector<std::map<SizeT, NumericT> > to basic ublas-compatibility. More... | |
struct | CPU_SCALAR_TYPE_DEDUCER |
Obtain the cpu scalar type from a type, including a GPU type like viennacl::scalar<T> More... | |
struct | MATRIX_ITERATOR_INCREMENTER |
Helper class for incrementing an iterator in a dense matrix. More... | |
struct | MATRIX_SIZE_DEDUCER |
Deduces the size of the resulting vector represented by a vector_expression from the operands. More... | |
class | normal_random_numbers |
Random number generator for returning normally distributed values. More... | |
class | shared_ptr |
A shared pointer class similar to boost::shared_ptr. Reimplemented in order to avoid a Boost-dependency. Will be replaced by std::shared_ptr as soon as C++11 is widely available. More... | |
class | sparse_matrix_adapted_iterator |
A non-const iterator for sparse matrices of type std::vector<std::map<SizeT, NumericT> > More... | |
class | sparse_matrix_adapter |
Adapts a non-const sparse matrix type made up from std::vector<std::map<SizeT, NumericT> > to basic ublas-compatibility. More... | |
class | timer |
Simple timer class based on gettimeofday (POSIX) or QueryPerformanceCounter (Windows). More... | |
class | uniform_random_numbers |
Random number generator for returning uniformly distributed values in the closed interval [0, 1]. More... | |
Typedefs | |
typedef signed char | int8_t |
typedef unsigned char | uint8_t |
typedef short | int16_t |
typedef unsigned short | uint16_t |
typedef int | int32_t |
typedef unsigned int | uint32_t |
Functions | |
template<typename MatrixType > | |
void | generate_fdm_laplace (MatrixType &A, vcl_size_t points_x, vcl_size_t points_y) |
Generates a sparse matrix obtained from a simple finite-difference discretization of the Laplace equation on the unit square (2d). More... | |
template<typename NumericT > | |
void | generate_fdm_laplace (viennacl::compressed_matrix< NumericT > &A, vcl_size_t points_x, vcl_size_t points_y) |
template<typename NumericT > | |
void | generate_fdm_laplace (viennacl::coordinate_matrix< NumericT > &A, vcl_size_t points_x, vcl_size_t points_y) |
template<typename NumericT > | |
void | generate_fdm_laplace (viennacl::ell_matrix< NumericT > &A, vcl_size_t points_x, vcl_size_t points_y) |
template<typename NumericT > | |
void | generate_fdm_laplace (viennacl::sliced_ell_matrix< NumericT > &A, vcl_size_t points_x, vcl_size_t points_y) |
template<typename NumericT > | |
void | generate_fdm_laplace (viennacl::hyb_matrix< NumericT > &A, vcl_size_t points_x, vcl_size_t points_y) |
std::string | sha1 (std::string const &src) |
std::string | read_text_from_file (const std::string &filename) |
Reads a text from a file into a std::string. More... | |
std::string | str_replace (const std::string &text, std::string to_search, std::string to_replace) |
Replaces all occurances of a substring by another stringstream. More... | |
template<class INT_TYPE > | |
INT_TYPE | align_to_multiple (INT_TYPE to_reach, INT_TYPE base) |
Rounds an integer to the next multiple of another integer. More... | |
template<class INT_TYPE > | |
INT_TYPE | round_down_to_prevous_multiple (INT_TYPE to_reach, INT_TYPE base) |
Rounds an integer to the previous multiple of another integer. More... | |
int | find_and_replace (std::string &source, std::string const &find, std::string const &replace) |
Replace in a source string a pattern by another. More... | |
template<class InputIterator , class UnaryPredicate > | |
bool | any_of (InputIterator first, InputIterator last, UnaryPredicate pred) |
Returns true if pred returns true for any of the elements in the range [first,last), and false otherwise. More... | |
std::string | make_double_kernel (std::string const &source, std::string const &fp_extension) |
Create a double precision kernel out of a single precision kernel. More... | |
template<typename HostScalarType > | |
viennacl::scalar < HostScalarType > const & | promote_if_host_scalar (viennacl::scalar< HostScalarType > const &s) |
template<typename HostScalarType > | |
viennacl::scalar_expression < const viennacl::scalar < HostScalarType >, const viennacl::scalar < HostScalarType > , viennacl::op_flip_sign > const & | promote_if_host_scalar (viennacl::scalar_expression< const viennacl::scalar< HostScalarType >, const viennacl::scalar< HostScalarType >, viennacl::op_flip_sign > const &s) |
template<typename HostScalarType > | |
HostScalarType | promote_if_host_scalar (float s) |
template<typename HostScalarType > | |
HostScalarType | promote_if_host_scalar (double s) |
template<typename HostScalarType > | |
HostScalarType | promote_if_host_scalar (long s) |
template<typename HostScalarType > | |
HostScalarType | promote_if_host_scalar (unsigned long s) |
template<typename HostScalarType > | |
HostScalarType | promote_if_host_scalar (int s) |
template<typename HostScalarType > | |
HostScalarType | promote_if_host_scalar (unsigned int s) |
template<class T > | |
std::string | to_string (T const t) |
Namespace for various tools used within ViennaCL.
typedef short viennacl::tools::int16_t |
typedef int viennacl::tools::int32_t |
typedef signed char viennacl::tools::int8_t |
typedef unsigned short viennacl::tools::uint16_t |
typedef unsigned int viennacl::tools::uint32_t |
typedef unsigned char viennacl::tools::uint8_t |
INT_TYPE viennacl::tools::align_to_multiple | ( | INT_TYPE | to_reach, |
INT_TYPE | base | ||
) |
bool viennacl::tools::any_of | ( | InputIterator | first, |
InputIterator | last, | ||
UnaryPredicate | pred | ||
) |
|
inline |
void viennacl::tools::generate_fdm_laplace | ( | MatrixType & | A, |
vcl_size_t | points_x, | ||
vcl_size_t | points_y | ||
) |
Generates a sparse matrix obtained from a simple finite-difference discretization of the Laplace equation on the unit square (2d).
MatrixType | An uBLAS-compatible matrix type supporting .clear(), .resize(), and operator()-access |
A | A sparse matrix object from ViennaCL, total number of unknowns will be points_x*points_y |
points_x | Number of points in x-direction |
points_y | Number of points in y-direction |
Definition at line 48 of file matrix_generation.hpp.
void viennacl::tools::generate_fdm_laplace | ( | viennacl::compressed_matrix< NumericT > & | A, |
vcl_size_t | points_x, | ||
vcl_size_t | points_y | ||
) |
Definition at line 92 of file matrix_generation.hpp.
void viennacl::tools::generate_fdm_laplace | ( | viennacl::coordinate_matrix< NumericT > & | A, |
vcl_size_t | points_x, | ||
vcl_size_t | points_y | ||
) |
Definition at line 102 of file matrix_generation.hpp.
void viennacl::tools::generate_fdm_laplace | ( | viennacl::ell_matrix< NumericT > & | A, |
vcl_size_t | points_x, | ||
vcl_size_t | points_y | ||
) |
Definition at line 112 of file matrix_generation.hpp.
void viennacl::tools::generate_fdm_laplace | ( | viennacl::sliced_ell_matrix< NumericT > & | A, |
vcl_size_t | points_x, | ||
vcl_size_t | points_y | ||
) |
Definition at line 122 of file matrix_generation.hpp.
void viennacl::tools::generate_fdm_laplace | ( | viennacl::hyb_matrix< NumericT > & | A, |
vcl_size_t | points_x, | ||
vcl_size_t | points_y | ||
) |
Definition at line 132 of file matrix_generation.hpp.
|
inline |
viennacl::scalar<HostScalarType> const& viennacl::tools::promote_if_host_scalar | ( | viennacl::scalar< HostScalarType > const & | s | ) |
viennacl::scalar_expression<const viennacl::scalar<HostScalarType>,const viennacl::scalar<HostScalarType>,viennacl::op_flip_sign> const& viennacl::tools::promote_if_host_scalar | ( | viennacl::scalar_expression< const viennacl::scalar< HostScalarType >, const viennacl::scalar< HostScalarType >, viennacl::op_flip_sign > const & | s | ) |
HostScalarType viennacl::tools::promote_if_host_scalar | ( | float | s | ) |
HostScalarType viennacl::tools::promote_if_host_scalar | ( | double | s | ) |
HostScalarType viennacl::tools::promote_if_host_scalar | ( | long | s | ) |
HostScalarType viennacl::tools::promote_if_host_scalar | ( | unsigned long | s | ) |
HostScalarType viennacl::tools::promote_if_host_scalar | ( | int | s | ) |
HostScalarType viennacl::tools::promote_if_host_scalar | ( | unsigned int | s | ) |
|
inline |
INT_TYPE viennacl::tools::round_down_to_prevous_multiple | ( | INT_TYPE | to_reach, |
INT_TYPE | base | ||
) |
|
inline |
|
inline |