![]() |
[求助]错误帖出来了!哪位大哥,大姐帮小弟看看这个程序的错误啊!
ne=5;
np=4; syms FX3 FY3 FX4 FY4; xyp=[0 6.4 0 0 10000 0;4.8 6.4 0 0 0 0;0 0 1 1 FX3 FY3;4.8 0 1 1 FX4 FY4] syms E element=[1 2 E 38e-4;1 3 E 5e-3;2 4 E 5e-3;1 4 E 65e-4;2 3 E 65e-4] kk=zeros(2*np,2*np); f=zeros(2*np,1); ElementSave=zeros(ne,3); for lop=1:ne i=element(lop,1); j=element(lop,2); x=xyp(i,1); y=xyp(i,2); z=xyp(j,1); v=xyp(j,2); dl=sqrt((y-x)^2+(v-z)^2); s=(v-z)/dl; c=(y-x)/dl; ea=element(lop,3)*element(lop,4)/dl; ElementSave(lop,1)=s; ElementSave(lop,2)=c; ElementSave(lop,3)=ea; ek=2e6*ea*[c*c, c*s, -c*c,-c*s; s*c, s*s, -c*s,-s*s; -c*c, -c*s, c*c, c*s; -c*s, -s*s, s*c, s*s]; kk(2*i-1:2*i,2*i-1:2*i)= kk(2*i-1:2*i,2*i-1:2*i)+ek(1:2,1:2); kk(2*i-1:2*i,2*j-1:2*j)= kk(2*i-1:2*i,2*j-1:2*j)+ek(1:2,3:4); kk(2*j-1:2*j,2*i-1:2*i)= kk(2*j-1:2*j,2*i-1:2*i)+ek(3:4,1:2); kk(2*j-1:2*j,2*j-1:2*j)= kk(2*j-1:2*j,2*j-1:2*j)+ek(3:4,3:4); end for lop=1:np f(2*lop-1,1)=f(2*lop-1,1)+xyp(lop,5); f(2*lop,1)=f(2*lop,1)+xyp(lop,6); if xyp(lop,3)>=1 kk(2*lop-1,2*lop-1)=10000*kk(2*lop-1,2*lop-1); end if xyp(lop,4)>=1 kk(2*lop,2*lop)=10000*kk(2*lop,2*lop); end end u=inv(kk)*f for lop=1:ne i=element(lop,1); j=element(lop,2); s=ElementSave(lop,1); c=ElementSave(lop,2); ea=ElementSave(lop,3); InnerForce=ea*((u(2*j-1)-u(2*i-1))*c+(u(2*j)-u(2*i))*s) end 错误信息是: ??? Error using ==> subsindex Function 'subsindex' is not defined for values of class 'sym'. Error in ==> you at 13 x=xyp(i,1); |
请将错误信息贴出来……
|
你的错误信息是指:
函数subsindex不能用syms类的变量来运算,我看你的程序不完整吧?怎么定义的E,FX3 FY3 FX4 FY4等在程序里没有出现呢? 在进行编程的时候如果不是特殊原因就不要定义为syms类…… |
谢谢你啊
谢谢你啊,非常感谢,我知道了!可是我的程序没出现subsidex函数啊
|
xyp=[0 6.4 0 0 10000 0;4.8 6.4 0 0 0 0;0 0 1 1 FX3 FY3;4.8 0 1 1 FX4 FY4]
可能是这里出错了,前面都是double型的,后面加上的是syms类,不能形成矩阵…… |
所有时间均为北京时间。现在的时间是 11:10。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.