三维矩阵按页相乘:

问题:两个三维矩阵,按页进行矩阵相乘。

A = rand(a1,a2,n);
B = rand(a2,b2,n);
C = zeros(a1,b2,n);
for i=1:n
C(:,:,i) = A(:,:,i) *B(:,:,i) ;end 

matlab工具包:mtimes

下载地址:

(1)mathworks网站:https://www.mathworks.com/matlabcentral/fileexchange/25977-mtimesx-fast-matrix-multiply-with-multi-dimensional-support

(2)github网站:https://github.com/cybertk/mtimesx

下载压缩包,解压后,找到src中的mtimesx_build.m文件,将第166行的代码修改为:

mexopts = [prefdir 'mex_C_win64.xml'];

或者

mexopts = [prefdir 'mex_C++_win64.xml'];

修改后,运行mtimesx_build.m,运行成功后显示如下:

在运行mtimesx_build.m后,有可能会出现错误,如下:

在文件夹“C:UsersAdministratorAppDataRoamingMathWorksMATLABR2018b”中查找,并没有找到文件mex_C_win64.xml或者mex_C++_win64.xml。

解决办法:首先确保安装了Visual Studio编译器,然后在Matlab命令行窗口执行指令:

mex -setup C

或者

mex -setup C++

执行命令后,会显示

再去目录...MathWorksMATLABR2018b中,可看到文件mex_C_win64.xml或者mex_C++_win64.xml已经存在。

再次运行mtimesx_build.m,问题解决。

三维矩阵按页运算:

A=rand(2,3,5);
B=rand(3,4,5);
C=mtimesx(A,B);

那么得到的C(2,4,5)维度矩阵。

三维矩阵和二维矩阵相乘

问题:三维矩阵按页和一个二维矩阵按列相乘。

A = rand(a1,a2,n);
B = rand(a2,n);
C = zeros(a1,n);
for i=1:n     C(:,i) = A(:,:,i) *B(:,i) ;
end 

方法1:for循环

for i=1:nC(:,i) = A(:,:,i) *B(:,i) ;
end 

方法2:arrayfun方法

[m,n] = meshgrid( 1:n, 1:a1 );
temp = arrayfun( @(x,y)A(x,:,y)*B(:,y), n(:), m(:) );
C = reshape(tempfibn, 3, []); 

方法3:将二维矩阵扩展成三维矩阵

tempB= reshape(B, a2,1,n);
tempC= mtimesx(A, tempB);
C = reshape(tempC, 3, []); 

matlab二维度矩阵转化三维_Matlab三维矩阵运算相关推荐

  1. matlab 二维矩阵变成一维矩阵

    matlab 二维矩阵变成一维矩阵 1.一维变二维: https://blog.csdn.net/qq_40584593/article/details/90691276 reshape 2.a(:) ...

  2. matlab二维色图,matlab二维矩阵用颜色图像显示 + 色bar位置

    需求:二维矩阵用颜色图像显示:并且将对应的colorbar放置在图像的下面,并且要为"colorbar加标题"! A = zeros(1000,1000); % 假设有这样的一个1 ...

  3. matlab二维矩阵可视化几种方法

    目录 一.pcolor() 二.imagesc() 三.spy() 四.文末彩蛋 一.pcolor() 以一个100x100块对角矩阵B为例 1:原生pcolor()可以在矩阵维度不大时进行可视化,带 ...

  4. matlab怎么将一个矩阵转化为灰度图

    用三个函数即可,第一个函数imagesc().第二个colormap()函数.第三个函数为flipud函数(): imagesc(A)将矩阵A中的元素数值按大小转化为不同颜色,并在坐标轴对应位置处以这 ...

  5. matlab如何将三维转为二维_matlab 三维矩阵转二维矩阵(转)

    matlab中三维数组顺序是:行.列.页.二维数组只有行.列.如果两只之间赋值,有一个维数缩减问题需要注意. 例如: A3是三维数组,A3(:,:,1)=[1,2,3;4,5,6]; A3(:,:,2 ...

  6. matlab二维、三维矩阵转换、排序、转置等问题

    1.matlab二维转换为三维矩阵 这里用到reshape函数 格式为AA1=reshape(A1,[行,列,页]) 如下所示 A1=[2 2 2 2 2.5 2.5 2.5 2.5 1.8 1.8 ...

  7. matlab三维数组与二维矩阵相乘问题

    Matlab三维数组与二维矩阵相乘问题 近来在搞一个改进近场music算法的仿真问题,用matlab进行二维搜索的时候写了很多for循环,导致运行速度极慢.考虑到matlab语言本身的矩阵运算特点,改 ...

  8. MATLAB对一个二维矩阵画三维图

    1 准备好二维矩阵,比如我这有个3x16的矩阵叫SFW1 2 画三维图,一句代码就OK mesh(SFW1) 3 结果如下

  9. matlab不用循环,三维矩阵按横切页(垂直于纸面且)向右展开为2维,即(i,j,:)展开。将二维矩阵每行顺序不变依次向左复制,如:(a,b,c)复制为(a,a,a,b,b,b,c,c,c)

    概述:将将二维矩阵每行顺序不变依次向左复制和三维矩阵按横切页(垂直于纸面且)向右展开为2维其中的主要计算方法一致,所以放在一起说明.复制的主要要点是将二维矩阵扩展为三维>>>展开三维 ...

最新文章

  1. Error:java: 错误: 不支持发行版本 14
  2. XDU 翼讯账号算法
  3. 为了实现在线库的复杂查询,你还在双写吗?
  4. Eclipse 插件用法:Eclipse 利用 Amateras UML 生成 Java 类图、时序图和 UML 类图
  5. JMS学习三(ActiveMQ消息的可靠性)
  6. python命令行输入函数回退_Anaconda--成功解决python2与python3之间随意切换的问题!...
  7. 线性分类模型python_python SVM 线性分类模型的实现
  8. php调用sqlldr失败,php system()命令调用sqlplus导致php挂起
  9. webcontent 与 webroot 问题解决
  10. 2018.7.11 昨天晚上的列表(字典)嵌套题
  11. 在8X8的棋盘上分布着n个骑士,他们想约在某一个格中聚会。骑士每天可以像国际象棋中的马那样移动一次,可以从中间像8个方向移动(当然不能走出棋盘),请计算n个骑士的最早聚会地点和要走多少天。要求尽早聚会
  12. poco mysql 中文_Poco数据库操作用户手册(一)
  13. layim框架+websocket即时通讯功能
  14. CYUSB3014类别
  15. python计算日期间的差值,python 计算时间、日期差值类
  16. 通过wireshark抓包对nmap一些原理分析
  17. highlight代码高亮
  18. 1、债权融资 - 打造企业上市系列文章
  19. photoshop2021正式版上线,photoshop 2021 mac
  20. python血压测量程序代码_基于单片机的血压测量

热门文章

  1. 90后CV男神Workshop | 祥雨带你畅聊Model设计新视角
  2. ICPR 2020国际学术竞赛:大规模无噪声精细商品图像识别
  3. Self-Orthogonality Module:一个即插即用的核正交化模块
  4. 实录分享 | 计算未来轻沙龙:计算机视觉与图形学(PPT下载)
  5. 程序员35岁之后的出路_我35岁,被裁员,开始给程序员规划人生
  6. InfluxData【环境搭建 02】时序数据库客户端 InfluxCLI 最新版本安装启动验证(在线安装+离线安装及各版本下载地址)
  7. 《移动项目实践》实验报告——Android Studio环境搭建
  8. TensorFlow 教程——电影评论文本分类
  9. Vue + Element UI + Moment.js——el-table-column的时间戳格式转换解决方案
  10. redis+springboot实现购物车+商品数据修改实例