APDL矩阵运算介绍及常见矩阵函数索引

点击此处查看 ✿水哥原创ANSYS视频教程清单 ✿

水哥专属答疑服务已开通,点此此处查看详情

APDL除了强大的参数化功能外,其实还有一部分能力容易被人忽略,那就是其强大的矩阵运算能力,这一点在有限元商业软件中可谓是一骑绝尘,同时利用矩阵对象,用户还可以访问并修改ANSYS内部数据文件,如质量矩阵、刚度矩阵、结果文件等,这对于想做高级二次开发的用户来讲必不可少。本文就梳理下常见的矩阵运算函数,方便大家查阅和引用。

注意,这里的矩阵与我们平时常见的数组、变量等概念等不同,它们是不同的对象,也即如果用户需要访问矩阵,需要将矩阵转为数组对象,同理,如果用户需要对数据进行矩阵运算,需要提前将其转为矩阵对象。

最简单的分辨:大家耳熟能详的数组,定义后不可进行相互之间的运算,但是矩阵对象却可进行相乘、相加等操作。

举例:

现在以一个矩阵运算A*X=B为例,已知A和X,求矩阵B,并利用matlab来进行复核计算。

1、首先定义一个5*10的矩阵A和维度为10的向量X

finish
/clear
/prep7
*DMAT,A,d,Alloc,5,10
*VEC,X,d,Alloc,10
*Do,i,1,5
*DO,j,1,10
A(i,j)=i+j*2
X(j)=j
*enddo
*enddo

2、利用*MULT进行矩阵运算

*MULT,A,,X,,B

3、结果查看

!首先将矩阵对象转为数组对象
*export,B,APDL,B_array

点击ANSYS菜单栏Parameters->Array Parameters。找到B_array即可。

2343

4、Matlab计算复核,代码如下:

clear
clc
A=zeros(5,10);
X=zeros(10,1);
for i=1:5
for j=1:10
A(i,j)=i+j*2;
X(j)=j;
end
end
B=A*X;

6767

通过上述操作,用户可轻松实现在APDL中的矩阵运算,而不必借助于外部第三方软件,增加操作效率。

下面本文就列举常见的一些APDL矩阵运算函数,方便大家根据帮助来进行索引查询,不同的版本可能有局部差异,函数也在完善中,本文是以2024版本为例。

一、矩阵定义相关

1、*DMAT:创建稠密矩阵

2、*SMAT:创建稀疏矩阵

3、*VEC:创建向量

4、*FREE:删除所有矩阵,释放内存

二、矩阵操作命令

1、*AXPY: 矩阵加减,M2=v*M1 + w*M2

2、*COMP: 矩阵压缩

3、*DOT:向量点乘

5、*FFT: 傅里叶变换

6、*HPROD:哈达玛矢量积

7、*INIT:矩阵向量初始化

8、*INQUIRE:检索现有矩阵属性

8、*KRON:计算两个矩阵/向量的Kronecker积

9、*MERGE:合并矩阵或者向量

10、*MULT:矩阵乘积,M3 = M1(T1)*M2(T2).

11、*NRM: 计算矩阵或者向量的范数

12、*REMOVE:矩阵裁剪

13、*RENAME:矩阵重命名

14、*SCAL:矩阵的缩放

15、*SORT:矩阵元素排序

16、*XPL: 读取APDL内部文件

三、求解命令

1、*EIGEN:模态求解

2、*ITENGINE:迭代求解

3、*LSBAC: 求解

4、*LSENGINE:创建线性求解器

5、*LSFACTOR:矩阵分解

四、矩阵的输出

1、*PRINT:矩阵打印输出

2、*EXPORT:导出矩阵数据

欢迎搜索关注本站微信公众号:ANSYS结构院

欢迎给网站捐助,您的捐助是我坚持下去的动力!

© 版权声明
THE END
喜欢就支持一下吧
点赞0赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码

    暂无评论内容