1 #ifndef STAN__MATH__MATRIX__APPEND__COL_HPP
2 #define STAN__MATH__MATRIX__APPEND__COL_HPP
21 template <
typename T1,
typename T2,
int R1,
int C1,
int R2,
int C2>
22 inline Matrix<typename return_type<T1, T2>::type, Dynamic, Dynamic>
24 const Matrix<T2, R2, C2> & B) {
34 Matrix<typename return_type<T1, T2>::type, Dynamic, Dynamic>
35 result(Arows, Acols+Bcols);
36 for (
int j = 0; j < Acols; j++)
37 for (
int i = 0; i < Arows; i++)
38 result(i, j) = A(i, j);
40 for (
int j = Acols, k = 0; k < Bcols; j++, k++)
41 for (
int i = 0; i < Arows; i++)
42 result(i, j) = B(i, k);
47 template <
typename T1,
typename T2,
int C1,
int C2>
48 inline Matrix<typename return_type<T1, T2>::type, 1, Dynamic>
50 const Matrix<T2, 1, C2> & B) {
53 Matrix<typename return_type<T1, T2>::type, 1, Dynamic>
54 result(Asize + Bsize);
55 for (
int i = 0; i < Asize; i++)
57 for (
int i = 0, j = Asize; i < Bsize; i++, j++)
67 template <
typename T,
int R1,
int C1,
int R2,
int C2>
68 inline Matrix<T, Dynamic, Dynamic>
70 const Matrix<T, R2, C2> & B) {
72 A.rows(),
"rows of A",
73 B.rows(),
"rows of B",
76 Matrix<T, Dynamic, Dynamic>
77 result(A.rows(), A.cols()+B.cols());
83 template <
typename T,
int C1,
int C2>
84 inline Matrix<T, 1, Dynamic>
86 const Matrix<T, 1, C2> & B) {
88 result(A.size()+B.size());
bool check_size_match(const char *function, T_size1 i, const char *name_i, T_size2 j, const char *name_j, T_result *result)
Matrix< typename return_type< T1, T2 >::type, Dynamic, Dynamic > append_col(const Matrix< T1, R1, C1 > &A, const Matrix< T2, R2, C2 > &B)