499543921 发表于 2010-11-16 21:00

matlab在建筑抗震工程中的应用(帮忙看看)

一个弹性时程分析程序设计例题:某三层钢筋混凝土结构地震波采用200gal el centre波,采样周期为0.02s.用弹性时程分析发求解结构地震反应.程序如下:
clear;
h=
m=*1e+3;
k0=*1e+5;
cn=length(m)%总层数
%earthquake parameter
ct=1.4%Wilson-法的值
dt=0.02
load ('dzhbo1')
xs=200/max(abs(dzhbo1))%调整地震输入加速度幅值200gal
ag=dzhbo1*0.01*xs;         %地震波,单位m/s2
ndzh=400
ag1=ag(1:ndzh)
ag2=ag(2:ndzh+1)
agtao=ct*(ag2-ag1) %initial value
chsh=zero(cn,1)
wyi1=chsh
sdu1=chsh
jsdu1=chsh
wyimt=chsh
sdumt=chsh
jsdumt=chsh
unit=one(cn,1)
m=diag(m)
=matrixju(k0,cn)
=eig(ik,m)
d=sqrt(d)
w=sort(diag(d))
a=2*w(1)*w(2)*(0.05*w(2)-0.07*w(1))/(w(2)^2-w(1)^2);
b=2*(0.07*w(2)-0.05*w(1))/(w(2)^2-w(1)^2);
c0=a*m+b*ik
运行后说红字部分错误?那个地震波不是个.m文件吗?是不是就是地震的数据呢?

qibbxxt 发表于 2010-11-16 21:41

你把错误的提示信息贴出来

499543921 发表于 2010-11-16 21:45

本帖最后由 499543921 于 2010-11-16 21:49 编辑

我觉得可能是地震波引用的不太对!可是不太会处理.

499543921 发表于 2010-11-16 21:47

回复 2 # qibbxxt 的帖子

??? Attempt to execute SCRIPT load as a function.

Error in ==> load at 12
load ('dzhbo1')谢谢

Happy99 发表于 2010-11-16 23:16

本帖最后由 Happy99 于 2010-11-16 23:21 编辑

dzhbo1是什麽档案? dzhbo1.mat?
"...那个地震波不是个.m文件吗?是不是就是地震的数据呢?"
LZ不知道吗? 程序不是LZ写的?:@)

ChaChing 发表于 2010-11-16 23:48

ref
常见的程序出错问题整理 (eight), 6F
http://forum.vibunion.com/forum/thread-46001-1-1.html

moon555sss 发表于 2010-11-17 15:47

兰州都说是个例题 当然不是他自己写的啦
这应该是要导入一个原数据
要不你重命名了 要不还在你的压缩包里面放着
你搜索一下 找到后 放到work下面呗

499543921 发表于 2010-11-17 21:50

回复 6 # ChaChing 的帖子

拜读中!先谢谢啦!

499543921 发表于 2010-11-17 21:53

回复 7 # moon555sss 的帖子

试了下,不行呢...唉我是直接把那个dzhbo.txt文件剪切到.m文件里的!不行吗这样?是些这样的数据:埃而森特罗波(EI Centro)地震 时间间隔0.02秒,持续时间取30s 适合于2类场地土
EL CENTRONS1940CALIF.               2688   0.020 341.700(10F8.3)
南北方向,
(高振世等著,建筑结构抗震设计,中国建筑工业出版社,1995年)

-1.400
-10.800
-10.100
-8.800
-9.500
-12.000
-14.200
-12.800
-11.000
-8.500
-8.500
-13.100
-17.600
-19.400
-16.200
-14.400
-10.800
-8.200
-4.200
-6.600
-13.100
-19.000
-19.600
-6.600   
3.000
14.100
-4.900
-12.800
-14.400
-20.300
-26.000
-32.500
-30.600
-17.200
-19.700
-16.300
-16.400
-6.700   
2.500
15.000
23.600
25.200
33.600
46.300
49.200
41.900
35.900
27.100
23.500
33.900
41.200
53.000
63.900
73.200
65.200
59.900
40.000
40.000   
6.300
-51.500
-78.700
-60.300
-48.400
-25.000
-5.900
13.400
30.800
49.900
71.000
99.500
121.900
152.900
144.900
115.500
93.500
89.200
92.600
83.900
90.100
99.300
120.900
32.800
-147.500
-206.600
-198.900
-203.400
-181.600
-172.500
-175.200
-175.300
-180.500
-163.000
-134.700
-108.700
-78.200
-42.900
-1.700
36.000
78.500
116.400
159.800
196.000
241.200
272.900
303.600
320.000
341.700
282.100
232.400
-119.800
-237.300
-164.000
-186.500
-109.500
-75.300
-17.300
11.300
53.300
89.500
118.600
175.700
57.600
-263.100
-154.700
-172.900
-101.200
-57.900
23.700
-67.000
-198.000
-164.100
-168.500
-148.100
-123.100
-100.100
-75.100
-52.300
-27.100
-4.400
18.800
-9.500
-43.300
-83.800
-95.100
-71.600
-59.900
-33.400
-10.800
18.500
42.000
67.300
-9.700
-37.200
-4.000   
1.100
34.400
56.500

499543921 发表于 2010-11-17 21:54

回复 5 # Happy99 的帖子

哦?我查一下.呵呵,新手..

Happy99 发表于 2010-11-18 00:03

资料剪切到.m文件, 也是可以, 但要命名为dzhbo矩阵
一般直接使用load即可, 但dzhbo.txt文件的开头注解要删除

还有求助完整格式:出错代码和出错提示

499543921 发表于 2010-11-18 17:21

十分感谢大家的帮忙!终于运行出来啦.我直接把那个地震波数据.txt格式用load把它引用过来的!
dzhbo=load ('elcentero.txt')
呵呵还是集思广益好解决问题!{:{36}:}

ChaChing 发表于 2010-11-19 00:06

回复 12 # 499543921 的帖子

其实这个很基本, 建议LZ看下基本书并多练习!:@)

东南小忽悠 发表于 2011-12-22 11:38

你好,我也正在做这方面的编程,很多问题搞不懂。。。需要向你请教
我的扣扣 383611339
页: [1]
查看完整版本: matlab在建筑抗震工程中的应用(帮忙看看)