对于Matlab repmat函数,c(在任何API /库中)是否有等价物?
不,因为没有标准的C矩阵类可以复制 . 如果您使用第三方矩阵库(许多存在),您可能会发现它具有该功能,但是如果您使用自己的矩阵类,则还需要提供此功能 .
我正在使用GSL,我有这样的事情:
gsl_matrix * RepMatHorizAlloc(gsl_vector * v, size_t k) { gsl_matrix *mat = gsl_matrix_alloc(k, v->size); for (size_t i = 0; i < k; ++i) { gsl_matrix_set_row(mat, i, v); } return mat; } gsl_matrix * RepMatVertAlloc(gsl_vector * v, size_t k) { gsl_matrix *mat = gsl_matrix_alloc(v->size, k); for (size_t i = 0; i < k; ++i) { gsl_matrix_set_col(mat, i, v); } return mat; }
2 回答
不,因为没有标准的C矩阵类可以复制 . 如果您使用第三方矩阵库(许多存在),您可能会发现它具有该功能,但是如果您使用自己的矩阵类,则还需要提供此功能 .
我正在使用GSL,我有这样的事情: