template<bool propto, typename T_y_cl , typename T_x_cl , typename T_alpha_cl , typename T_beta_cl , typename T_phi_cl , 
require_all_prim_or_rev_kernel_expression_t< T_x_cl, T_y_cl, T_alpha_cl, T_beta_cl, T_phi_cl > *  = nullptr> 
 
  
  
      
        
          | return_type_t< T_x_cl, T_alpha_cl, T_beta_cl, T_phi_cl > stan::math::neg_binomial_2_log_glm_lpmf  | 
          ( | 
          const T_y_cl &  | 
          y,  | 
         
        
           | 
           | 
          const T_x_cl &  | 
          x,  | 
         
        
           | 
           | 
          const T_alpha_cl &  | 
          alpha,  | 
         
        
           | 
           | 
          const T_beta_cl &  | 
          beta,  | 
         
        
           | 
           | 
          const T_phi_cl &  | 
          phi  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
Returns the log PMF of the Generalized Linear Model (GLM) with Negative-Binomial-2 distribution and log link function. 
The idea is that neg_binomial_2_log_glm_lpmf(y, x, alpha, beta, phi) should compute a more efficient version of neg_binomial_2_log_lpmf(y, alpha + x * beta, phi) by using analytically simplified gradients. If containers are supplied, returns the log sum of the probabilities. This is an overload of the GLM in prim/prob/neg_binomial_2_log_glm_lpdf.hpp that is implemented in OpenCL. 
- Template Parameters
 - 
  
    | T_y_cl | type of independent variable; this can be a matrix_cl vector of intercepts or a single value (wich will be broadcast - used for all instances);  | 
    | T_x_cl | type of the design matrix  | 
    | T_alpha_cl | type of the intercept(s); this can be a vector (of the same length as y) of intercepts or a single value (for models with constant intercept);  | 
    | T_beta_cl | type of the weight vector; this can also be a scalar;  | 
    | T_phi_cl | type of the (positive) precision(s); this can be a vector (of the same length as y, for heteroskedasticity) or a scalar.  | 
  
   
- Parameters
 - 
  
    | y | failures count scalar or vector parameter on OpenCL device. If it is a scalar it will be broadcast - used for all instances.  | 
    | x | design matrix on OpenCL device. This overload does not support broadcasting of a row vector x!  | 
    | alpha | intercept (in log odds)  | 
    | beta | weight vector  | 
    | phi | (vector of) precision parameter(s)  | 
  
   
- Returns
 - log probability or log sum of probabilities 
 
- Exceptions
 - 
  
    | std::invalid_argument | if container sizes mismatch.  | 
    | std::domain_error | if x, beta or alpha is infinite.  | 
    | std::domain_error | if phi is infinite or non-positive.  | 
    | std::domain_error | if y is negative.  | 
  
   
Definition at line 69 of file neg_binomial_2_log_glm_lpmf.hpp.