ydcow 发表于 2009-10-11 09:45

ansys中关于矩阵数据的传递

/solu
antype,trans
rescontrol,,all,1
outres,all,all
!第一荷载步
time,1
kbc,1
nsubst,5

*dim,P1,,4                                                               
P1(1)=P(1,1)+M*(a0*Z(1)+a2*Z1(1)+a3*Z2(1))+C*(a1*Z(1)+a4*Z1(1)+a5*Z2(1))
P1(2)=P(2,1)+M*(a0*Z(2)+a2*Z1(2)+a3*Z2(2))+C*(a1*Z(2)+a4*Z1(2)+a5*Z2(2))
P1(3)=P(3,1)+M*(a0*Z(3)+a2*Z1(3)+a3*Z2(3))+C*(a1*Z(3)+a4*Z1(3)+a5*Z2(3))
P1(4)=P(4,1)+M*(a0*Z(4)+a2*Z1(4)+a3*Z2(4))+C*(a1*Z(4)+a4*Z1(4)+a5*Z2(4))

*dim,Z4,,4                                                   
*moper,Z4(1),K1(1,1),solv,P1(1)
*dim,Z6,,4
Z6(1)=a0*(Z4(1)-Z(1))-a2*Z1(1)-a3*Z2(1)
Z6(2)=a0*(Z4(2)-Z(2))-a2*Z1(2)-a3*Z2(2)
Z6(3)=a0*(Z4(3)-Z(3))-a2*Z1(3)-a3*Z2(3)
Z6(4)=a0*(Z4(4)-Z(4))-a2*Z1(4)-a3*Z2(4)

*dim,Z5,,4
Z5(1)=Z1(1)+a6*Z2(1)+a7*Z6(1)
Z5(2)=Z1(2)+a6*Z2(2)+a7*Z6(2)
Z5(3)=Z1(3)+a6*Z2(3)+a7*Z6(3)
Z5(4)=Z1(4)+a6*Z2(4)+a7*Z6(4)

*dim,F,,2
F(1)=kt1*(Z4(1)-y1)+ct1*(Z5(1)-y11)
F(2)=kt1*(Z4(2)-y2)+ct1*(Z5(2)-y12)
fdele,all
f,1,fy,F(1)
parsave,all
solve
!变量代换
y1=uy(2)
y11=vy(2)
*do,i,1,4
Z(i)=Z4(i)
Z1(i)=Z5(i)
Z2(i)=Z6(i)
*enddo
!第2荷载步
time,2
kbc,1
nsubst,10

P(1,1)=m1*g+ct1*y11+kt1*y1
P(2,1)=m2*g+kt2*y2+ct2*y21
P(3,1)=m3*g*b2
P(4,1)=m3*g*b1

                                                            
P1(1)=P(1,1)+M*(a0*Z(1)+a2*Z1(1)+a3*Z2(1))+C*(a1*Z(1)+a4*Z1(1)+a5*Z2(1))
*status,P1(1)
!通过计算我发现我在计算P1(1)的时候里面的参数Z,Z1,Z2并不是我第一个荷载步计算出来的结果,而是我在前处理阶段定义的初始值零,我不知道为什么在这里我的数组参数不能进行传递呢?如何才能实现其传递?谢谢!

jxxansys 发表于 2009-10-11 11:55

!计算等效荷载
!在此查看数组z、z1、z2                                                            
P1(1)=P(1,1)+M*(a0*Z(1)+a2*Z1(1)+a3*Z2(1))+C*(a1*Z(1)+a4*Z1(1)+a5*Z2(1))
P1(2)=P(2,1)+M*(a0*Z(2)+a2*Z1(2)+a3*Z2(2))+C*(a1*Z(2)+a4*Z1(2)+a5*Z2(2))
P1(3)=P(3,1)+M*(a0*Z(3)+a2*Z1(3)+a3*Z2(3))+C*(a1*Z(3)+a4*Z1(3)+a5*Z2(3))
P1(4)=P(4,1)+M*(a0*Z(4)+a2*Z1(4)+a3*Z2(4))+C*(a1*Z(4)+a4*Z1(4)+a5*Z2(4))
!在此查看数组z、z1、z2 ,均不为零,不知为何与你的说法不一致?
*status,P1(1)      !通过计算发现在计算P1的时候没有带入我前面计算出来的Z,Z1,Z2,还是带入我初始定义的零值!
!计算车辆位移

ydcow 发表于 2009-10-11 12:01

回复 沙发 jxxansys 的帖子

是啊,查看不为0,但是计算的时候取的是0啊,我的详细命令流已发到过高老师你的邮箱,计算出来的P1和我前面定义的P一样,我利用MATLAB计算了P1的结果不应该和P一样!

jxxansys 发表于 2009-10-11 12:47

详细的命令流也看了,肯定问题不在这里

ydcow 发表于 2009-10-11 16:04

原帖由 jxxansys 于 2009-10-11 12:47 发表 http://www.chinavib.com/forum/images/common/back.gif
详细的命令流也看了,肯定问题不在这里
呵呵,我也不知道为什么?高老师你不是说我后面再计算P1的时候不需要重新定义直接重新赋值就可以了啊,参数都在前面,并且我在计算P1之前查看都是不为0的啊,后面的计算应该就是要带入前面得出的Z,Z1,Z2值啊!还麻烦高老师帮忙看看!谢谢!

jxxansys 发表于 2009-10-12 13:22

查看其它参数是否正确
页: [1]
查看完整版本: ansys中关于矩阵数据的传递