matlab 三维矩阵向量化,向量化 - MATLAB & Simulink - MathWorks 中国

数组运算

数组运算符对数据集中的所有元素执行相同的运算。这些类型的运算用于重复计算。例如,假设您通过记录各圆锥体的直径 (D) 和高度 (H) 来收集这些圆锥体的体积 (V)。如果您只收集一个圆锥体的信息,则可以只计算该圆锥体的体积:

V = 1/12*pi*(D^2)*H;

现在,收集 10,000 个圆锥体的信息。向量 D 和 H 均包含 10,000 个元素,并且您需要计算 10,000 个体积。在绝大多数编程语言中,您需要设置类似于以下 MATLAB 代码的循环:

for n = 1:10000

V(n) = 1/12*pi*(D(n)^2)*H(n));

end

借助 MATLAB,您可以使用与标量情形类似的语法对每个向量元素执行计算:

% Vectorized Calculation

V = 1/12*pi*(D.^2).*H;

注意

在运算符 *、/ 和 ^ 之前放置句点 (.),将其转换为数组运算符。

借助数组运算符,您还能够组合不同维度的矩阵。这样自动扩展大小为 1 的维度有助于对网格创建、矩阵和向量运算等进行向量化处理。

假设矩阵 A 代表考试分数,各种行表示不同的班级。您需要计算每个班级的平均分数与各分数的差。使用循环,该运算如下所示:

A = [97 89 84; 95 82 92; 64 80 99;76 77 67;...

88 59 74; 78 66 87; 55 93 85];

mA = mean(A);

B = zeros(size(A));

for n = 1:size(A,2)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值