首页/文章/ 详情

APDLMath箱内复矩阵及其运算

3年前浏览1289

复矩阵(complex matrix)是指元素中含有复数的矩阵。

MAPDL的绝大多数运算都支持复矩阵和复向量运算,其运算方法与实矩阵相同。

复矩阵(行、列)可以看做是三维的实矩阵,即3D的“面1”表示复矩阵的实部元素,而“面2”表示复矩阵的虚部元素。复矩阵AC(m*n)看做AC(m*n*2)便可赋值或提取复矩阵的元素值,如AC(I,J,1)为复矩阵的元素(I,J)实部值,而AC(I,J,2)就是复矩阵的元素(I,J)虚部值。

下面以命令流方式给出复矩阵的各种运算及结果(图1)。

!定义AC_M为2*3的复矩阵

*DMAT,AC_M,Z,ALLOC,2,3

!对AC_M赋值,可用APDL方式

*DO,I,1,2

*DO,J,1,3

AC_M(I,J,1)=I J/10

AC_M(I,J,2)=I J/10 J/100 J/1000

*ENDDO

*ENDDO!

*PRINT,AC_M

!元素值类似第2行第1列的2.1 2.111I

!比例缩放(实、虚同缩放)

*SCAL,AC_M,10

!加减运算-乘常数

*AXPY,,,,0.1,,AC_M

!加减运算-乘复数

*AXPY,,,,1,1,AC_M

!复矩阵相乘

*DMAT,BC_M,Z,ALLOC,3,2

*INIT,BC_M,CONST,1,2

*MULT,AC_M,,BC_M,,CC_M

!复矩阵扩展与裁剪

*MERGE,CC_M,AC_M,3,COL

*REMOVE,CC_M,4,5,COL

!复矩阵范数计算

*NRM,CC_M,NRM1,PAR1

*NRM,CC_M,NRM2,PAR2

!PAR1=45.9119851

!PAR2=48.0678330

!复矩阵压缩

*COMP,CC_M,MGS

!重新对BC_M充值且分为两个实矩阵

!读取复矩阵的实部和虚部

*INIT,BC_M,CONST,1.123456789,2.987654321

*DMAT,BCR_M,D,COPY,BC_M,REAL

*DMAT,BCI_M,D,COPY,BC_M,IMAG

*EXPORT,BCR_M,APDL,BCR

*EXPORT,BCI_M,APDL,BCI

!复方程求解,此处仅为示例

*DMAT,AC_M,Z,ALLOC,3,3

AC_M(1,1,1)=3,2,0

AC_M(1,2,1)=0,5,2

AC_M(1,3,1)=1,1,6

AC_M(1,1,2)=4,1,1

AC_M(1,2,2)=1,8,0

AC_M(1,3,2)=0,-1,7

*DMAT,DC_M,Z,ALLOC,3,3

DC_M(1,1,1)=1,1,2

DC_M(1,2,1)=0,0,3

DC_M(1,3,1)=4,6,4

DC_M(1,1,2)=0,5,0

DC_M(1,2,2)=3,0,5

DC_M(1,3,2)=-1,7,0

*LSENGINE,,MYSOLVER,AC_M

*LSFACTOR,MYSOLVER

*LSBAC,MYSOLVER,DC_M,XC_M!

声明:原创文章,欢迎留言与我讨论,如需转载留言

科普代码&命令求解技术其他软件
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2021-01-26
最近编辑:3年前
王新敏
硕士 | 教授 好好学习,天天快乐
获赞 122粉丝 611文章 96课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈