请教,用lsim计算结构在地震波下的响应问题!
当我用【y,t,x】=lsim()计算结构在地震波下的响应时,提示输出太多,怎么办???? Error using ==> lsim
Too many output arguments.
地震波的时间步长不能减少,这样计算不下去,请高手指点一下,怎么办?
回复 楼主 ant20050521 的帖子
doc lsim 我今天还想了一个方法有点笨,就是先计算前一部分时间,例如前十秒,然后利用第十秒的状态,在用lsim,求解后面的响应,有点笨。试试二楼的方法。谢谢! lsim函数好像允许三个输出但仅针对特定输入可以的话建议楼主上传更齐之程序 其实问题就是输出的维数太大,最多要输出4*1520矩阵,我想问的是有什么办法一次就能解决这个问题而不用多次利用lsim分段计算。2楼的“doclsim”是什么意思?
回复 5楼 ant20050521 的帖子
4*1520矩阵不大吧!doc同help指令不过输出位置不同 谢谢你的回复,我把程序传上去,你看看,el.txt是地震波。 已经解决了,谢谢你的关注,把其转化到状态空间就能计算,sys=ss(A,B,C,D)
【y,t,x】=lsim(sys,xg,t)。但是现在还有一个问题,如果用lsim(sys,xg,t)或是lsim(A,B,C,D,xg,t)直接得到图形,为什么图上关于y=0那条线是曲线?
回复 7楼 ant20050521 的帖子
不上传程序, 是不会发现使用错误的!=lsim(A,B,C,D,xg,t), 其中A,B,C,D都是system吗?!
发帖时不知LZ以解决
[ 本帖最后由 ChaChing 于 2009-1-8 10:59 编辑 ]
回复 8楼 ant20050521 的帖子
使用lsim(A,B,C,D,xg,t), 其意义是不一样的!A=[ 0 0 1.0000 0
0 0 0 1.0000
-234.9000 76.9000-15.9600 14.7000
15.3800-15.3800 2.9400 -2.9400];
C=[ 1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1];
B=; D=;
load el.txt; t=el(:,1)';
xg=el(:,2)'; sys=ss(A,B,C,D);
=lsim(sys,xg,t); plot(t,y) 谢谢你,我后来也是你这样做的。 A=[ 0 0 1.0000 0
0 0 0 1.0000
-234.9000 76.9000-15.9600 14.7000
15.3800-15.3800 2.9400 -2.9400];
C=[ 1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1];
B=; D=;
load el.txt; t=el(:,1)';
xg=el(:,2)'; =lsim(sys,xg,t); plot(t,y) 回复 12 # DUMBO 的帖子
不明白LS的意思!?
为何repeat 10F?
页:
[1]