1#ifndef STAN_MATH_OPENCL_CHOLESKY_DECOMPOSE_HPP
2#define STAN_MATH_OPENCL_CHOLESKY_DECOMPOSE_HPP
14#include <CL/opencl.hpp>
42template <
typename T,
typename = require_
floating_po
int_t<T>>
56 }
catch (
const cl::Error&
e) {
76 const int block_subset = A.
rows() -
block;
const matrix_cl_view & view() const
Represents an arithmetic matrix on the OpenCL device.
The API to access the methods and values in opencl_context_base.
void check_opencl_error(const char *function, const cl::Error &e)
Throws the domain error with specifying the OpenCL error that occurred.
opencl_context_base::tuning_struct & tuning_opts() noexcept
Returns the thread block size for the Cholesky Decompositions L_11.
auto block_zero_based(T &&a, int start_row, int start_col, int rows, int cols)
Block of a kernel generator expression.
auto transpose(Arg &&a)
Transposes a kernel generator expression.
const kernel_cl< in_out_buffer, int > cholesky_decompose("cholesky_decompose", {indexing_helpers, cholesky_decompose_kernel_code})
See the docs for cholesky_decompose() .
plain_type_t< T > tri_inverse(const T &A)
Computes the inverse of a triangular matrix.
void cholesky_decompose(matrix_cl< T > &A)
Performs an in-place computation of the lower-triangular Cholesky factor (i.e., matrix square root) o...
matrix_cl< T > multiply_transpose(const matrix_cl< T > &A)
Computes the product of a square OpenCL matrix with its transpose.
static constexpr double e()
Return the base of the natural logarithm.
auto block(T_x &&x, size_t i, size_t j, size_t nrows, size_t ncols)
Return a nrows x ncols submatrix starting at (i-1, j-1).
The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation ...
int cholesky_min_L11_size