声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 2874|回复: 12

[综合讨论] 请教,用lsim计算结构在地震波下的响应问题!

[复制链接]
发表于 2009-1-6 22:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

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

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

本帖被以下淘专辑推荐:

回复
分享到:

使用道具 举报

发表于 2009-1-6 23:44 | 显示全部楼层

回复 楼主 ant20050521 的帖子

doc lsim
 楼主| 发表于 2009-1-7 11:57 | 显示全部楼层
我今天还想了一个方法有点笨,就是先计算前一部分时间,例如前十秒,然后利用第十秒的状态,在用lsim,求解后面的响应,有点笨。试试二楼的方法。谢谢!
发表于 2009-1-7 14:02 | 显示全部楼层
lsim函数好像允许三个输出但仅针对特定输入
可以的话建议楼主上传更齐之程序
 楼主| 发表于 2009-1-7 19:10 | 显示全部楼层
其实问题就是输出的维数太大,最多要输出4*1520矩阵,我想问的是有什么办法一次就能解决这个问题而不用多次利用lsim分段计算。2楼的“doc  lsim”是什么意思?
发表于 2009-1-7 20:58 | 显示全部楼层

回复 5楼 ant20050521 的帖子

4*1520矩阵不大吧!
doc同help指令不过输出位置不同
 楼主| 发表于 2009-1-8 09:45 | 显示全部楼层
谢谢你的回复,我把程序传上去,你看看,el.txt是地震波。

程序文件.txt

473 Bytes, 下载次数: 39

el.txt

33.97 KB, 下载次数: 27

地震波

 楼主| 发表于 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那条线是曲线?

评分

1

查看全部评分

发表于 2009-1-8 10:48 | 显示全部楼层

回复 7楼 ant20050521 的帖子

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

发帖时不知LZ以解决

[ 本帖最后由 ChaChing 于 2009-1-8 10:59 编辑 ]
发表于 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=[  0; 0; -1; -1]; D=[  0; 0; 0; 0];
load el.txt; t=el(:,1)';
xg=el(:,2)'; sys=ss(A,B,C,D);
[y,t,x]=lsim(sys,xg,t); plot(t,y)

评分

1

查看全部评分

 楼主| 发表于 2009-1-8 11:58 | 显示全部楼层
谢谢你,我后来也是你这样做的。
发表于 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=[  0; 0; -1; -1]; D=[  0; 0; 0; 0];
load el.txt; t=el(:,1)';
xg=el(:,2)'; [y,temp]=lsim(sys,xg,t); plot(t,y)
发表于 2011-4-14 23:55 | 显示全部楼层
回复 12 # DUMBO 的帖子

不明白LS的意思!?
为何repeat 10F?
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-16 08:21 , Processed in 0.105422 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表