Stan Math Library  2.20.0
reverse mode automatic differentiation
sub_col.hpp
Go to the documentation of this file.
1 #ifndef STAN_MATH_PRIM_MAT_FUN_SUB_COL_HPP
2 #define STAN_MATH_PRIM_MAT_FUN_SUB_COL_HPP
3 
7 
8 namespace stan {
9 namespace math {
10 
20 template <typename T>
21 inline Eigen::Matrix<T, Eigen::Dynamic, 1> sub_col(
22  const Eigen::Matrix<T, Eigen::Dynamic, Eigen::Dynamic>& m, size_t i,
23  size_t j, size_t nrows) {
24  check_row_index("sub_col", "i", m, i);
25  if (nrows > 0)
26  check_row_index("sub_col", "i+nrows-1", m, i + nrows - 1);
27  check_column_index("sub_col", "j", m, j);
28  return m.block(i - 1, j - 1, nrows, 1);
29 }
30 
31 } // namespace math
32 } // namespace stan
33 #endif
Eigen::Matrix< T, Eigen::Dynamic, 1 > sub_col(const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t i, size_t j, size_t nrows)
Return a nrows x 1 subcolumn starting at (i-1, j-1).
Definition: sub_col.hpp:21
void check_column_index(const char *function, const char *name, const Eigen::Matrix< T_y, R, C > &y, size_t i)
Check if the specified index is a valid column of the matrix.
void check_row_index(const char *function, const char *name, const Eigen::Matrix< T_y, R, C > &y, size_t i)
Check if the specified index is a valid row of the matrix This check is 1-indexed by default...

     [ Stan Home Page ] © 2011–2018, Stan Development Team.