All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:

viennacl | Main namespace in ViennaCL. Holds all the basic types such as vector, matrix, etc. and defines operations upon them
backend | Namespace providing routines for handling the different memory domains
cpu_ram | Provides implementations for handling memory buffers in CPU RAM
detail | Holds implementation details for handling memory buffers in CPU RAM. Not intended for direct use by library users
array_deleter | Helper struct for deleting an pointer to an array
cuda | Provides implementations for handling CUDA memory buffers
detail | Holds implementation details for handling CUDA memory buffers. Not intended for direct use by library users
cuda_deleter | Functor for deleting a CUDA handle. Used within the smart pointer class
cuda_exception |
detail | Implementation details for the generic memory backend interface
convert_to_opencl | Helper struct for converting a type to its OpenCL pendant
opencl | Provides implementations for handling OpenCL memory buffers
mem_handle | Main abstraction class for multiple memory domains. Represents a buffer in either main RAM, an OpenCL context, or a CUDA device
typesafe_host_array | Helper class implementing an array on the host. Default case: No conversion necessary
typesafe_host_array< T, true > | Special host array type for conversion between OpenCL types and pure CPU types
detail | Holds implementation details for functionality in the main viennacl-namespace. Not intended for direct use by library users
fft | Helper namespace for fast Fourier transforms. Not to be used directly by library users
device_specific | Provides an OpenCL kernel generator
builtin_database |
devices |
accelerator |
cpu |
gpu |
amd |
evergreen |
northern_islands |
southern_islands |
volcanic_islands |
nvidia |
fermi |
kepler |
maxwell |
tesla |
database_type |
device_architecture_t |
device_name_t |
device_type_t |
expression_t |
type |
tree_parsing |
evaluate_expression_traversal | Functor for generating the expression string from a statement
filter |
filter_elements |
process_traversal | Functor for fetching or writing-back the elements in a statement
statement_representation_functor |
traversal_functor | Base functor class for traversing a statement
utils | Contains various helper routines for kernel generation
first_letter_of_type |
first_letter_of_type< char > |
first_letter_of_type< double > |
first_letter_of_type< float > |
first_letter_of_type< int > |
first_letter_of_type< long > |
first_letter_of_type< short > |
first_letter_of_type< unsigned char > |
first_letter_of_type< unsigned int > |
first_letter_of_type< unsigned long > |
first_letter_of_type< unsigned short > |
handle_fun |
internal_size1_fun |
internal_size2_fun |
internal_size_fun |
is_same_type |
is_same_type< T, T > |
kernel_generation_stream |
leading_start |
leading_stride |
row_major_fun |
scalartype_size_fun |
size1_fun |
size2_fun |
size_fun |
start1_fun |
start2_fun |
stride1_fun |
stride2_fun |
stride_fun |
type_to_string |
type_to_string< char > |
type_to_string< double > |
type_to_string< float > |
type_to_string< int > |
type_to_string< long > |
type_to_string< short > |
type_to_string< unsigned char > |
type_to_string< unsigned int > |
type_to_string< unsigned long > |
type_to_string< unsigned short > |
binary_leaf | Binary leaf interface
bind_all_unique |
bind_to_handle |
char_to_type |
execution_handler |
generator_not_supported_exception | Exception for the case the generator is unable to deal with the operation
index_tuple |
lazy_program_compiler |
mapped_buffer | Buffered
mapped_handle | Handle
mapped_host_scalar | Host scalar
mapped_implicit_matrix | Implicit matrix
mapped_implicit_vector | Implicit vector
mapped_matrix | Matrix
mapped_matrix_column | Matrix column
mapped_matrix_diag | Matrix diag
mapped_matrix_product | Matrix product
mapped_matrix_row | Matrix row
mapped_object | Mapped Object
MorphBase |
MorphBase1D |
MorphBase2D |
node_info |
mapped_reduction | Reduction
mapped_row_wise_reduction | Vector reduction
mapped_scalar | Scalar
mapped_scalar_reduction | Scalar reduction
mapped_trans | Trans
mapped_vector | Vector
mapped_vector_diag | Vector diag
matrix_product_parameters |
matrix_product_template |
statements_container |
symbolic_binder |
template_base |
invalid_template_exception |
loop_body_base |
parameters_type |
template_base_impl |
io | Provides basic input-output functionality
linalg | Provides all linear algebra operations which are not covered by operator overloads
cuda | Holds all CUDA compute kernels used by ViennaCL
detail | Helper functions for the CUDA linear algebra backend
spmv_alpha_beta |
spmv_pure |
type_to_type2 |
type_to_type2< double > |
type_to_type2< float > |
mat_mult_matrix_index | Helper struct for accessing an element of a row- or column-major matrix
detail | Namespace holding implementation details for linear algebra routines. Usually not of interest for a library user
amg | Implementation namespace for algebraic multigrid preconditioner
amg_level_context |
spai | Implementation namespace for sparse approximate inverse preconditioner
block_matrix | Represents contigious matrices on GPU
block_vector | Represents a contiguous vector on the GPU to represent a concatentation of small vectors
CompareSecond | Helper functor for comparing std::pair<> based on the second member
fspai_tag | A tag for FSPAI. Experimental
spai_tag | A tag for SPAI
sparse_vector | Represents a sparse vector based on std::map<unsigned int, NumericT>
FastMatrix | Internal helper class representing a row-major dense matrix used for the QR method for the purpose of computing eigenvalues
ilu_vector_range | Helper range class for representing a subvector of a larger buffer
ilut_sparse_vector | Helper struct for holding a sparse vector in linear memory. For internal use only
InputData | In this class the input matrix is stored
op_applier | Worker class for decomposing expression templates
op_executor | Worker class for decomposing expression templates
ResultDataLarge | In this class the data of the result for large matrices is stored
ResultDataSmall | In this class the data of the result for small matrices is stored
z_handler | Handles the no_precond case at minimal overhead
z_handler< VectorT, viennacl::linalg::no_precond > |
host_based | Holds all compute kernels with conventional host-based execution (buffers in CPU RAM)
amg |
amg_id_influence | Helper struct for sequential classical one-pass coarsening
detail | Helper functions for the host-based linear algebra backend
fft |
matrix_array_wrapper | Helper array for accessing a strided submatrix embedded in a larger matrix
vector_array_wrapper | Helper class for accessing a strided subvector of a larger vector
spgemm_output_write_disabled |
spgemm_output_write_enabled |
opencl | Holds all routines providing OpenCL linear algebra operations
kernels | Contains the OpenCL kernel generation functions for a predefined set of functionality
ambm_config | Configuration struct for generating OpenCL kernels for linear combinations of matrices
amg | Main kernel class for generating OpenCL kernels for compressed_matrix
asbs_config | Configuration struct for generating OpenCL kernels for linear combinations of viennacl::scalar<> objects
avbv_config | Configuration struct for generating OpenCL kernels for linear combinations of vectors
bisect_kernel | Main kernel class for the generation of the bisection kernels and utilities
compressed_compressed_matrix | Main kernel class for generating OpenCL kernels for compressed_compressed_matrix
compressed_matrix | Main kernel class for generating OpenCL kernels for compressed_matrix (except solvers)
compressed_matrix_solve | Main kernel class for triangular solver OpenCL kernels for compressed_matrix
coordinate_matrix | Main kernel class for generating OpenCL kernels for coordinate_matrix
ell_matrix | Main kernel class for generating OpenCL kernels for ell_matrix
fft | Main kernel class for generating OpenCL kernels for the fast Fourier transform
hyb_matrix | Main kernel class for generating OpenCL kernels for hyb_matrix
ilu | Main kernel class for generating OpenCL kernels for incomplete LU factorization preconditioners
iterative | Main kernel class for generating specialized OpenCL kernels for fast iterative solvers
matrix | Main kernel class for generating OpenCL kernels for operations on/with dense matrix objects of type viennacl::matrix<>
matrix_convert | Main kernel class for vector conversion routines (e.g. convert vector<int> to vector<float>)
matrix_element | Main kernel class for generating OpenCL kernels for elementwise-operations such as element_sin() on/with dense matrix objects of type viennacl::matrix<>
matrix_legacy | Main kernel class for generating OpenCL kernels for operations on/with dense matrix objects of type viennacl::matrix<>
matrix_prod | Main kernel class for generating OpenCL kernels for operations on/with viennacl::vector<> without involving matrices, multiple inner products, or element-wise operations other than addition or subtraction
matrix_solve | Main kernel class for the generation of matrix solve kernels
nmf | Main kernel class for generating OpenCL kernels for nonnegative matrix factorization of a dense matrices
scalar | Main kernel class for generating OpenCL kernels for operations involving viennacl::scalar<>, but not viennacl::vector<> or viennacl::matrix<>
scan | Main kernel class for generating OpenCL kernels for singular value decomposition of dense matrices
sliced_ell_matrix | Main kernel class for generating OpenCL kernels for ell_matrix
sliced_ell_matrix< NumericT, unsigned int > |
spai | Main kernel class for generating OpenCL kernels for the sparse approximate inverse preconditioners
svd | Main kernel class for generating OpenCL kernels for singular value decomposition of dense matrices
vector | Main kernel class for generating OpenCL kernels for operations on/with viennacl::vector<> without involving matrices, multiple inner products, or element-wise operations other than addition or subtraction
vector_convert | Main kernel class for vector conversion routines (e.g. convert vector<int> to vector<float>)
vector_element | Main kernel class for generating OpenCL kernels for elementwise operations other than addition and subtraction on/with viennacl::vector<>
vector_multi_inner_prod | Main kernel class for generating OpenCL kernels for multiple inner products on/with viennacl::vector<>
amg_coarse_problem_too_large_exception |
amg_precond | AMG preconditioner class, can be supplied to solve()-routines
amg_precond< compressed_matrix< NumericT, AlignmentV > > | AMG preconditioner class, can be supplied to solve()-routines
amg_tag | A tag for algebraic multigrid (AMG). Used to transport information from the user to the implementation
bicgstab_solver |
bicgstab_tag | A tag for the stabilized Bi-conjugate gradient solver. Used for supplying solver parameters and for dispatching the solve() function
block_ilu_precond | A block ILU preconditioner class, can be supplied to solve()-routines
block_ilu_precond< compressed_matrix< NumericT, AlignmentV >, ILUTagT > | ILUT preconditioner class, can be supplied to solve()-routines
cg_solver |
cg_tag | A tag for the conjugate gradient Used for supplying solver parameters and for dispatching the solve() function
chow_patel_icc_precond | Parallel Chow-Patel ILU preconditioner class, can be supplied to solve()-routines
chow_patel_icc_precond< viennacl::compressed_matrix< NumericT, AlignmentV > > | Parallel Chow-Patel ILU preconditioner class, can be supplied to solve()-routines
chow_patel_ilu_precond | Parallel Chow-Patel ILU preconditioner class, can be supplied to solve()-routines
chow_patel_ilu_precond< viennacl::compressed_matrix< NumericT, AlignmentV > > | Parallel Chow-Patel ILU preconditioner class, can be supplied to solve()-routines
chow_patel_tag | A tag for incomplete LU and incomplete Cholesky factorization with static pattern (Parallel-ILU0, Parallel ICC0)
fspai_precond | Implementation of the Factored SParse Approximate Inverse Algorithm for a generic, uBLAS-compatible matrix type
fspai_precond< viennacl::compressed_matrix< ScalarType, MAT_ALIGNMENT > > | Implementation of the Factored SParse Approximate Inverse Algorithm for a ViennaCL compressed_matrix
gmres_solver |
gmres_tag | A tag for the solver GMRES. Used for supplying solver parameters and for dispatching the solve() function
ichol0_precond | Incomplete Cholesky preconditioner class with static pattern (ICHOL0), can be supplied to solve()-routines
ichol0_precond< compressed_matrix< NumericT, AlignmentV > > | ILU0 preconditioner class, can be supplied to solve()-routines
ichol0_tag | A tag for incomplete Cholesky factorization with static pattern (ILU0)
ilu0_precond | ILU0 preconditioner class, can be supplied to solve()-routines
ilu0_precond< viennacl::compressed_matrix< NumericT, AlignmentV > > | ILU0 preconditioner class, can be supplied to solve()-routines
ilu0_tag | A tag for incomplete LU factorization with static pattern (ILU0)
ilut_precond | ILUT preconditioner class, can be supplied to solve()-routines
ilut_precond< viennacl::compressed_matrix< NumericT, AlignmentV > > | ILUT preconditioner class, can be supplied to solve()-routines
ilut_tag | A tag for incomplete LU factorization with threshold (ILUT)
jacobi_precond | Jacobi preconditioner class, can be supplied to solve()-routines. Generic version for non-ViennaCL matrices
jacobi_precond< MatrixT, true > | Jacobi preconditioner class, can be supplied to solve()-routines
jacobi_tag | A tag for a jacobi preconditioner
lanczos_tag | A tag for the lanczos algorithm
lower_tag | A tag class representing a lower triangular matrix
mixed_precision_cg_tag | A tag for the conjugate gradient Used for supplying solver parameters and for dispatching the solve() function
nmf_config | Configuration class for the nonnegative-matrix-factorization algorithm. Specify tolerances, maximum iteration counts, etc., here
no_precond | A tag class representing the use of no preconditioner
power_iter_tag | A tag for the power iteration algorithm
row_scaling | Jacobi-type preconditioner class, can be supplied to solve()-routines. This is a diagonal preconditioner with the diagonal entries being (configurable) row norms of the matrix
row_scaling< MatrixType, true > | Jacobi preconditioner class, can be supplied to solve()-routines
row_scaling_tag | A tag for a row scaling preconditioner which merely normalizes the equation system such that each row of the system matrix has unit norm
spai_precond | Implementation of the SParse Approximate Inverse Algorithm for a generic, uBLAS-compatible matrix type
spai_precond< viennacl::compressed_matrix< ScalarType, MAT_ALIGNMENT > > | Implementation of the SParse Approximate Inverse Algorithm for a ViennaCL compressed_matrix
unit_lower_tag | A tag class representing a lower triangular matrix with unit diagonal
unit_upper_tag | A tag class representing an upper triangular matrix with unit diagonal
upper_tag | A tag class representing an upper triangular matrix
ocl | OpenCL backend. Manages platforms, contexts, buffers, kernels, etc
accelerator_tag | A tag identifying OpenCL devices as accelerators (e.g. Intel Xeon Phi)
backend | A backend that provides contexts for ViennaCL objects (vector, matrix, etc.)
build_program_failure | Exception thrown if the OpenCL program cannot be built, usually due to a syntax error in the OpenCL code
command_queue | A class representing a command queue
compiler_not_available | Exception thrown if the OpenCL just-in-time compiler is not available
context | Manages an OpenCL context and provides the respective convenience functions for creating buffers, etc
cpu_tag | A tag identifying OpenCL devices as CPUs
default_tag | A tag denoting the default OpenCL device type (SDK-specific)
device | A class representing a compute device (e.g. a GPU)
device_not_available | Exception thrown if the selected compute device is not available (maybe locked by another process)
device_not_found | Exception thrown in the case that a requested compute device was not found
DOUBLE_PRECISION_CHECKER | Ensures that double precision types are only allocated if it is supported by the device. If double precision is requested for a device not capable of providing that, a double_precision_not_provided_error is thrown
double_precision_not_provided_error | Exception thrown if the user wants to use double precision arithmetics, but the device does not support double precision
error_checker | An error reporting class. Template argument is used to avoid problems with external linkage
gpu_tag | A tag identifying OpenCL devices as GPUs
handle | Handle class the effectively represents a smart pointer for OpenCL handles
handle_inc_dec_helper | Helper for OpenCL reference counting used by class handle
image_format_mismatch | Exception thrown if there is a mismatch in image formats for the operands
image_format_not_supported | Exception thrown if the requested image format is not supported
invalid_arg_index | Exception thrown if the kernel argument index is invalid, e.g. an arg index larger than the number of kernel arguments was provided
invalid_arg_size | Exception thrown if the arguments to an OpenCL kernel have an invalid size e.g. not sizeof(cl_mem))
invalid_arg_value | Exception thrown if the kernel argument provided has an invalid value
invalid_binary | Exception thrown if the OpenCL binary (generated from the jit-compiler or loaded from some other location) won't work on the device (e.g. due to a lack of double precision support)
invalid_buffer_size | Exception thrown if the provided buffer size is invalid (e.g. zero)
invalid_build_options | Exception thrown if invalid build options are passed to the OpenCL just-in-time compiler
invalid_command_queue | Exception thrown if an invalid OpenCL command queue is provided to an OpenCL function
invalid_context | Exception thrown if an invalid OpenCL context is provided to an OpenCL function
invalid_device | Exception thrown if an invalid OpenCL device is provided to an OpenCL function
invalid_device_type | Exception thrown if an invalid device type is specified
invalid_event | Exception thrown if the provided event object (of type cl_event) is invalid
invalid_event_wait_list | Exception thrown if the provided event wait list is invalid
invalid_gl_object | Exception thrown if the provided OpenGL (not OpenCL) object is invalid
invalid_global_offset | Exception thrown if the provided offset for get_global_id() in OpenCL kernels is invalid
invalid_global_work_size | Exception thrown if the total number of work items is invalid (for example, not divisible by the number of work items per work group)
invalid_host_ptr | Exception thrown if the provided pointer to host memory is invalid
invalid_image_format_descriptor | Exception thrown if an invalid image format descriptor is provided
invalid_image_size | Exception thrown if the image size provided is invalid (e.g. zero)
invalid_kernel | Exception thrown if the provided kernel object (of type cl_kernel) is invalid (e.g. not initialized, from different context, or corrupted)
invalid_kernel_args | Exception thrown if the kernel arguments are invalid and/or do not fit the kernel parameter list
invalid_kernel_definition | Exception thrown if the kernel definition (number of arguments, argument types, etc.) is not the same for all devices for which the program has been built
invalid_kernel_name | Exception thrown if the provided kernel name is invalid (e.g. not part of the program provided)
invalid_mem_object | Exception thrown if an invalid OpenCL memory object (of type cl_mem) is passed to an OpenCL funciton
invalid_mip_level | Exception thrown if the provided miplevel is greater than zero, but the OpenGL implementation does not support creating from non-zero mipmap levels
invalid_operation | Exception thrown if interoperability of OpenCL with other frameworks collide
invalid_platform | Exception thrown if an invalid OpenCL platform is provided to an OpenCL function
invalid_program | Exception thrown if an OpenCL program object handle is invalid (e.g. not initialized)
invalid_program_executable | Exception thrown if there is no built program exectuable available for the device
invalid_property | Exception thrown if an invalid property is provided to a function (vague value)
invalid_queue_properties | Exception thrown if invalid OpenCL command queue properties are provided when creating a command queue
invalid_sampler | Exception thrown if an invalid sampler is provided for an image
invalid_value | Exception thrown is an invalid value is provided to an OpenCL function
invalid_work_dimension | Exception thrown if the work dimension is invalid (usually this means that the work dimension was set to be larger than three
invalid_work_group_size | Exception thrown if the number of work groups is invalid (usually this means that more than 256/512/768/1024 work groups have been specified, but the device(s) cannot support this
invalid_work_item_size | Exception thrown if the number of work items per work group invalid (usually this means that more than 256/512/768/1024 work items have been specified, but the device(s) cannot support this
kernel | Represents an OpenCL kernel within ViennaCL
kernel_not_found |
local_mem | A class representing local (shared) OpenCL memory. Typically used as kernel argument
map_failure | Exception thrown if the mapping of device memory to the host memory space failed
mem_copy_overlap | Exception thrown if the source buffer overlaps the destination buffer when copying from device memory to device memory
mem_object_allocation_failure | Exception thrown if a memory object cannot be allocated. Usually the requested memory buffer is simply too large
out_of_host_memory | Exception thrown if the host cannot provide enough memory for the datastructures in the OpenCL backend (temporary arrays, etc.) to perform the requested operation
out_of_resources | Exception thrown if the compute device is out of resources (either global memory, registers, etc.) for the requested operation
packed_cl_uint | Helper class for packing four cl_uint numbers into a uint4 type for access inside an OpenCL kernel
platform | Wrapper class for an OpenCL platform
profiling_info_not_available | Exception thrown if the OpenCL context does not have CL_QUEUE_PROFILING_ENABLE set, if the execution is not complete, or the event object is a user event object
program | Wrapper class for an OpenCL program
program_not_found |
queue_not_found |
type_to_string | Helper class for converting a type to its string representation
unknown_error | Exception thrown if the returned error cannot be resolved to some defined error constant. Might result from invalid sources, invalid memory operations, etc
result_of | Namespace containing many meta-functions
alignment | Retrieves the alignment from a vector. Deprecated - will be replaced by a pure runtime facility in the future
cl_type | Metafunction for deducing the OpenCL type for a numeric type, e.g. float -> cl_float
cpu_value_type | Helper meta function for retrieving the main RAM-based value type. Particularly important to obtain T from viennacl::scalar<T> in a generic way
size_type | Generic meta-function for retrieving the size_type associated with type T
value_type | Generic helper function for retrieving the value_type associated with type T
scheduler | Contains the scheduling functionality which allows for dynamic kernel generation as well as the fusion of multiple statements into a single kernel
result_of | Helper metafunctions used for the scheduler
num_nodes |
num_nodes< const matrix_expression< LHS, RHS, OP > > |
num_nodes< const scalar_expression< LHS, RHS, OP > > |
num_nodes< const vector_expression< LHS, RHS, OP > > |
num_nodes< matrix_expression< LHS, RHS, OP > > |
num_nodes< scalar_expression< LHS, RHS, OP > > |
num_nodes< vector_expression< LHS, RHS, OP > > |
numeric_type_id | Helper metafunction for obtaining the runtime type ID for a numerical type
op_type_info | Metafunction for querying type informations
lhs_rhs_element | A class representing the 'data' for the LHS or RHS operand of the respective node
op_element | Struct for holding the type family as well as the type of an operation (could be addition, subtraction, norm, etc.)
statement | The main class for representing a statement such as x = inner_prod(y,z); at runtime
statement_node | Main datastructure for an node in the statement tree
statement_not_supported_exception | Exception for the case the scheduler is unable to deal with the operation
tools | Namespace for various tools used within ViennaCL
detail | Contains implementation details for the tools. Usually not of interest for the library user
aux | Interface for the reference counter inside the shared_ptr
auximpl | Implementation helper for the reference counting mechanism inside shared_ptr
count | Reference counting class for the shared_ptr implementation
default_deleter | Default deleter class for a pointer. The default is to just call 'delete' on the pointer. Provide your own implementations for 'delete[]' and 'free'
sha1 |
CHECK_SCALAR_TEMPLATE_ARGUMENT | A guard that checks whether the floating point type of GPU types is either float or double
CONST_REMOVER | Removes the const qualifier from a type
const_sparse_matrix_adapted_iterator | A const iterator for sparse matrices of type std::vector<std::map<SizeT, NumericT> >
const_sparse_matrix_adapter | Adapts a constant sparse matrix type made up from std::vector<std::map<SizeT, NumericT> > to basic ublas-compatibility
CPU_SCALAR_TYPE_DEDUCER | Obtain the cpu scalar type from a type, including a GPU type like viennacl::scalar<T>
MATRIX_ITERATOR_INCREMENTER | Helper class for incrementing an iterator in a dense matrix
MATRIX_SIZE_DEDUCER | Deduces the size of the resulting vector represented by a vector_expression from the operands
normal_random_numbers | Random number generator for returning normally distributed values
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
sparse_matrix_adapted_iterator | A non-const iterator for sparse matrices of type std::vector<std::map<SizeT, NumericT> >
sparse_matrix_adapter | Adapts a non-const sparse matrix type made up from std::vector<std::map<SizeT, NumericT> > to basic ublas-compatibility
timer | Simple timer class based on gettimeofday (POSIX) or QueryPerformanceCounter (Windows)
uniform_random_numbers | Random number generator for returning uniformly distributed values in the closed interval [0, 1]
traits | Namespace providing traits-information as well as generic wrappers to common routines for vectors and matrices such as size() or clear()
tag_of | Generic base for wrapping other linear algebra packages
advanced_cuthill_mckee_tag | Tag for the advanced Cuthill-McKee algorithm (i.e. running the 'standard' Cuthill-McKee algorithm for a couple of different seeds)
basic_range | A range class that refers to an interval [start, stop), where 'start' is included, and 'stop' is excluded
basic_slice | A slice class that refers to an interval [start, stop), where 'start' is included, and 'stop' is excluded
circulant_matrix | A Circulant matrix class
col_iteration | A tag indicating iteration along increasing columns index of a matrix
column_major | A tag for column-major storage of a dense matrix
column_major_tag | Tag class for indicating column-major layout of a matrix. Not passed to the matrix directly, see row_major type
compressed_compressed_matrix | A sparse square matrix in compressed sparse rows format optimized for the case that only a few rows carry nonzero entries
compressed_matrix | A sparse square matrix in compressed sparse rows format
const_entry_proxy | A proxy class for a single element of a vector or matrix. This proxy should not be noticed by end-users of the library
const_vector_iterator | A STL-type const-iterator for vector elements. Elements can be accessed, but cannot be manipulated. VERY SLOW!!
context | Represents a generic 'context' similar to an OpenCL context, but is backend-agnostic and thus also suitable for CUDA and OpenMP
coordinate_matrix | 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
cuda_not_available_exception |
cuthill_mckee_tag | A tag class for selecting the Cuthill-McKee algorithm for reducing the bandwidth of a sparse matrix
ell_matrix | Sparse matrix class using the ELLPACK format for storing the nonzeros
enable_if | Simple enable-if variant that uses the SFINAE pattern
entry_proxy | A proxy class for a single element of a vector or matrix. This proxy should not be noticed by end-users of the library
gibbs_poole_stockmeyer_tag | Tag class for identifying the Gibbs-Poole-Stockmeyer algorithm for reducing the bandwidth of a sparse matrix
hankel_matrix | A Hankel matrix class
hyb_matrix | Sparse matrix class using a hybrid format composed of the ELL and CSR format for storing the nonzeros
identity_matrix | Represents a vector consisting of 1 at a given index and zeros otherwise. To be used as an initializer for viennacl::vector, vector_range, or vector_slize only
implicit_matrix_base | Base class for representing matrices where the individual entries are not all stored explicitly, e.g. identity_matrix<>
implicit_vector_base | Common base class for representing vectors where the entries are not all stored explicitly
is_addition | Helper metafunction for checking whether the provided type is viennacl::op_add (for addition)
is_any_dense_matrix | Checks for either matrix_base or implicit_matrix_base
is_any_dense_structured_matrix | Helper class for checking whether the provided type is any of the dense structured matrix types (circulant, Hankel, etc.)
is_any_scalar | Helper struct for checking whether the provided type represents a scalar (either host, from ViennaCL, or a flip-sign proxy)
is_any_sparse_matrix | Helper class for checking whether the provided type is one of the sparse matrix types (compressed_matrix, coordinate_matrix, etc.)
is_any_vector | Checks for a type being either vector_base or implicit_vector_base
is_circulant_matrix | Helper class for checking whether a matrix is a circulant matrix
is_compressed_matrix | Helper class for checking whether a matrix is a compressed_matrix (CSR format)
is_coordinate_matrix | Helper class for checking whether a matrix is a coordinate_matrix (COO format)
is_cpu_scalar | Helper struct for checking whether a type is a host scalar type (e.g. float, double)
is_division | Helper metafunction for checking whether the provided type is viennacl::op_div (for division)
is_eigen | Meta function which checks whether a tag is tag_eigen
is_ell_matrix | Helper class for checking whether a matrix is an ell_matrix (ELL format)
is_flip_sign_scalar | Helper struct for checking whether a type represents a sign flip on a viennacl::scalar<>
is_hankel_matrix | Helper class for checking whether a matrix is a Hankel matrix
is_hyb_matrix | Helper class for checking whether a matrix is a hyb_matrix (hybrid format: ELL plus CSR)
is_mtl4 | Meta function which checks whether a tag is tag_mtl4
is_primitive_type | Helper class for checking whether a type is a primitive type
is_product | Helper metafunction for checking whether the provided type is viennacl::op_prod (for products/multiplication)
is_row_major | Helper class for checking whether a matrix has a row-major layout
is_scalar | Helper struct for checking whether a type is a viennacl::scalar<>
is_sliced_ell_matrix | Helper class for checking whether a matrix is a sliced_ell_matrix (SELL-C- format)
is_stl | Meta function which checks whether a tag is tag_ublas
is_subtraction | Helper metafunction for checking whether the provided type is viennacl::op_sub (for subtraction)
is_toeplitz_matrix | Helper class for checking whether a matrix is a Toeplitz matrix
is_ublas | Meta function which checks whether a tag is tag_ublas
is_vandermonde_matrix | Helper class for checking whether a matrix is a Vandermonde matrix
is_viennacl | Meta function which checks whether a tag is tag_viennacl
matrix | A dense matrix class
matrix_base |
matrix_expression | Expression template class for representing a tree of expressions which ultimately result in a matrix
matrix_iterator | A dense matrix class
matrix_range | Class for representing non-strided submatrices of a bigger matrix A
matrix_range< matrix_range< MatrixType > > |
matrix_slice | Class for representing strided submatrices of a bigger matrix A
matrix_slice< matrix_range< MatrixType > > |
memory_exception | Exception class in case of memory errors
one_vector |
op_abs | A tag class representing the modulus function for integers
op_acos | A tag class representing the acos() function
op_add | A tag class representing addition
op_argmax | A tag class for representing the argmax() function
op_argmin | A tag class for representing the argmin() function
op_asin | A tag class representing the asin() function
op_assign | A tag class representing assignment
op_atan | A tag class representing the atan() function
op_atan2 | A tag class representing the atan2() function
op_ceil | A tag class representing the ceil() function
op_col_sum | A tag class representing the summation of all columns of a matrix
op_column | A tag class representing the extraction of a matrix column to a vector
op_cos | A tag class representing the cos() function
op_cosh | A tag class representing the cosh() function
op_div | A tag class representing division
op_element_binary | A tag class representing element-wise binary operations (like multiplication) on vectors or matrices
op_element_cast | A tag class representing element-wise casting operations on vectors and matrices
op_element_unary | A tag class representing element-wise unary operations (like sin()) on vectors or matrices
op_eq | A tag class representing equality
op_exp | A tag class representing the exp() function
op_fabs | A tag class representing the fabs() function
op_fdim | A tag class representing the fdim() function
op_flip_sign | A tag class representing sign flips (for scalars only. Vectors and matrices use the standard multiplication by the scalar -1.0)
op_floor | A tag class representing the floor() function
op_fmax | A tag class representing the fmax() function
op_fmin | A tag class representing the fmin() function
op_fmod | A tag class representing the fmod() function
op_geq | A tag class representing greater-than-or-equal-to
op_greater | A tag class representing greater-than
op_inner_prod | A tag class representing inner products of two vectors
op_inplace_add | A tag class representing inplace addition
op_inplace_sub | A tag class representing inplace subtraction
op_leq | A tag class representing less-than-or-equal-to
op_less | A tag class representing less-than
op_log | A tag class representing the log() function
op_log10 | A tag class representing the log10() function
op_mat_mat_prod | A tag class representing matrix-matrix products
op_matrix_diag | A tag class representing the (off-)diagonal of a matrix
op_max | A tag class representing the maximum of a vector
op_min | A tag class representing the minimum of a vector
op_mult | A tag class representing multiplication by a scalar
op_neq | A tag class representing inequality
op_norm_1 | A tag class representing the 1-norm of a vector
op_norm_2 | A tag class representing the 2-norm of a vector
op_norm_frobenius | A tag class representing the Frobenius-norm of a matrix
op_norm_inf | A tag class representing the inf-norm of a vector
op_pow | A tag class representing the power function
op_prod | A tag class representing matrix-vector products and element-wise multiplications
op_row | A tag class representing the extraction of a matrix row to a vector
op_row_sum | A tag class representing the summation of all rows of a matrix
op_sin | A tag class representing the sin() function
op_sinh | A tag class representing the sinh() function
op_sqrt | A tag class representing the sqrt() function
op_sub | A tag class representing subtraction
op_sum | A tag class representing the summation of a vector
op_tan | A tag class representing the tan() function
op_tanh | A tag class representing the tanh() function
op_trans | A tag class representing transposed matrices
op_vector_diag | A tag class representing a matrix given by a vector placed on a certain (off-)diagonal
row_iteration | A tag indicating iteration along increasing row index of a matrix
row_major | A tag for row-major storage of a dense matrix
row_major_tag | Tag class for indicating row-major layout of a matrix. Not passed to the matrix directly, see row_major type
scalar | This class represents a single scalar value on the GPU and behaves mostly like a built-in scalar type like float or double
scalar_expression | A proxy for scalar expressions (e.g. from inner vector products)
scalar_expression< LHS, RHS, op_inner_prod > | Specialization of a scalar expression for inner products. Allows for a final reduction on the CPU
scalar_expression< LHS, RHS, op_max > | Specialization of a scalar expression for max(). Allows for a final reduction on the CPU
scalar_expression< LHS, RHS, op_min > | Specialization of a scalar expression for norm_inf. Allows for a final reduction on the CPU
scalar_expression< LHS, RHS, op_norm_1 > | Specialization of a scalar expression for norm_1. Allows for a final reduction on the CPU
scalar_expression< LHS, RHS, op_norm_2 > | Specialization of a scalar expression for norm_2. Allows for a final reduction on the CPU
scalar_expression< LHS, RHS, op_norm_frobenius > | Specialization of a scalar expression for norm_frobenius. Allows for a final reduction on the CPU
scalar_expression< LHS, RHS, op_norm_inf > | Specialization of a scalar expression for norm_inf. Allows for a final reduction on the CPU
scalar_expression< LHS, RHS, op_sum > | Specialization of a scalar expression for norm_inf. Allows for a final reduction on the CPU
scalar_matrix | Represents a vector consisting of scalars 's' only, i.e. v[i] = s for all i. To be used as an initializer for viennacl::vector, vector_range, or vector_slize only
scalar_vector | Represents a vector consisting of scalars 's' only, i.e. v[i] = s for all i. To be used as an initializer for viennacl::vector, vector_range, or vector_slize only
sliced_ell_matrix | Sparse matrix class using the sliced ELLPACK with parameters C,
tag_eigen | A tag class for identifying types from Eigen
tag_mtl4 | A tag class for identifying types from MTL4
tag_none | A tag class for identifying 'unknown' types
tag_stl | A tag class for identifying types from the C++ STL
tag_ublas | A tag class for identifying types from uBLAS
tag_viennacl | A tag class for identifying types from ViennaCL
toeplitz_matrix | A Toeplitz matrix class
unit_vector | Represents a vector consisting of 1 at a given index and zeros otherwise
unknown_norm_exception |
vandermonde_matrix | A Vandermonde matrix class
vector |
vector_base | Common base class for dense vectors, vector ranges, and vector slices
vector_expression | An expression template class that represents a binary operation that yields a vector
vector_iterator | A STL-type iterator for vector elements. Elements can be accessed and manipulated. VERY SLOW!!
vector_range | Class for representing non-strided subvectors of a bigger vector x
vector_range< vector_range< VectorType > > |
vector_slice | Class for representing strided subvectors of a bigger vector x
vector_slice< vector_slice< VectorType > > |
vector_tuple | Tuple class holding pointers to multiple vectors. Mainly used as a temporary object returned from viennacl::tie()
zero_matrix | Represents a vector consisting of zeros only. To be used as an initializer for viennacl::vector, vector_range, or vector_slize only
zero_on_diagonal_exception |
zero_vector |
dense_matrix |
matrix_maker |
matrix_maker< boost::numeric::ublas::matrix< T >, F > |
matrix_maker< boost::numeric::ublas::matrix_range< MatrixT >, F > |
matrix_maker< boost::numeric::ublas::matrix_slice< MatrixT >, F > |
my_inserter |
op_assign |
op_minus_assign |
op_plus_assign |
testData |
vector_proxy |
ViennaCLBackend_impl | Generic backend for CUDA, OpenCL, host-based stuff
ViennaCLCUDABackend_impl |
ViennaCLHostBackend_impl |
ViennaCLHostScalar_impl |
ViennaCLMatrix_impl |
ViennaCLOpenCLBackend_impl |
ViennaCLScalar_impl |
ViennaCLVector_impl |