Stan  2.5.0
probability, sampling & optimization
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
block.hpp
Go to the documentation of this file.
1 #ifndef STAN__MATH__MATRIX__BLOCK_HPP
2 #define STAN__MATH__MATRIX__BLOCK_HPP
3 
7 
8 namespace stan {
9  namespace math {
10 
20  template <typename T>
21  inline
22  Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>
23  block(const Eigen::Matrix<T,Eigen::Dynamic,Eigen::Dynamic>& m,
24  size_t i, size_t j, size_t nrows, size_t ncols) {
25  check_row_index("block(%1%)",i,m,"i",(double*)0);
26  check_row_index("block(%1%)",i+nrows-1,m,"i+nrows-1",(double*)0);
27  check_column_index("block(%1%)",j,m,"j",(double*)0);
28  check_column_index("block(%1%)",j+ncols-1,m,"j+ncols-1",(double*)0);
29  return m.block(i - 1,j - 1,nrows,ncols);
30  }
31 
32  }
33 }
34 #endif
Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > block(const Eigen::Matrix< T, Eigen::Dynamic, Eigen::Dynamic > &m, size_t i, size_t j, size_t nrows, size_t ncols)
Return a nrows x ncols submatrix starting at (i-1,j-1).
Definition: block.hpp:23
bool check_column_index(const char *function, size_t i, const Eigen::Matrix< T_y, R, C > &y, const char *name, T_result *result)
Return true if the specified index is a valid column of the matrix.
bool check_row_index(const char *function, size_t i, const Eigen::Matrix< T_y, R, C > &y, const char *name, T_result *result)
Return true if the specified index is a valid row of the matrix.

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