ant20050521 发表于 2009-1-6 22:03

请教,用lsim计算结构在地震波下的响应问题!

当我用【y,t,x】=lsim()计算结构在地震波下的响应时,提示输出太多,怎么办?
??? Error using ==> lsim
Too many output arguments.

地震波的时间步长不能减少,这样计算不下去,请高手指点一下,怎么办?

ch_j1985 发表于 2009-1-6 23:44

回复 楼主 ant20050521 的帖子

doc lsim

ant20050521 发表于 2009-1-7 11:57

我今天还想了一个方法有点笨,就是先计算前一部分时间,例如前十秒,然后利用第十秒的状态,在用lsim,求解后面的响应,有点笨。试试二楼的方法。谢谢!

ChaChing 发表于 2009-1-7 14:02

lsim函数好像允许三个输出但仅针对特定输入
可以的话建议楼主上传更齐之程序

ant20050521 发表于 2009-1-7 19:10

其实问题就是输出的维数太大,最多要输出4*1520矩阵,我想问的是有什么办法一次就能解决这个问题而不用多次利用lsim分段计算。2楼的“doclsim”是什么意思?

ChaChing 发表于 2009-1-7 20:58

回复 5楼 ant20050521 的帖子

4*1520矩阵不大吧!
doc同help指令不过输出位置不同

ant20050521 发表于 2009-1-8 09:45

谢谢你的回复,我把程序传上去,你看看,el.txt是地震波。

ant20050521 发表于 2009-1-8 10:34

已经解决了,谢谢你的关注,把其转化到状态空间就能计算,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那条线是曲线?

ChaChing 发表于 2009-1-8 10:48

回复 7楼 ant20050521 的帖子

不上传程序, 是不会发现使用错误的!
=lsim(A,B,C,D,xg,t), 其中A,B,C,D都是system吗?!

发帖时不知LZ以解决

[ 本帖最后由 ChaChing 于 2009-1-8 10:59 编辑 ]

ChaChing 发表于 2009-1-8 11:07

回复 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)

ant20050521 发表于 2009-1-8 11:58

谢谢你,我后来也是你这样做的。

DUMBO 发表于 2011-4-13 14:21

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)

ChaChing 发表于 2011-4-14 23:55

回复 12 # DUMBO 的帖子

不明白LS的意思!?
为何repeat 10F?
页: [1]
查看完整版本: 请教,用lsim计算结构在地震波下的响应问题!