0
函數中是否存在與C++(在任何API /庫中)等效的函數?在C++中等效的Matlab repmat函數
函數中是否存在與C++(在任何API /庫中)等效的函數?在C++中等效的Matlab repmat函數
不,因爲沒有標準的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;
}
任何免費提供的第三方矩陣庫,你可以建議? – iceman 2010-01-28 22:12:00
@iceman是的,根據我的回答,我一直在使用GSL。這是一個C庫,但你可以把它包裝起來(如果你想使用的話,甚至還有GSLWrap)。它非常有特色。然後是LAPACK和BLAS,但如果我理解正確,GSL會使用這些? – 2011-02-15 02:16:46