错误使用 .* 矩阵维度必须一致。 出错 quanguocheng (line 37) center_of_mass = sum(selected_points(:, 1:3).*selected_points(:, 4), 1) ./ sum(selected_points(:, 4));
时间: 2024-03-04 11:48:43 浏览: 13
这个错误通常是因为矩阵维度不一致导致的。在这里,可能是因为 `selected_points` 矩阵的维度不正确造成的。请检查 `selected_points` 的维度是否正确,即是否是一个 n 行 4 列的矩阵,其中 n 表示符合要求的点的个数。
如果 `selected_points` 矩阵的维度正确,那么这个错误可能是由于矩阵的乘法运算符 `.*` 左右两边的矩阵维度不匹配导致的。在这里,我们需要将 `selected_points(:, 1:3)` 和 `selected_points(:, 4)` 的维度进行调整,使其能够进行乘法运算。可以使用 `repmat` 函数将 `selected_points(:, 4)` 扩展成一个 n 行 3 列的矩阵,然后再进行乘法运算。代码如下:
```matlab
% 计算符合要求的点的质心坐标和质量大小
weights = repmat(selected_points(:, 4), 1, 3);
center_of_mass = sum(selected_points(:, 1:3).*weights, 1) ./ sum(selected_points(:, 4));
mass_sum = sum(selected_points(:, 4));
```
这样就可以解决这个错误了。
相关问题
错误使用 .* 矩阵维度必须一致。 出错 quanguocheng (line 44) centroid = sum(selected_points .* selected_masses) / sum(selected_masses);
这个错误是因为 `selected_points` 和 `selected_masses` 的维度不同导致的。根据代码,`selected_points` 是一个 Nx3 的数组,而 `selected_masses` 是一个 Nx1 的数组。
为了解决这个问题,可以将 `selected_masses` 的维度调整为 Nx3 的数组,使其与 `selected_points` 的维度一致。可以使用 `repmat` 函数来实现:
```matlab
selected_masses = repmat(selected_masses, 1, 3);
centroid = sum(selected_points .* selected_masses) / sum(selected_masses(:));
```
其中,`repmat` 函数可以将 `selected_masses` 复制为 Nx3 的数组。然后,`sum(selected_masses(:))` 可以将复制后的数组展开为一个列向量,以便进行求和。
错误使用 .* 矩阵维度必须一致。 出错 FYR1 (line 20) ywin = y .* w';
这个错误通常是由于矩阵维度不匹配引起的。在这段代码中,y 是一个列向量,w 是一个行向量,因此在使用 ".*" 进行元素级乘法时,它们的维度不匹配,会导致错误。
要解决这个问题,可以对 w 进行转置,使其变成与 y 维度相同的列向量,即 w' 变成 w'(:)。修改后的代码如下:
```
w = hann(Nfft);
ywin = y .* w(:); % 将 w 转换为列向量
Ywin = fft(ywin, Nfft);
Awin = abs(Ywin);
% 绘制平滑后的幅度谱图
figure;
plot(F, Awin);
xlabel('Frequency (Hz)');
ylabel('Amplitude');
title('Smoothed Magnitude Spectrum of Recording');
```
这样修改后,代码应该可以正确运行并绘制出平滑后的幅度谱图。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)