Automatic Differentiation
 
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Loading...
Searching...
No Matches
tridiagonalization.hpp File Reference

Go to the source code of this file.

Namespaces

namespace  stan
 The lgamma implementation in stan-math is based on either the reentrant safe lgamma_r implementation from C or the boost::math::lgamma implementation.
 
namespace  stan::math
 Matrices and templated mathematical functions.
 
namespace  stan::math::opencl_kernels
 

Functions

__kernel void stan::math::opencl_kernels::tridiagonalization_householder (__global double *P, __global double *V, __global double *q_glob, const int P_rows, const int V_rows, const int j, const int k)
 Calculates householder vector and first element of the vector v.
 
__kernel void stan::math::opencl_kernels::tridiagonalization_v_step_1 (const __global double *P, const __global double *V, __global double *Uu, __global double *Vu, const int P_rows, const int V_rows, const int k)
 Calculates first part of constructing the vector v: Uu = Pb * u and Vu = Vl * u.
 
__kernel void stan::math::opencl_kernels::tridiagonalization_v_step_2 (const __global double *P, __global double *V, const __global double *Uu, const __global double *Vu, const int P_rows, const int V_rows, const int k, const int j)
 Second part in constructing vector v: v = Pb * u + V * Uu + U * Vu.
 
__kernel void stan::math::opencl_kernels::tridiagonalization_v_step_3 (__global double *P, __global double *V, __global double *q, const int P_rows, const int V_rows, const int k, const int j)
 Third part in constructing vector v: v-=0.5*(v^T*u)*u, where u is the householder vector.
 

Variables

const kernel_cl< in_out_buffer, in_out_buffer, out_buffer, int, int, int, int > stan::math::opencl_kernels::tridiagonalization_householder ("tridiagonalization_householder", {tridiagonalization_householder_kernel_code}, {{"REDUCTION_STEP_SIZE", 4}, {"LOCAL_SIZE_", 1024}})
 
const kernel_cl< in_buffer, in_buffer, out_buffer, out_buffer, int, int, int > stan::math::opencl_kernels::tridiagonalization_v_step_1 ("tridiagonalization_v_step_1", {tridiagonalization_v_step_1_kernel_code}, {{"REDUCTION_STEP_SIZE", 4}, {"LOCAL_SIZE_", 64}})
 
const kernel_cl< in_buffer, out_buffer, in_buffer, in_buffer, int, int, int, int > stan::math::opencl_kernels::tridiagonalization_v_step_2 ("tridiagonalization_v_step_2", {tridiagonalization_v_step_2_kernel_code}, {{"REDUCTION_STEP_SIZE", 4}, {"LOCAL_SIZE_", 64}})
 
const kernel_cl< in_out_buffer, in_out_buffer, out_buffer, int, int, int, int > stan::math::opencl_kernels::tridiagonalization_v_step_3 ("tridiagonalization_v_step_3", {tridiagonalization_v_step_3_kernel_code}, {{"REDUCTION_STEP_SIZE", 4}, {"LOCAL_SIZE_", 1024}})