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

文摘   2024-09-04 09:00   重庆  

欢迎阅读水哥原创文章,历年原创文章请点击:

本公众号历年原创文章汇总-2024.05

更多水哥原创课程,请点击:

水哥原创课程清单


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即可。

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


clearclcA=zeros(5,10);X=zeros(10,1);for i=1:5  for j=1:10    A(i,j)=i+j*2;    X(j)=j;  endendB=A*X;

通过上述操作,用户可轻松实现在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:导出矩阵数据


如果觉得这个实用,欢迎转载,分享!

更多水哥原创课程,请点击:

       水哥原创课程清单

更多有限元学习资源,请访问水哥博客:FSCAE.COM

祝好

ANSYS结构院

      2024.09.03


ANSYS结构院
ANSYS使用心得及操作技巧,B站Up主水哥ANSYS, 有限元学习资源分享,公众号官网FSCAE.COM
 最新文章