乘法二维阵列 我对C++程序设计语言相当熟悉。目前,我试图完成的是从MATLAB获得一个简短的*输入,创建它的转置和乘法。我在尝试乘法时遇到了问题。我正在从MATLAB中获取h_原始数据,并进行一些计算以获得sh_数据。这看起来是正确的。接下来,我将创建一
乘法二维阵列 我对C++程序设计语言相当熟悉。目前,我试图完成的是从MATLAB获得一个简短的*输入,创建它的转置和乘法。我在尝试乘法时遇到了问题。我正在从MATLAB中获取h_原始数据,并进行一些计算以获得sh_数据。这看起来是正确的。接下来,我将创建一个同样正确的转置dst。找到协方差矩阵给我带来了麻烦。该协方差矩阵应与cov_矩阵=sh_数据*sh_数据’等价;感谢您的帮助乘法二维阵列 我对C++程序设计语言相当熟悉。目前,我试图完成的是从MATLAB获得一个简短的*输入,创建它的转置和乘法。我在尝试乘法时遇到了问题。我正在从MATLAB中获取h_原始数据,并进行一些计算以获得sh_数据。这看起来是正确的。接下来,我将创建一,c++,matrix-multiplication,C++,Matrix Multiplication,乘法二维阵列 我对C++程序设计语言相当熟悉。目前,我试图完成的是从MATLAB获得一个简短的*输入,创建它的转置和乘法。我在尝试乘法时遇到了问题。我正在从MATLAB中获取h_原始数据,并进行一些计算以获得sh_数据。这看起来是正确的。接下来,我将创建一个同样正确的转置dst。找到协方差矩阵给我带来了麻烦。该协方差矩阵应与cov_矩阵=sh_数据*sh_数据’等价;感谢您的帮助 for (int numEl = 0; numEl < elements; numEl++) { in
for (int numEl = 0; numEl < elements; numEl++) {
int shift_idx = tof[1 + (1 * pix_x * numEl)];
for (int sdex = 0; sdex < shift_idx; sdex++) {
for (int p = 0; p < nrows; p++) {
sh_data[p + (numEl*nrows)] = h_raw[(p + sdex) + (numEl*nrows)];
}
}
}
// finding the transpose
for (int n = 0; n < nrows*ncols; n++) {
int i = n / ncols;
int j = n % ncols;
dst[n] = sh_data[nrows*j + i];
}
// calculating the covariance matrix
for (int nel = 0; nel < elements; nel++) {
for (int k = 0; k < nrows; k++) {
cov_matrix[(nel*elements)+nel] += dst[(k*elements)+nel] * sh_data[k+(nel*nrows)];
}
}
for(int-numEl=0;numEl
您将使用转置和普通矩阵乘法,但实际上,如果您从头开始编写,则将转置乘法作为一个单独的操作更容易实现,您会接受基于此的答案吗?是的,当然!我很想知道是否有更简单的方法。就像我说的,我对C++非常陌生,所以任何帮助都会非常感谢。你要进行转置和一个正常的矩阵乘法运算,但是实际上,如果你从头开始写,那么通过一个操作就可以更容易地实现转置乘法,你会接受一个基于这个的答案吗?是的,当然!我很想知道是否有更简单的方法。就像我说的,我对C++非常陌生,所以任何帮助都会非常感谢。